Package net.imglib2
Class AbstractCursor<T>
- java.lang.Object
-
- net.imglib2.AbstractEuclideanSpace
-
- net.imglib2.AbstractCursor<T>
-
- Type Parameters:
T
-
- All Implemented Interfaces:
java.util.Iterator<T>
,Cursor<T>
,EuclideanSpace
,Iterator
,Localizable
,RealCursor<T>
,RealLocalizable
,Sampler<T>
- Direct Known Subclasses:
AbstractLongListImg.LongListCursor
,CellCursor
public abstract class AbstractCursor<T> extends AbstractEuclideanSpace implements Cursor<T>
Abstract implementation ofCursor
. Java'sIterator
interface is implemented by mapping to abstractIterator.fwd()
andSampler.get()
.For localization, default implementations are available that all build on the abstract long variant. For particular cursors, this may be implemented more efficiently saving at least one loop over n.
- Author:
- Stephan Preibisch, Stephan Saalfeld, Tobias Pietzsch
-
-
Field Summary
-
Fields inherited from class net.imglib2.AbstractEuclideanSpace
n
-
-
Constructor Summary
Constructors Constructor Description AbstractCursor(int n)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract AbstractCursor<T>
copy()
abstract AbstractCursor<T>
copyCursor()
double
getDoublePosition(int d)
Return the current position in a given dimension.float
getFloatPosition(int d)
Return the current position in a given dimension.int
getIntPosition(int d)
Return the current position in a given dimension.void
jumpFwd(long steps)
Highly recommended to override this with a more efficient version.void
localize(double[] pos)
Write the current position into the passed array.void
localize(float[] pos)
Write the current position into the passed array.void
localize(int[] pos)
Write the current position into the passed array.T
next()
void
remove()
java.lang.String
toString()
-
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
-
Methods inherited from interface net.imglib2.Localizable
getLongPosition, localize
-
-
-
-
Constructor Detail
-
AbstractCursor
public AbstractCursor(int n)
- Parameters:
n
- number of dimensions in theImg
.
-
-
Method Detail
-
remove
public void remove()
- Specified by:
remove
in interfacejava.util.Iterator<T>
-
jumpFwd
public void jumpFwd(long steps)
Highly recommended to override this with a more efficient version.
-
localize
public void localize(float[] pos)
Description copied from interface:RealLocalizable
Write the current position into the passed array.- Specified by:
localize
in interfaceRealLocalizable
- Parameters:
pos
- receives current position
-
localize
public void localize(double[] pos)
Description copied from interface:RealLocalizable
Write the current position into the passed array.- Specified by:
localize
in interfaceRealLocalizable
- Parameters:
pos
- receives current position
-
localize
public void localize(int[] pos)
Description copied from interface:Localizable
Write the current position into the passed array.- Specified by:
localize
in interfaceLocalizable
- Parameters:
pos
- receives current position
-
getFloatPosition
public float getFloatPosition(int d)
Description copied from interface:RealLocalizable
Return the current position in a given dimension.- Specified by:
getFloatPosition
in interfaceRealLocalizable
- Parameters:
d
- dimension- Returns:
- dimension of current position
-
getDoublePosition
public double getDoublePosition(int d)
Description copied from interface:RealLocalizable
Return the current position in a given dimension.- Specified by:
getDoublePosition
in interfaceRealLocalizable
- Parameters:
d
- dimension- Returns:
- dimension of current position
-
getIntPosition
public int getIntPosition(int d)
Description copied from interface:Localizable
Return the current position in a given dimension.- Specified by:
getIntPosition
in interfaceLocalizable
- Parameters:
d
- dimension- Returns:
- dimension of current position
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
copy
public abstract AbstractCursor<T> copy()
- Specified by:
copy
in interfaceSampler<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 abstract AbstractCursor<T> copyCursor()
- Specified by:
copyCursor
in interfaceCursor<T>
- Specified by:
copyCursor
in interfaceRealCursor<T>
-
-