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>,Typed<T>
public class CellCursor<T extends NativeType<T>,C extends Cell<?>> extends AbstractCursor<T> implements AbstractCellImg.CellImgSampler<C>
Cursoron aAbstractCellImg.
-
-
Field Summary
Fields Modifier and Type Field Description protected Cursor<C>cursorOnCellsprivate CellGridgridprotected Indexiprotected booleanisNotLastCellCaches cursorOnCells.hasNext().protected intlastIndexInCellprivate long[]tmpIndicesprotected Ttypeprotected inttypeIndexThe current index of the type.-
Fields inherited from class net.imglib2.AbstractEuclideanSpace
n
-
-
Constructor Summary
Constructors Modifier Constructor Description CellCursor(AbstractCellImg<T,?,C,?> img)protectedCellCursor(CellCursor<T,C> cursor)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CellCursor<T,C>copy()voidfwd()Move forward.Tget()Access the actual T instance providing access to a pixel, sub-pixel or integral region value theSamplerpoints at.CgetCell()longgetLongPosition(int dim)Return the current position in a given dimension.TgetType()Get an instance ofT.booleanhasNext()Returns true if another step forward is possible.voidjumpFwd(long steps)Move steps × forward.voidlocalize(long[] position)Write the current position into the passed array.private voidmoveToNextCell()Move cursor right before the first element of the next cell.voidreset()Reset theIterator, that is put it to where it would be if newly created.java.lang.StringtoString()-
Methods inherited from class net.imglib2.AbstractCursor
getDoublePosition, getFloatPosition, getIntPosition, localize, localize, localize
-
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.Cursor
copyCursor
-
Methods inherited from interface net.imglib2.EuclideanSpace
numDimensions
-
Methods inherited from interface net.imglib2.Localizable
localize, localize, positionAsLongArray, positionAsPoint
-
Methods inherited from interface net.imglib2.RealCursor
next
-
Methods inherited from interface net.imglib2.RealLocalizable
positionAsDoubleArray, positionAsRealPoint
-
-
-
-
Field Detail
-
type
protected final T extends NativeType<T> type
-
i
protected final Index i
-
grid
private final CellGrid grid
-
lastIndexInCell
protected int lastIndexInCell
-
typeIndex
protected int typeIndex
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().
-
tmpIndices
private final long[] tmpIndices
-
-
Constructor Detail
-
CellCursor
protected CellCursor(CellCursor<T,C> cursor)
-
CellCursor
public CellCursor(AbstractCellImg<T,?,C,?> img)
-
-
Method Detail
-
getCell
public C getCell()
- Specified by:
getCellin interfaceAbstractCellImg.CellImgSampler<T extends NativeType<T>>- Returns:
- the cell the sampler is currently in.
-
get
public T get()
Description copied from interface:SamplerAccess the actual T instance providing access to a pixel, sub-pixel or integral region value theSamplerpoints at.- Specified by:
getin interfaceSampler<T extends NativeType<T>>
-
getType
public T getType()
Description copied from interface:TypedGet an instance ofT.It should not be assumed that the returned
Tinstance is an independent copy. In particular, repeated calls togetType()may return the same instance.- Specified by:
getTypein interfaceSampler<T extends NativeType<T>>- Specified by:
getTypein interfaceTyped<T extends NativeType<T>>- Returns:
- an instance of
T
-
copy
public CellCursor<T,C> copy()
- Specified by:
copyin interfaceCursor<T extends NativeType<T>>- Specified by:
copyin interfaceRealCursor<T extends NativeType<T>>- Specified by:
copyin interfaceSampler<T extends NativeType<T>>- Specified by:
copyin classAbstractCursor<T extends NativeType<T>>- Returns:
- - A new
Samplerin 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 anArrayCursorfor example)
-
hasNext
public boolean hasNext()
Description copied from interface:IteratorReturns true if another step forward is possible.- Specified by:
hasNextin interfacejava.util.Iterator<T extends NativeType<T>>- Specified by:
hasNextin interfaceIterator- Returns:
- true, if there is another step forward is possible, otherwise false
-
jumpFwd
public void jumpFwd(long steps)
Description copied from interface:IteratorMove steps × forward.Highly recommended to override this with a more efficient version.
-
fwd
public void fwd()
Description copied from interface:IteratorMove forward.
-
reset
public void reset()
Description copied from interface:IteratorReset theIterator, that is put it to where it would be if newly created.
-
toString
public java.lang.String toString()
- Overrides:
toStringin classAbstractCursor<T extends NativeType<T>>
-
getLongPosition
public long getLongPosition(int dim)
Description copied from interface:LocalizableReturn the current position in a given dimension.- Specified by:
getLongPositionin interfaceLocalizable- Parameters:
dim- dimension- Returns:
- dimension of current position
-
localize
public void localize(long[] position)
Description copied from interface:LocalizableWrite the current position into the passed array.- Specified by:
localizein interfaceLocalizable- Parameters:
position- receives current position, length must be ≥EuclideanSpace.numDimensions()
-
moveToNextCell
private void moveToNextCell()
Move cursor right before the first element of the next cell. Update type and index variables.
-
-