public class SmallTwoDimensionalByteArray extends TwoDimensionalByteReadAccess.Base implements TwoDimensionalByteAccess
This internally maps to a one-dimensional byte array which is created faster.
Because of the mapping the size of the dimensions is restricted in a way that the
number of elements in this array (i.e. the multiplication of its X and Y size) is less
than Integer.MAX_VALUE. Use TwoDimensionalByteArray if you are not
sure to always obey this restriction.
TwoDimensionalByteReadAccess.BaseEMPTY| Constructor and Description |
|---|
SmallTwoDimensionalByteArray(int ySize,
byte... values)
Constructor.
|
SmallTwoDimensionalByteArray(int xSize,
int ySize)
Constructor.
|
SmallTwoDimensionalByteArray(int xSize,
int ySize,
IntToByteFunction2 filler)
Initializing constructor.
|
SmallTwoDimensionalByteArray(TwoDimensionalByteReadAccess array)
Copy constructor.
|
| Modifier and Type | Method and Description |
|---|---|
SmallTwoDimensionalByteArray |
copy()
Get a copy of this array.
|
byte |
getValueAt(int ix,
int iy)
Get the value at the given indexes.
|
void |
invertX()
Invert the row order in X direction.
|
void |
invertY()
Invert the row order in Y direction.
|
void |
setValueAt(byte value,
int ix,
int iy)
Set the value at the given indexes.
|
int |
sizeX()
Get the number of elements in X direction.
|
int |
sizeY()
Get the number of elements in Y direction
|
asBaseequals, hashCode, toStringclone, finalize, getClass, notify, notifyAll, wait, wait, waitchangeAllValues, changeValueAt, fillValuesByIndex, setElementAt, subAtX, subAtY, transposedasBase, getElementAt, singletonchangeAll, changeAll, createConstant, createIndexed, createNulled, createSupplied, empty, fillByIndex, setElement, zeroX, zeroYequal, getElement, getNumDimensions, getNumElements, getSize, getSizes, hash, toString, view, visitAll, visitAll, xIterable, xIterator, yIterable, yIteratorchange, setAll, setFrom, setFrom, setFromempty, linearizedpublic SmallTwoDimensionalByteArray(int xSize,
int ySize)
0.0 values.xSize - X size of arrayySize - Y size of arrayjava.lang.IllegalArgumentException - on negative sizes or if linearized size becoms too largeSmallTwoDimensionalByteArray(int, int, IntToByteFunction2)public SmallTwoDimensionalByteArray(int xSize,
int ySize,
@NotNull
IntToByteFunction2 filler)
xSize - X size of arrayySize - Y size of arrayfiller - setter function which provides the value to set for each index combinationjava.lang.IllegalArgumentException - on negative sizes or if linearized size becoms too largeTwoDimensionalByteAccess.fillValuesByIndex(IntToByteFunction2)public SmallTwoDimensionalByteArray(int ySize,
byte... values)
ySize - size in y directionvalues - values in order, the first ySize values
will become row 0, the second ySize values
row 1, and so on. Needs a multiple of ySize values.public SmallTwoDimensionalByteArray(@NotNull TwoDimensionalByteReadAccess array)
array - array to copyjava.lang.IllegalArgumentException - on negative sizes or if linearized size becoms too largepublic void invertX()
public void invertY()
public void setValueAt(byte value,
int ix,
int iy)
setValueAt in interface TwoDimensionalByteAccessvalue - value to setix - X indexiy - Y indexpublic byte getValueAt(int ix,
int iy)
getValueAt in interface TwoDimensionalByteReadAccessix - X indexiy - Y indexpublic int sizeX()
TwoDimensionalReadAccesssizeX in interface TwoDimensionalReadAccess<java.lang.Byte>public int sizeY()
TwoDimensionalReadAccesssizeY in interface TwoDimensionalReadAccess<java.lang.Byte>@NotNull public SmallTwoDimensionalByteArray copy()