Class ByteArrayIndexer

  • All Implemented Interfaces:
    java.lang.AutoCloseable

    public class ByteArrayIndexer
    extends ByteIndexer
    An indexer for a byte[] array.
    • Field Detail

      • RAW

        protected static final Raw RAW
        The instance for the raw memory interface.
      • buffer

        protected java.nio.ByteBuffer buffer
        The wrapping buffer.
      • array

        protected byte[] array
        The backing array.
    • Constructor Detail

      • ByteArrayIndexer

        public ByteArrayIndexer​(byte[] array)
        Calls ByteArrayIndexer(array, Index.create(array.length)).
      • ByteArrayIndexer

        public ByteArrayIndexer​(byte[] array,
                                long... sizes)
        Calls ByteArrayIndexer(array, Index.create(sizes)).
      • ByteArrayIndexer

        public ByteArrayIndexer​(byte[] array,
                                long[] sizes,
                                long[] strides)
        Calls ByteArrayIndexer(array, Index.create(sizes, strides)).
      • ByteArrayIndexer

        public ByteArrayIndexer​(byte[] array,
                                Index index)
        Constructor to set the array and Indexer.index.
    • Method Detail

      • array

        public byte[] array()
        Description copied from class: Indexer
        Returns the backing array, or null if none
        Overrides:
        array in class Indexer
      • reindex

        public ByteIndexer reindex​(Index index)
        Description copied from class: Indexer
        Returns a new Indexer using the same data, but with a different Index.
        Specified by:
        reindex in class Indexer
      • get

        public byte get​(long i)
        Description copied from class: ByteIndexer
        Returns array/buffer[index(i)]
        Specified by:
        get in class ByteIndexer
      • get

        public ByteIndexer get​(long i,
                               byte[] b,
                               int offset,
                               int length)
        Description copied from class: ByteIndexer
        Returns this where b[offset:offset + length] = array/buffer[index(i)]
        Specified by:
        get in class ByteIndexer
      • get

        public byte get​(long i,
                        long j)
        Description copied from class: ByteIndexer
        Returns array/buffer[index(i, j)]
        Specified by:
        get in class ByteIndexer
      • get

        public ByteIndexer get​(long i,
                               long j,
                               byte[] b,
                               int offset,
                               int length)
        Description copied from class: ByteIndexer
        Returns this where b[offset:offset + length] = array/buffer[index(i, j)]
        Specified by:
        get in class ByteIndexer
      • get

        public byte get​(long i,
                        long j,
                        long k)
        Description copied from class: ByteIndexer
        Returns array/buffer[index(i, j, k)]
        Specified by:
        get in class ByteIndexer
      • get

        public byte get​(long... indices)
        Description copied from class: ByteIndexer
        Returns array/buffer[index(indices)]
        Specified by:
        get in class ByteIndexer
      • get

        public ByteIndexer get​(long[] indices,
                               byte[] b,
                               int offset,
                               int length)
        Description copied from class: ByteIndexer
        Returns this where b[offset:offset + length] = array/buffer[index(indices)]
        Specified by:
        get in class ByteIndexer
      • put

        public ByteIndexer put​(long i,
                               byte b)
        Description copied from class: ByteIndexer
        Returns this where array/buffer[index(i)] = b
        Specified by:
        put in class ByteIndexer
      • put

        public ByteIndexer put​(long i,
                               byte[] b,
                               int offset,
                               int length)
        Description copied from class: ByteIndexer
        Returns this where array/buffer[index(i)] = b[offset:offset + length]
        Specified by:
        put in class ByteIndexer
      • put

        public ByteIndexer put​(long i,
                               long j,
                               byte b)
        Description copied from class: ByteIndexer
        Returns this where array/buffer[index(i, j)] = b
        Specified by:
        put in class ByteIndexer
      • put

        public ByteIndexer put​(long i,
                               long j,
                               byte[] b,
                               int offset,
                               int length)
        Description copied from class: ByteIndexer
        Returns this where array/buffer[index(i, j)] = b[offset:offset + length]
        Specified by:
        put in class ByteIndexer
      • put

        public ByteIndexer put​(long i,
                               long j,
                               long k,
                               byte b)
        Description copied from class: ByteIndexer
        Returns this where array/buffer[index(i, j, k)] = b
        Specified by:
        put in class ByteIndexer
      • put

        public ByteIndexer put​(long[] indices,
                               byte b)
        Description copied from class: ByteIndexer
        Returns this where array/buffer[index(indices)] = b
        Specified by:
        put in class ByteIndexer
      • put

        public ByteIndexer put​(long[] indices,
                               byte[] b,
                               int offset,
                               int length)
        Description copied from class: ByteIndexer
        Returns this where array/buffer[index(indices)] = b[offset:offset + length]
        Specified by:
        put in class ByteIndexer
      • getBuffer

        java.nio.ByteBuffer getBuffer()
      • getByte

        public byte getByte​(long i)
        Description copied from class: ByteIndexer
        Returns the byte value at array/buffer[i]
        Specified by:
        getByte in class ByteIndexer
      • getShort

        public short getShort​(long i)
        Description copied from class: ByteIndexer
        Returns the short value at array/buffer[i]
        Specified by:
        getShort in class ByteIndexer
      • getInt

        public int getInt​(long i)
        Description copied from class: ByteIndexer
        Returns the int value at array/buffer[i]
        Specified by:
        getInt in class ByteIndexer
      • getLong

        public long getLong​(long i)
        Description copied from class: ByteIndexer
        Returns the long value at array/buffer[i]
        Specified by:
        getLong in class ByteIndexer
      • getFloat

        public float getFloat​(long i)
        Description copied from class: ByteIndexer
        Returns the float value at array/buffer[i]
        Specified by:
        getFloat in class ByteIndexer
      • getDouble

        public double getDouble​(long i)
        Description copied from class: ByteIndexer
        Returns the double value at array/buffer[i]
        Specified by:
        getDouble in class ByteIndexer
      • getChar

        public char getChar​(long i)
        Description copied from class: ByteIndexer
        Returns the char value at array/buffer[i]
        Specified by:
        getChar in class ByteIndexer
      • release

        public void release()
        Description copied from class: Indexer
        Makes sure changes are reflected onto the backing memory and clears any references.
        Specified by:
        release in class Indexer