public class Unsigned12BitType extends IntegerTypeImpl<Unsigned12BitType>
Constructor and Description |
---|
Unsigned12BitType() |
Unsigned12BitType(DirectAccessContainer<Unsigned12BitType,? extends BitAccess> bitStorage) |
Unsigned12BitType(short value) |
Modifier and Type | Method and Description |
---|---|
Unsigned12BitType |
copy()
|
Unsigned12BitType[] |
createArray1D(int size1)
Creates a 1d array of the generic
Type |
Unsigned12BitType[][] |
createArray2D(int size1,
int size2)
Creates a 2d array of the generic
Type |
Unsigned12BitType[][][] |
createArray3D(int size1,
int size2,
int size3)
Creates a 3d array of the generic
Type |
DirectAccessContainer<Unsigned12BitType,? extends BitAccess> |
createSuitableDirectAccessContainer(DirectAccessContainerFactory storageFactory,
int[] dim)
The
Type creates the DirectAccessContainer used for storing image data; based on the given storage strategy and its size. |
Unsigned12BitType |
createVariable()
Creates a new
Type which can only store one value. |
void |
decIndex()
Decreases the array index,
this is called by the
Cursor s which iterate over the image. |
void |
decIndex(int decrement)
Decreases the index by increment steps,
this is called by the
Cursor s which iterate over the image. |
Unsigned12BitType |
duplicateTypeOnSameDirectAccessContainer()
Creates a new
Type which stores in the same physical array. |
short |
get() |
int |
getInteger() |
long |
getIntegerLong() |
double |
getMaxValue() |
double |
getMinValue() |
void |
incIndex()
Increases the array index,
this is called by the
Cursor s which iterate over the image. |
void |
incIndex(int increment)
Increases the index by increment steps,
this is called by the
Cursor s which iterate over the image. |
void |
set(short value) |
void |
setInteger(int f) |
void |
setInteger(long f) |
void |
updateContainer(Cursor<?> c)
|
void |
updateIndex(int i)
Set the array position of the
Type . |
compareTo, dec, getDefaultDisplay, getMinIncrement, getRealDouble, getRealFloat, inc, setOne, setReal, setReal, setZero, toString
add, div, getComplexDouble, getComplexFloat, getEntitiesPerPixel, getPhaseDouble, getPhaseFloat, getPowerDouble, getPowerFloat, mul, mul, mul, set, setComplex, setComplex, sub
complexConjugate, getPreferredRealPrecision, setComplexNumber, setComplexNumber
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
complexConjugate, getComplexDouble, getComplexFloat, getPhaseDouble, getPhaseFloat, getPowerDouble, getPowerFloat, getPreferredRealPrecision, setComplex, setComplex, setComplexNumber, setComplexNumber
add, div, mul, mul, mul, sub
getEntitiesPerPixel, getIndex, set
public Unsigned12BitType(DirectAccessContainer<Unsigned12BitType,? extends BitAccess> bitStorage)
public Unsigned12BitType(short value)
public Unsigned12BitType()
public DirectAccessContainer<Unsigned12BitType,? extends BitAccess> createSuitableDirectAccessContainer(DirectAccessContainerFactory storageFactory, int[] dim)
Type
Type
creates the DirectAccessContainer used for storing image data; based on the given storage strategy and its size. It
basically only decides here which BasicType it uses (float, int, byte, bit, ...) and how many entities per pixel it needs
(e.g. 2 floats per pixel for a complex number). This enables the separation of Image
and the basic types.storageFactory
- - Which storage strategy is useddim
- - the dimensionsType
knowns the BasicType it contains.public void updateContainer(Cursor<?> c)
Type
Cursor
s to update the data current data array
of the Type
, for example when moving from one Cell
to the next.
If it is only an Array
the Cursor
s never have to call that function.
The idea behind this concept is maybe not obvious. The Type
knows which basic type
is used (float, int, byte, ...) but does not know how it is stored (Array
, CellDirectAccessContainer
, ...) to
prevent multiple implementations of Type
.
That's why Type
asks the DataAccess
to give the actual basic array by passing the Cursor
that calls the method. The DataAccess
is also an Array
, CellDirectAccessContainer
, ... which
can then communicate with the ArrayCursor
, CellCursor
, ... and return the current basic type array.
A typical implementation of this method looks like that (this is the FloatType
implementation):
float[] v = floatStorage.getCurrentStorageArray( c );c
- - the Cursor
gives a link to itself so that the Type
tell its DataAccess
to get the new basic type array.public Unsigned12BitType duplicateTypeOnSameDirectAccessContainer()
Type
Type
which stores in the same physical array. This is only used internally.Type
instance working on the same DirectAccessContainer
public short get()
public void set(short value)
public int getInteger()
public long getIntegerLong()
public void setInteger(int f)
public void setInteger(long f)
public double getMaxValue()
public double getMinValue()
public void updateIndex(int i)
Type
Type
.updateIndex
in interface Type<Unsigned12BitType>
updateIndex
in class RealTypeImpl<Unsigned12BitType>
i
- - index valuepublic void incIndex()
Type
Cursor
s which iterate over the image.incIndex
in interface Type<Unsigned12BitType>
incIndex
in class RealTypeImpl<Unsigned12BitType>
public void incIndex(int increment)
Type
Cursor
s which iterate over the image.incIndex
in interface Type<Unsigned12BitType>
incIndex
in class RealTypeImpl<Unsigned12BitType>
increment
- - how many stepspublic void decIndex()
Type
Cursor
s which iterate over the image.decIndex
in interface Type<Unsigned12BitType>
decIndex
in class RealTypeImpl<Unsigned12BitType>
public void decIndex(int decrement)
Type
Cursor
s which iterate over the image.decIndex
in interface Type<Unsigned12BitType>
decIndex
in class RealTypeImpl<Unsigned12BitType>
public Unsigned12BitType[] createArray1D(int size1)
Type
Type
size1
- - the size of the arraypublic Unsigned12BitType[][] createArray2D(int size1, int size2)
Type
Type
size1
- - the size of the arraysize2
- - the size of the arraypublic Unsigned12BitType[][][] createArray3D(int size1, int size2, int size3)
Type
Type
size1
- - the size of the arraysize2
- - the size of the arraysize3
- - the size of the arraypublic Unsigned12BitType createVariable()
Type
Type
which can only store one value.Type
instancepublic Unsigned12BitType copy()
Type
copy
in interface Type<Unsigned12BitType>
copy
in class TypeImpl<Unsigned12BitType>
Type
instanceCopyright © 2015–2021 Fiji. All rights reserved.