uk.ac.starlink.table.storage

## Class ArrayPrimitiveStore

- java.lang.Object
- - uk.ac.starlink.table.storage.ArrayPrimitiveStore

- All Implemented Interfaces:
    ValueStore

      public class ArrayPrimitiveStore
      extends java.lang.Object
      implements ValueStore

  ValueStore implementation which stores primitive values in a normal java array.
  Since:
    1 Nov 2005

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ArrayPrimitiveStore(java.lang.Class<?> clazz, int size)` Constructs a new store.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `get(long index, java.lang.Object array, int ioff, int count)` Retrieves a vector of values from this object.
    `long` | `getLength()` Returns the length of the vector.
    `java.lang.Class<?>` | `getType()` Returns the class of value which this object can store.
    `void` | `put(long index, java.lang.Object array, int ioff, int count)` Stores a vector of values in this object.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ArrayPrimitiveStore

          public ArrayPrimitiveStore(java.lang.Class<?> clazz,
                                     int size)

      Constructs a new store. The supplied `clazz` must be a primitive type such as `int.class`.
      Parameters:
        `clazz` - primitive type to store
        `size` - length of the vector

  - ### Method Detail

    - #### getType

          public java.lang.Class<?> getType()

      Description copied from interface: `ValueStore`
      Returns the class of value which this object can store.
      Specified by:
        `getType` in interface `ValueStore`
      Returns:
        primitive class

    - #### getLength

          public long getLength()

      Description copied from interface: `ValueStore`
      Returns the length of the vector.
      Specified by:
        `getLength` in interface `ValueStore`
      Returns:
        vector length

    - #### put

          public void put(long index,
                          java.lang.Object array,
                          int ioff,
                          int count)

      Description copied from interface: `ValueStore`
      Stores a vector of values in this object. `array` must be an array of values matching `getType`. Element `ioff` of `array` is stored at index `index`, elemnt `ioff+1` at `index+1`, etc.
      Specified by:
        `put` in interface `ValueStore`
      Parameters:
        `index` - starting offset to write to
        `array` - array of values to store
        `ioff` - offset into array from which the first value is taken
        `count` - number of values to transfer

    - #### get

          public void get(long index,
                          java.lang.Object array,
                          int ioff,
                          int count)

      Description copied from interface: `ValueStore`
      Retrieves a vector of values from this object. `array` must be an array of type matching `getType`. Every element of `array` will be filled with values; the first retrieved from offset `index`, the second from `index+1`, etc.
      Specified by:
        `get` in interface `ValueStore`
      Parameters:
        `index` - starting offset
        `array` - array to accept data
        `ioff` - offset into array to which the first value is copied
        `count` - number of values to transfer