edu.unh.sdb.common
Class ByteValues

java.lang.Object
  extended by edu.unh.sdb.common.Values
      extended by edu.unh.sdb.common.ByteValues

public class ByteValues
extends Values

ByteValues is Values that store bytes in a 1-D byte array


Constructor Summary
ByteValues()
          construct a ByteValues with no data
ByteValues(byte[] byteArray)
          construct a ByteValues for a given byte array
ByteValues(int size)
          construct a ByteValues, given the size of the byteArray
 
Method Summary
 byte[] byteValues()
          Deprecated. Use getDataReference()
 byte getByte(int index)
          return the byte value at of the item at the given index of the byte array
 byte[] getBytes()
          return a reference to the byte array this object is representing
 byte[] getBytes(byte[] filler)
          fill the passed array with this data
 byte[] getBytes(int start, int stride, int num)
          Return byte array representing a subset of elements in the Values object Copying starts at the index specified by the start argument, the 2nd item copied will be at index start + stride where stride is the second argument; the 3rd is at start + 2*stride and so forth until the specified number of values have been copied (3rd argument).
 byte[] getDataReference()
          Return a reference to the data array this object contains.
 double getDouble(int index)
          return the double value represent the byte value of the given index
 double[] getDoubles()
          Return double array representing all elements in the Values object
 double[] getDoubles(double[] filler)
          fill the passed array with this data
 float getFloat(int index)
          return the float value representing the byte value of the given index
 float[] getFloats()
          Return float array representing all elements in the Values object
 float[] getFloats(float[] filler)
          fill the passed array with this data
 int getInt(int index)
          return the int value represent the byte value of the given index
 int[] getInts()
          Return int array representing all elements in the Values object
 int[] getInts(int[] filler)
          fill the passed array with this data
 short getShort(int index)
          return the short value represent the byte value of the given index
 short[] getShorts()
          Return a short array representing all elements in the Values object
 short[] getShorts(short[] filler)
          fill the passed array with this data
 int getStorageType()
          get StorageType
 Values reorder(int step)
          Return a new Values object with the values shuffled.
 void setByte(int index, byte val)
          Set the specified entry to the specified value after conversion, if needed.
 void setData(int index, byte byteData)
          set the data at given index
 void setDouble(int index, double val)
          Set the specified entry to the specified value after conversion, if needed.
 void setFloat(int index, float val)
          Set the specified entry to the specified value after conversion, if needed.
 void setInt(int index, int val)
          Set the specified entry to the specified value after conversion, if needed.
 void setShort(int index, short val)
          Set the specified entry to the specified value after conversion, if needed.
 void setValues(int start, Values newVals)
          Assign elements of the passed in Values object to this one beginning at the start index .
 void setValues(Values newVals)
          Assign the data from the argument Values object to this object.
 int size()
          return the size of the 1 D array, in which the data is stored ( number of bytes)
 Values spawn()
          create a copy of this object
 Values spawn(int start, int stride, int count)
          Create a new instance of ByteValues with a subsest of the data in this object.
 
Methods inherited from class edu.unh.sdb.common.Values
getBytes, getBytes, getBytes, getDoubles, getDoubles, getDoubles, getDoubles, getFloats, getFloats, getFloats, getFloats, getInts, getInts, getInts, getInts, getShorts, getShorts, getShorts, getShorts, main, spawn
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ByteValues

public ByteValues()
construct a ByteValues with no data


ByteValues

public ByteValues(byte[] byteArray)
construct a ByteValues for a given byte array


ByteValues

public ByteValues(int size)
construct a ByteValues, given the size of the byteArray

Method Detail

spawn

public Values spawn()
create a copy of this object

Specified by:
spawn in class Values

spawn

public Values spawn(int start,
                    int stride,
                    int count)
Create a new instance of ByteValues with a subsest of the data in this object. Subsets can be contiguous or can have a stride as is done in point order storage. If there aren't "count" values to copy, the returned object will only be as large as the available values.

Specified by:
spawn in class Values
Parameters:
start - - first value to copy
stride - - steps between values
count - - number of values to copy

setData

public final void setData(int index,
                          byte byteData)
set the data at given index


getStorageType

public int getStorageType()
get StorageType

Specified by:
getStorageType in class Values

size

public int size()
return the size of the 1 D array, in which the data is stored ( number of bytes)

Specified by:
size in class Values

reorder

public Values reorder(int step)
Return a new Values object with the values shuffled. This method starts at positions 0 through step-1, copying every "step" values to the new array. This has the effect of converting an attribute ordered array to a point ordered array or vice versa. The Values object does not actually need to know the axisOrdering, the conversion is the same.

Specified by:
reorder in class Values

setDouble

public void setDouble(int index,
                      double val)
Set the specified entry to the specified value after conversion, if needed.

Specified by:
setDouble in class Values

setFloat

public void setFloat(int index,
                     float val)
Set the specified entry to the specified value after conversion, if needed.

Specified by:
setFloat in class Values

setInt

public void setInt(int index,
                   int val)
Set the specified entry to the specified value after conversion, if needed.

Specified by:
setInt in class Values

setShort

public void setShort(int index,
                     short val)
Set the specified entry to the specified value after conversion, if needed.

Specified by:
setShort in class Values

setByte

public void setByte(int index,
                    byte val)
Set the specified entry to the specified value after conversion, if needed.

Specified by:
setByte in class Values

setValues

public void setValues(Values newVals)
Assign the data from the argument Values object to this object. This object will now have a new data size that is the same as the arguments. (This version clones the data; do we want to just reference it?)

Specified by:
setValues in class Values

setValues

public void setValues(int start,
                      Values newVals)
Assign elements of the passed in Values object to this one beginning at the start index . Do conversions as needed. If the argument size is less than is available beginning at the start position, only the remaining values will be changed.

Specified by:
setValues in class Values

getDoubles

public double[] getDoubles()
Return double array representing all elements in the Values object

Specified by:
getDoubles in class Values

getFloats

public float[] getFloats()
Return float array representing all elements in the Values object

Specified by:
getFloats in class Values

getInts

public int[] getInts()
Return int array representing all elements in the Values object

Specified by:
getInts in class Values

getShorts

public short[] getShorts()
Return a short array representing all elements in the Values object

Specified by:
getShorts in class Values

getBytes

public byte[] getBytes()
return a reference to the byte array this object is representing

Specified by:
getBytes in class Values

getDoubles

public double[] getDoubles(double[] filler)
fill the passed array with this data

Overrides:
getDoubles in class Values

getFloats

public float[] getFloats(float[] filler)
fill the passed array with this data

Overrides:
getFloats in class Values

getInts

public int[] getInts(int[] filler)
fill the passed array with this data

Overrides:
getInts in class Values

getShorts

public short[] getShorts(short[] filler)
fill the passed array with this data

Overrides:
getShorts in class Values

getBytes

public byte[] getBytes(byte[] filler)
fill the passed array with this data

Overrides:
getBytes in class Values

getFloat

public float getFloat(int index)
return the float value representing the byte value of the given index

Specified by:
getFloat in class Values

getDouble

public double getDouble(int index)
return the double value represent the byte value of the given index

Specified by:
getDouble in class Values

getInt

public int getInt(int index)
return the int value represent the byte value of the given index

Specified by:
getInt in class Values

getShort

public short getShort(int index)
return the short value represent the byte value of the given index

Specified by:
getShort in class Values

getByte

public byte getByte(int index)
return the byte value at of the item at the given index of the byte array

Specified by:
getByte in class Values

byteValues

public byte[] byteValues()
Deprecated. Use getDataReference()

Return a reference to the byte data array this object contains.


getDataReference

public byte[] getDataReference()
Return a reference to the data array this object contains.


getBytes

public byte[] getBytes(int start,
                       int stride,
                       int num)
Return byte array representing a subset of elements in the Values object Copying starts at the index specified by the start argument, the 2nd item copied will be at index start + stride where stride is the second argument; the 3rd is at start + 2*stride and so forth until the specified number of values have been copied (3rd argument). If there are not enough elements in the Values object to satisfy the request, the returned array will have only as many values as could be found given the start and stride arguments.

Overrides:
getBytes in class Values