Package net.imglib2.img.cell
Class CellCursor<T extends NativeType<T>,C extends Cell<?>>
- java.lang.Object
-
- net.imglib2.AbstractEuclideanSpace
-
- net.imglib2.AbstractCursor<T>
-
- net.imglib2.img.cell.CellCursor<T,C>
-
- All Implemented Interfaces:
java.util.Iterator<T>
,Cursor<T>
,EuclideanSpace
,AbstractCellImg.CellImgSampler<C>
,Iterator
,Localizable
,RealCursor<T>
,RealLocalizable
,Sampler<T>
public class CellCursor<T extends NativeType<T>,C extends Cell<?>> extends AbstractCursor<T> implements AbstractCellImg.CellImgSampler<C>
Cursor
on aAbstractCellImg
.- Author:
- Tobias Pietzsch
-
-
Field Summary
Fields Modifier and Type Field Description protected Cursor<C>
cursorOnCells
protected int
index
The current index of the type.protected boolean
isNotLastCell
Caches cursorOnCells.hasNext().protected int
lastIndexInCell
protected T
type
-
Fields inherited from class net.imglib2.AbstractEuclideanSpace
n
-
-
Constructor Summary
Constructors Modifier Constructor Description CellCursor(AbstractCellImg<T,?,C,?> img)
protected
CellCursor(CellCursor<T,C> cursor)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CellCursor<T,C>
copy()
CellCursor<T,C>
copyCursor()
void
fwd()
Move forward.T
get()
Access the actual T instance providing access to a pixel, sub-pixel or integral region value theSampler
points at.C
getCell()
long
getLongPosition(int dim)
Return the current position in a given dimension.boolean
hasNext()
Returns true if another step forward is possible.void
jumpFwd(long steps)
Highly recommended to override this with a more efficient version.void
localize(long[] position)
Write the current position into the passed array.void
reset()
Reset theIterator
, that is put it to where it would be if newly created.java.lang.String
toString()
-
Methods inherited from class net.imglib2.AbstractCursor
getDoublePosition, getFloatPosition, getIntPosition, localize, localize, localize, next, remove
-
Methods inherited from class net.imglib2.AbstractEuclideanSpace
numDimensions
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface net.imglib2.EuclideanSpace
numDimensions
-
-
-
-
Field Detail
-
type
protected final T extends NativeType<T> type
-
lastIndexInCell
protected int lastIndexInCell
-
index
protected int index
The current index of the type. It is faster to duplicate this here than to access it through type.getIndex().
-
isNotLastCell
protected boolean isNotLastCell
Caches cursorOnCells.hasNext().
-
-
Constructor Detail
-
CellCursor
protected CellCursor(CellCursor<T,C> cursor)
-
CellCursor
public CellCursor(AbstractCellImg<T,?,C,?> img)
-
-
Method Detail
-
getCell
public C getCell()
- Specified by:
getCell
in interfaceAbstractCellImg.CellImgSampler<T extends NativeType<T>>
- Returns:
- the cell the sampler is currently in.
-
get
public T get()
Description copied from interface:Sampler
Access the actual T instance providing access to a pixel, sub-pixel or integral region value theSampler
points at.- Specified by:
get
in interfaceSampler<T extends NativeType<T>>
-
copy
public CellCursor<T,C> copy()
- Specified by:
copy
in interfaceSampler<T extends NativeType<T>>
- Specified by:
copy
in classAbstractCursor<T extends NativeType<T>>
- Returns:
- - A new
Sampler
in the same state accessing the same values. It does NOT copy T, just the state of theSampler
. Otherwise use T.copy() if available. Sampler.copy().get() == Sampler.get(), i.e. both hold the same value, not necessarily the same instance (this is the case for anArrayCursor
for example)
-
copyCursor
public CellCursor<T,C> copyCursor()
- Specified by:
copyCursor
in interfaceCursor<T extends NativeType<T>>
- Specified by:
copyCursor
in interfaceRealCursor<T extends NativeType<T>>
- Specified by:
copyCursor
in classAbstractCursor<T extends NativeType<T>>
-
hasNext
public boolean hasNext()
Description copied from interface:Iterator
Returns true if another step forward is possible.- Specified by:
hasNext
in interfacejava.util.Iterator<T extends NativeType<T>>
- Specified by:
hasNext
in interfaceIterator
- Returns:
- true, if there is another step forward is possible, otherwise false
-
jumpFwd
public void jumpFwd(long steps)
Description copied from class:AbstractCursor
Highly recommended to override this with a more efficient version.- Specified by:
jumpFwd
in interfaceIterator
- Overrides:
jumpFwd
in classAbstractCursor<T extends NativeType<T>>
- Parameters:
steps
- number of steps to move forward
-
fwd
public void fwd()
Description copied from interface:Iterator
Move forward.
-
reset
public void reset()
Description copied from interface:Iterator
Reset theIterator
, that is put it to where it would be if newly created.
-
toString
public java.lang.String toString()
- Overrides:
toString
in classAbstractCursor<T extends NativeType<T>>
-
getLongPosition
public long getLongPosition(int dim)
Description copied from interface:Localizable
Return the current position in a given dimension.- Specified by:
getLongPosition
in interfaceLocalizable
- Parameters:
dim
- dimension- Returns:
- dimension of current position
-
localize
public void localize(long[] position)
Description copied from interface:Localizable
Write the current position into the passed array.- Specified by:
localize
in interfaceLocalizable
- Parameters:
position
- receives current position
-
-