Double buffers can be created either by allocation , which allocates space for the buffer's
content, by wrapping an existing
double array into a buffer, or by creating a
view of an existing byte buffer.
Like a byte buffer, a double buffer is either direct or non-direct. A
double buffer created via the wrap methods of this class will
be non-direct. A double buffer created as a view of a byte buffer will
be direct if, and only if, the byte buffer itself is direct. Whether or not
a double buffer is direct may be determined by invoking the isDirect method.
Methods in this class that do not otherwise have a value to return are
specified to return the buffer upon which they are invoked. This allows
method invocations to be chained.
This class defines four categories of operations upon double buffers:
Absolute and relative get
and putmethods that read and write single doubles;Relative bulk get
methods that transfer contiguous sequences of doubles from this buffer into an array; andRelative bulk put
methods that transfer contiguous sequences of doubles from a double array or some other double buffer into this buffer; andMethods for compacting
, duplicating, and slicinga double buffer.Double buffers can be created either by allocation
, which allocates space for the buffer's content, by wrappingan existing double array into a buffer, or by creating a view of an existing byte buffer.Like a byte buffer, a double buffer is either direct or non-direct. A double buffer created via the wrap methods of this class will be non-direct. A double buffer created as a view of a byte buffer will be direct if, and only if, the byte buffer itself is direct. Whether or not a double buffer is direct may be determined by invoking the isDirect method.
Methods in this class that do not otherwise have a value to return are specified to return the buffer upon which they are invoked. This allows method invocations to be chained.