Class DataBufferUShort
DataBuffer and stores data internally as
shorts. Values stored in the short array(s) of this DataBuffer
are treated as unsigned values.
-
Field Summary
Fields declared in class DataBuffer
banks, dataType, offset, offsets, size, TYPE_BYTE, TYPE_DOUBLE, TYPE_FLOAT, TYPE_INT, TYPE_SHORT, TYPE_UNDEFINED, TYPE_USHORTModifier and TypeFieldDescriptionprotected intThe number of banks in this DataBuffer.protected intThe data type of this DataBuffer.protected intOffset into default (first) bank from which to get the first element.protected int[]Offsets into all banks.protected intUsable size of all banks.static final intTag for unsigned byte data.static final intTag for double data.static final intTag for float data.static final intTag for int data.static final intTag for signed short data.static final intTag for undefined data.static final intTag for unsigned short data. -
Constructor Summary
ConstructorsConstructorDescriptionDataBufferUShort(int size) Constructs an unsigned-short basedDataBufferwith a single bank and the specified size.DataBufferUShort(int size, int numBanks) Constructs an unsigned-short basedDataBufferwith the specified number of banks, all of which are the specified size.DataBufferUShort(short[][] dataArray, int size) Constructs an unsigned-short basedDataBufferwith the specified arrays.DataBufferUShort(short[][] dataArray, int size, int[] offsets) Constructs an unsigned-short basedDataBufferwith specified arrays, size, and offsets.DataBufferUShort(short[] dataArray, int size) Constructs an unsigned-short basedDataBufferwith a single bank using the specified array.DataBufferUShort(short[] dataArray, int size, int offset) Constructs an unsigned-short basedDataBufferwith a single bank using the specified array, size, and offset. -
Method Summary
Modifier and TypeMethodDescriptionshort[][]Returns the data arrays for all banks.short[]getData()Returns the default (first) unsigned-short data array.short[]getData(int bank) Returns the data array for the specified bank.intgetElem(int i) Returns the requested data array element from the first (default) bank.intgetElem(int bank, int i) Returns the requested data array element from the specified bank.voidsetElem(int i, int val) Sets the requested data array element in the first (default) bank to the specified value.voidsetElem(int bank, int i, int val) Sets the requested data array element in the specified bank from the given integer.Methods declared in class DataBuffer
getDataType, getDataTypeSize, getElemDouble, getElemDouble, getElemFloat, getElemFloat, getNumBanks, getOffset, getOffsets, getSize, setElemDouble, setElemDouble, setElemFloat, setElemFloatModifier and TypeMethodDescriptionintReturns the data type of this DataBuffer.static intgetDataTypeSize(int type) Returns the size (in bits) of the data type, given a datatype tag.doublegetElemDouble(int i) Returns the requested data array element from the first (default) bank as a double.doublegetElemDouble(int bank, int i) Returns the requested data array element from the specified bank as a double.floatgetElemFloat(int i) Returns the requested data array element from the first (default) bank as a float.floatgetElemFloat(int bank, int i) Returns the requested data array element from the specified bank as a float.intReturns the number of banks in this DataBuffer.intReturns the offset of the default bank in array elements.int[]Returns the offsets (in array elements) of all the banks.intgetSize()Returns the size (in array elements) of all banks.voidsetElemDouble(int i, double val) Sets the requested data array element in the first (default) bank from the given double.voidsetElemDouble(int bank, int i, double val) Sets the requested data array element in the specified bank from the given double.voidsetElemFloat(int i, float val) Sets the requested data array element in the first (default) bank from the given float.voidsetElemFloat(int bank, int i, float val) Sets the requested data array element in the specified bank from the given float.Methods declared in class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitModifier and TypeMethodDescriptionprotected Objectclone()Answers a new instance of the same class as the receiver, whose slots have been filled in with the values in the slots of the receiver.booleanCompares the argument to the receiver, and answers true if they represent the same object using a class specific comparison.protected voidfinalize()Deprecated, for removal: This API element is subject to removal in a future version.May cause performance issues, deadlocks and hangs.getClass()Answers the unique instance of java.lang.Class which represents the class of the receiver.inthashCode()Answers an integer hash code for the receiver.final voidnotify()Causes one thread which iswaiting on the receiver to be made ready to run.final voidCauses all threads which arewaiting on the receiver to be made ready to run.toString()Answers a string containing a concise, human-readable description of the receiver.final voidwait()Causes the thread which sent this message to be made not ready to run pending some change in the receiver (as indicated bynotifyornotifyAll).final voidwait(long time) Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated bynotifyornotifyAll) or the expiration of the timeout.final voidwait(long time, int frac) Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated bynotifyornotifyAll) or the expiration of the timeout.
-
Constructor Details
-
DataBufferUShort
public DataBufferUShort(int size) Constructs an unsigned-short basedDataBufferwith a single bank and the specified size.- Parameters:
size- The size of theDataBuffer.- Throws:
IllegalArgumentException- ifsizeis less than or equal to zero.
-
DataBufferUShort
public DataBufferUShort(int size, int numBanks) Constructs an unsigned-short basedDataBufferwith the specified number of banks, all of which are the specified size.- Parameters:
size- The size of the banks in theDataBuffer.numBanks- The number of banks in theDataBuffer.- Throws:
IllegalArgumentException- ifsizeornumBanksis less than or equal to zero.
-
DataBufferUShort
public DataBufferUShort(short[] dataArray, int size) Constructs an unsigned-short basedDataBufferwith a single bank using the specified array. Only the firstsizeelements should be used by accessors of thisDataBuffer.dataArraymust be large enough to holdsizeelements.Note that
DataBufferobjects created by this constructor may be incompatible with performance optimizations used by some implementations (such as caching an associated image in video memory).- Parameters:
dataArray- The unsigned-short array for theDataBuffer.size- The size of theDataBufferbank.- Throws:
NullPointerException- ifdataArrayisnull.IllegalArgumentException- ifsizeis less than or equal to zero, or is greater than the length ofdataArray.
-
DataBufferUShort
public DataBufferUShort(short[] dataArray, int size, int offset) Constructs an unsigned-short basedDataBufferwith a single bank using the specified array, size, and offset.dataArraymust have at leastoffset+sizeelements. Only elementsoffsetthroughoffset+size- 1 should be used by accessors of thisDataBuffer.Note that
DataBufferobjects created by this constructor may be incompatible with performance optimizations used by some implementations (such as caching an associated image in video memory).- Parameters:
dataArray- The unsigned-short array for theDataBuffer.size- The size of theDataBufferbank.offset- The offset into thedataArray.- Throws:
NullPointerException- ifdataArrayisnull.IllegalArgumentException- ifsizeis less than or equal to zero, oroffsetis less than zero, or(offset + size)is greater than the length ofdataArray.
-
DataBufferUShort
public DataBufferUShort(short[][] dataArray, int size) Constructs an unsigned-short basedDataBufferwith the specified arrays. The number of banks will be equal todataArray.length. Only the firstsizeelements of each array should be used by accessors of thisDataBuffer.Note that
DataBufferobjects created by this constructor may be incompatible with performance optimizations used by some implementations (such as caching an associated image in video memory).- Parameters:
dataArray- The unsigned-short arrays for theDataBuffer.size- The size of the banks in theDataBuffer.- Throws:
NullPointerException- ifdataArrayisnull.IllegalArgumentException- ifsizeis less than or equal to zero.IllegalArgumentException- ifdataArraydoes not have at least one bank.NullPointerException- if any bank ofdataArrayisnull.IllegalArgumentException- if the length of any bank ofdataArrayis less thansize.
-
DataBufferUShort
public DataBufferUShort(short[][] dataArray, int size, int[] offsets) Constructs an unsigned-short basedDataBufferwith specified arrays, size, and offsets. The number of banks is equal todataArray.length. Each array must be at least as large assize+ the corresponding offset. There must be an entry in the offset array for eachdataArrayentry. For each bank, only elementsoffsetthroughoffset+size- 1 should be used by accessors of thisDataBuffer.Note that
DataBufferobjects created by this constructor may be incompatible with performance optimizations used by some implementations (such as caching an associated image in video memory).- Parameters:
dataArray- The unsigned-short arrays for theDataBuffer.size- The size of the banks in theDataBuffer.offsets- The offsets into each array.- Throws:
IllegalArgumentException- ifsizeis less than or equal to zero.NullPointerException- ifdataArrayisnull.NullPointerException- if any bank ofdataArrayisnull.IllegalArgumentException- ifdataArraydoes not have at least one bank.NullPointerException- ifoffsetsisnull.IllegalArgumentException- if any element ofoffsetsis less than zero.ArrayIndexOutOfBoundsException- if the lengths ofdataArrayandoffsetsdiffer.IllegalArgumentException- if the length of any bank ofdataArrayis less than(size + offsets[bankIndex]).
-
-
Method Details
-
getData
public short[] getData()Returns the default (first) unsigned-short data array.Note that calling this method may cause this
DataBufferobject to be incompatible with performance optimizations used by some implementations (such as caching an associated image in video memory).- Returns:
- The first unsigned-short data array.
-
getData
public short[] getData(int bank) Returns the data array for the specified bank.Note that calling this method may cause this
DataBufferobject to be incompatible with performance optimizations used by some implementations (such as caching an associated image in video memory).- Parameters:
bank- The bank whose data array you want to get.- Returns:
- The data array for the specified bank.
- Throws:
ArrayIndexOutOfBoundsException- ifbankis not a valid bank index.
-
getBankData
public short[][] getBankData()Returns the data arrays for all banks.Note that calling this method may cause this
DataBufferobject to be incompatible with performance optimizations used by some implementations (such as caching an associated image in video memory).- Returns:
- All of the data arrays.
-
getElem
public int getElem(int i) Returns the requested data array element from the first (default) bank.- Overrides:
getElemin classDataBuffer- Parameters:
i- The data array element you want to get.- Returns:
- The requested data array element as an integer.
- Throws:
ArrayIndexOutOfBoundsException- if(i + getOffset())is not a valid index.- See Also:
-
getElem
public int getElem(int bank, int i) Returns the requested data array element from the specified bank.- Specified by:
getElemin classDataBuffer- Parameters:
bank- The bank from which you want to get a data array element.i- The data array element you want to get.- Returns:
- The requested data array element as an integer.
- Throws:
ArrayIndexOutOfBoundsException- ifbankis not a valid bank index, or(i + getOffsets()[bank])is not a valid index into the bank.- See Also:
-
setElem
public void setElem(int i, int val) Sets the requested data array element in the first (default) bank to the specified value.- Overrides:
setElemin classDataBuffer- Parameters:
i- The data array element you want to set.val- The integer value to which you want to set the data array element.- Throws:
ArrayIndexOutOfBoundsException- if(i + getOffset())is not a valid index.- See Also:
-
setElem
public void setElem(int bank, int i, int val) Sets the requested data array element in the specified bank from the given integer.- Specified by:
setElemin classDataBuffer- Parameters:
bank- The bank in which you want to set the data array element.i- The data array element you want to set.val- The integer value to which you want to set the specified data array element.- Throws:
ArrayIndexOutOfBoundsException- ifbankis not a valid bank index, or(i + getOffsets()[bank])is not a valid index into the bank.- See Also:
-