FileDocCategorySizeDatePackage
ReadWriteDoubleArrayBuffer.javaAPI DocAndroid 1.5 API3702Wed May 06 22:41:04 BST 2009java.nio

ReadWriteDoubleArrayBuffer

public final class ReadWriteDoubleArrayBuffer extends DoubleArrayBuffer
DoubleArrayBuffer, ReadWriteDoubleArrayBuffer and ReadOnlyDoubleArrayBuffer compose the implementation of array based double buffers.

ReadWriteDoubleArrayBuffer extends DoubleArrayBuffer with all the write methods.

This class is marked final for runtime performance.

Fields Summary
Constructors Summary
ReadWriteDoubleArrayBuffer(double[] array)

        super(array);
    
ReadWriteDoubleArrayBuffer(int capacity)

        super(capacity);
    
ReadWriteDoubleArrayBuffer(int capacity, double[] backingArray, int arrayOffset)

        super(capacity, backingArray, arrayOffset);
    
Methods Summary
public java.nio.DoubleBufferasReadOnlyBuffer()

        return ReadOnlyDoubleArrayBuffer.copy(this, mark);
    
public java.nio.DoubleBuffercompact()

        System.arraycopy(backingArray, position + offset, backingArray, offset,
                remaining());
        position = limit - position;
        limit = capacity;
        mark = UNSET_MARK;
        return this;
    
static java.nio.ReadWriteDoubleArrayBuffercopy(DoubleArrayBuffer other, int markOfOther)

        ReadWriteDoubleArrayBuffer buf = new ReadWriteDoubleArrayBuffer(other
                .capacity(), other.backingArray, other.offset);
        buf.limit = other.limit();
        buf.position = other.position();
        buf.mark = markOfOther;
        return buf;
    
public java.nio.DoubleBufferduplicate()

        return copy(this, mark);
    
public booleanisReadOnly()

        return false;
    
protected double[]protectedArray()

        return backingArray;
    
protected intprotectedArrayOffset()

        return offset;
    
protected booleanprotectedHasArray()

        return true;
    
public java.nio.DoubleBufferput(double c)

        if (position == limit) {
            throw new BufferOverflowException();
        }
        backingArray[offset + position++] = c;
        return this;
    
public java.nio.DoubleBufferput(int index, double c)

        if (index < 0 || index >= limit) {
            throw new IndexOutOfBoundsException();
        }
        backingArray[offset + index] = c;
        return this;
    
public java.nio.DoubleBufferput(double[] src, int off, int len)

        int length = src.length;
        if (off < 0 || len < 0 || (long)off + (long)len > length) {
            throw new IndexOutOfBoundsException();
        }
        if (len > remaining()) {
            throw new BufferOverflowException();
        }
        System.arraycopy(src, off, backingArray, offset
                + position, len);
        position += len;
        return this;
    
public java.nio.DoubleBufferslice()

        return new ReadWriteDoubleArrayBuffer(remaining(), backingArray, offset
                + position);