Package de.gsi.dataset.spi.utils
Class MultiArrayByte
- java.lang.Object
-
- de.gsi.dataset.spi.utils.MultiArray<byte[]>
-
- de.gsi.dataset.spi.utils.MultiArrayByte
-
- Direct Known Subclasses:
MultiArrayByte.MultiArray1DByte,MultiArrayByte.MultiArray2DByte
public class MultiArrayByte extends MultiArray<byte[]>
Implementation of MultiArray for byte values. Also contains subtypes for 1D and 2D Arrays which allow more convenient and more efficient access.The data is stored in row-major in a flat byte array.
- Author:
- Alexander Krimm
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classMultiArrayByte.MultiArray1DByteSpecialisation for the 1D case to allow for easier and more efficient usagestatic classMultiArrayByte.MultiArray2DByteSpecialisation for the 2D case to allow for easier and more efficient usage
-
Field Summary
-
Fields inherited from class de.gsi.dataset.spi.utils.MultiArray
dimensions, elements, offset, strides
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedMultiArrayByte(byte[] elements, int[] dimensions, int offset)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static MultiArrayByteallocate(int[] dimensions)booleanequals(java.lang.Object o)byteget(int[] indices)Get a value in the MultiArray.bytegetStrided(int index)Get a value in the backing array using linear indexing.inthashCode()voidset(int[] indices, byte value)Set a value in the MultiArray for given indicesvoidsetStrided(int index, byte value)Set a value in the backing array using linear indexing.static MultiArrayBytewrap(byte[] elements)static MultiArrayBytewrap(byte[] elements, int[] dimensions)static MultiArrayBytewrap(byte[] elements, int offset, int length)static MultiArrayBytewrap(byte[] elements, int offset, int[] dimensions)-
Methods inherited from class de.gsi.dataset.spi.utils.MultiArray
elements, getDimensions, getElementsCount, getIndex, getIndices, getOffset, toString, wrap, wrap, wrap, wrap
-
-
-
-
Method Detail
-
wrap
public static MultiArrayByte wrap(byte[] elements)
- Parameters:
elements- Elements for the new MultiArray- Returns:
- A MultiArrayByte1D with the supplied elements
-
wrap
public static MultiArrayByte wrap(byte[] elements, int offset, int length)
- Parameters:
elements- Elements for the new MultiArrayoffset- where in the backing array the element data startslength- number of elements to use from the elements array- Returns:
- A MultiArrayByte1D with the supplied elements
-
wrap
public static MultiArrayByte wrap(byte[] elements, int[] dimensions)
- Parameters:
dimensions- The size of the new MultiArrayByteelements- The element data of the MultiArrayByte in row-major storage- Returns:
- A MultiArrayByte or specialisation of it for the 1D and 2D case
-
wrap
public static MultiArrayByte wrap(byte[] elements, int offset, int[] dimensions)
- Parameters:
elements- The element data of the MultiArrayByte in row-major storageoffset- where in the backing array the element data startsdimensions- The size of the new MultiArrayByte- Returns:
- A MultiArrayByte or specialisation of it for the 1D and 2D case
-
allocate
public static MultiArrayByte allocate(int[] dimensions)
- Parameters:
dimensions- Dimensions for the new MultiArray- Returns:
- A new MultiArrayByte with a new empty backing array
-
setStrided
public void setStrided(int index, byte value)Set a value in the backing array using linear indexing.- Parameters:
value- the new value for the elementindex- the index of the element to set
-
set
public void set(int[] indices, byte value)Set a value in the MultiArray for given indices- Parameters:
value- The new value for the elementindices- Indices for every dimension of the MultiArray
-
getStrided
public byte getStrided(int index)
Get a value in the backing array using linear indexing.- Parameters:
index- the index of the element to set- Returns:
- The element value
-
get
public byte get(int[] indices)
Get a value in the MultiArray.- Parameters:
indices- the indices of the element to set- Returns:
- The element value
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equalsin classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
-