A double buffer.
This class defines four categories of operations upon double buffers:
Absolute and relative get
and
put
methods that read and write
single doubles;
Relative bulk get
methods that transfer contiguous sequences of doubles from this buffer
into an array; and
Relative bulk put
methods that transfer contiguous sequences of doubles from a
double array or some other double
buffer into this buffer; and
Methods for compacting
, duplicating
, and slicing
a double buffer.
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.
extends