DataBufferBytepublic final class DataBufferByte extends DataBuffer This class extends DataBuffer and stores data internally as bytes.
Values stored in the byte array(s) of this DataBuffer are treated as
unsigned values. |
Fields Summary |
---|
byte[] | dataThe default data bank. | byte[] | bankdataAll data banks |
Constructors Summary |
---|
public DataBufferByte(int size)Constructs a byte-based DataBuffer with a single bank and the
specified size.
super(TYPE_BYTE,size);
data = new byte[size];
bankdata = new byte[1][];
bankdata[0] = data;
| public DataBufferByte(int size, int numBanks)Constructs a byte based DataBuffer with the specified number of
banks all of which are the specified size.
super(TYPE_BYTE, size, numBanks);
bankdata = new byte[numBanks][];
for (int i= 0; i < numBanks; i++) {
bankdata[i] = new byte[size];
}
data = bankdata[0];
| public DataBufferByte(byte[] dataArray, int size)Constructs a byte-based DataBuffer with a single bank using the
specified array.
Only the first size elements should be used by accessors of
this DataBuffer . dataArray must be large enough to
hold size elements.
super(TYPE_BYTE,size);
data = dataArray;
bankdata = new byte[1][];
bankdata[0] = data;
| public DataBufferByte(byte[] dataArray, int size, int offset)Constructs a byte-based DataBuffer with a single bank using the
specified array, size, and offset. dataArray must have at least
offset + size elements. Only elements offset
through offset + size - 1
should be used by accessors of this DataBuffer .
super(TYPE_BYTE,size,1,offset);
data = dataArray;
bankdata = new byte[1][];
bankdata[0] = data;
| public DataBufferByte(byte[] dataArray, int size)Constructs a byte-based DataBuffer with the specified arrays.
The number of banks is equal to dataArray.length .
Only the first size elements of each array should be used by
accessors of this DataBuffer .
super(TYPE_BYTE,size,dataArray.length);
bankdata = (byte[][]) dataArray.clone();
data = bankdata[0];
| public DataBufferByte(byte[] dataArray, int size, int[] offsets)Constructs a byte-based DataBuffer with the specified arrays, size,
and offsets.
The number of banks is equal to dataArray.length . Each array must
be at least as large as size + the corresponding offset .
There must be an entry in the offset array for each dataArray
entry. For each bank, only elements offset through
offset + size - 1 should be used by accessors of this
DataBuffer .
super(TYPE_BYTE,size,dataArray.length,offsets);
bankdata = (byte[][]) dataArray.clone();
data = bankdata[0];
|
Methods Summary |
---|
public byte[][] | getBankData()Returns the data arrays for all banks.
return (byte[][]) bankdata.clone();
| public byte[] | getData()Returns the default (first) byte data array.
return data;
| public byte[] | getData(int bank)Returns the data array for the specified bank.
return bankdata[bank];
| public int | getElem(int i)Returns the requested data array element from the first (default) bank.
return (int)(data[i+offset]) & 0xff;
| public int | getElem(int bank, int i)Returns the requested data array element from the specified bank.
return (int)(bankdata[bank][i+offsets[bank]]) & 0xff;
| public void | setElem(int i, int val)Sets the requested data array element in the first (default) bank
to the specified value.
data[i+offset] = (byte)val;
| public void | setElem(int bank, int i, int val)Sets the requested data array element in the specified bank
from the given integer.
bankdata[bank][i+offsets[bank]] = (byte)val;
|
|