Package de.gsi.dataset.spi.utils
Class MultiArrayLong
- java.lang.Object
-
- de.gsi.dataset.spi.utils.MultiArray<long[]>
-
- de.gsi.dataset.spi.utils.MultiArrayLong
-
- Direct Known Subclasses:
MultiArrayLong.MultiArray1DLong,MultiArrayLong.MultiArray2DLong
public class MultiArrayLong extends MultiArray<long[]>
Implementation of MultiArray for long 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 long array.
- Author:
- Alexander Krimm
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classMultiArrayLong.MultiArray1DLongSpecialisation for the 1D case to allow for easier and more efficient usagestatic classMultiArrayLong.MultiArray2DLongSpecialisation 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 protectedMultiArrayLong(long[] elements, int[] dimensions, int offset)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static MultiArrayLongallocate(int[] dimensions)booleanequals(java.lang.Object o)longget(int[] indices)Get a value in the MultiArray.longgetStrided(int index)Get a value in the backing array using linear indexing.inthashCode()voidset(int[] indices, long value)Set a value in the MultiArray for given indicesvoidsetStrided(int index, long value)Set a value in the backing array using linear indexing.static MultiArrayLongwrap(long[] elements)static MultiArrayLongwrap(long[] elements, int[] dimensions)static MultiArrayLongwrap(long[] elements, int offset, int length)static MultiArrayLongwrap(long[] 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 MultiArrayLong wrap(long[] elements)
- Parameters:
elements- Elements for the new MultiArray- Returns:
- A MultiArrayLong1D with the supplied elements
-
wrap
public static MultiArrayLong wrap(long[] 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 MultiArrayLong1D with the supplied elements
-
wrap
public static MultiArrayLong wrap(long[] elements, int[] dimensions)
- Parameters:
dimensions- The size of the new MultiArrayLongelements- The element data of the MultiArrayLong in row-major storage- Returns:
- A MultiArrayLong or specialisation of it for the 1D and 2D case
-
wrap
public static MultiArrayLong wrap(long[] elements, int offset, int[] dimensions)
- Parameters:
elements- The element data of the MultiArrayLong in row-major storageoffset- where in the backing array the element data startsdimensions- The size of the new MultiArrayLong- Returns:
- A MultiArrayLong or specialisation of it for the 1D and 2D case
-
allocate
public static MultiArrayLong allocate(int[] dimensions)
- Parameters:
dimensions- Dimensions for the new MultiArray- Returns:
- A new MultiArrayLong with a new empty backing array
-
setStrided
public void setStrided(int index, long 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, long 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 long 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 long 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
-
-