Package net.imglib2.view
Class RandomAccessibleIntervalCursor<T>
- java.lang.Object
-
- net.imglib2.AbstractEuclideanSpace
-
- net.imglib2.AbstractInterval
-
- net.imglib2.view.RandomAccessibleIntervalCursor<T>
-
- All Implemented Interfaces:
java.util.Iterator<T>,Cursor<T>,Dimensions,EuclideanSpace,Interval,Iterator,Localizable,RealCursor<T>,RealInterval,RealLocalizable,Sampler<T>,Typed<T>
public final class RandomAccessibleIntervalCursor<T> extends AbstractInterval implements Cursor<T>
ACursorthat iterates anyRandomAccessibleIntervalby moving aRandomAccessin flat iteration order.Localizablecalls are forwarded to theRandomAccess.
-
-
Field Summary
Fields Modifier and Type Field Description private long[]dimensionsprivate longindexprivate longmaxIndexprivate longmaxIndexOnLineprivate RandomAccess<T>randomAccessprivate long[]tmp-
Fields inherited from class net.imglib2.AbstractInterval
max, min
-
Fields inherited from class net.imglib2.AbstractEuclideanSpace
n
-
-
Constructor Summary
Constructors Modifier Constructor Description RandomAccessibleIntervalCursor(I interval)RandomAccessibleIntervalCursor(RandomAccessible<T> randomAccessible, Interval interval)protectedRandomAccessibleIntervalCursor(RandomAccessibleIntervalCursor<T> cursor)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description RandomAccessibleIntervalCursor<T>copy()voidfwd()Move forward.Tget()Access the actual T instance providing access to a pixel, sub-pixel or integral region value theSamplerpoints at.doublegetDoublePosition(int d)Return the current position in a given dimension.floatgetFloatPosition(int d)Return the current position in a given dimension.intgetIntPosition(int d)Return the current position in a given dimension.longgetLongPosition(int d)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(double[] position)Write the current position into the passed array.voidlocalize(float[] position)Write the current position into the passed array.voidlocalize(int[] position)Write the current position into the passed array.voidlocalize(long[] position)Write the current position into the passed array.private voidnextLine()voidreset()Reset theIterator, that is put it to where it would be if newly created.-
Methods inherited from class net.imglib2.AbstractInterval
dimension, dimensions, max, max, max, min, min, min, realMax, realMax, realMax, realMin, realMin, realMin, 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.Cursor
copyCursor
-
Methods inherited from interface net.imglib2.Dimensions
dimensions, dimensionsAsLongArray, dimensionsAsPoint
-
Methods inherited from interface net.imglib2.EuclideanSpace
numDimensions
-
Methods inherited from interface net.imglib2.Interval
maxAsLongArray, maxAsPoint, minAsLongArray, minAsPoint
-
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.RealInterval
maxAsDoubleArray, maxAsRealPoint, minAsDoubleArray, minAsRealPoint
-
Methods inherited from interface net.imglib2.RealLocalizable
positionAsDoubleArray, positionAsRealPoint
-
-
-
-
Field Detail
-
randomAccess
private final RandomAccess<T> randomAccess
-
dimensions
private final long[] dimensions
-
tmp
private final long[] tmp
-
index
private long index
-
maxIndex
private final long maxIndex
-
maxIndexOnLine
private long maxIndexOnLine
-
-
Constructor Detail
-
RandomAccessibleIntervalCursor
public RandomAccessibleIntervalCursor(I interval)
-
RandomAccessibleIntervalCursor
public RandomAccessibleIntervalCursor(RandomAccessible<T> randomAccessible, Interval interval)
-
RandomAccessibleIntervalCursor
protected RandomAccessibleIntervalCursor(RandomAccessibleIntervalCursor<T> cursor)
-
-
Method Detail
-
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.
-
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.
-
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.
-
nextLine
private void nextLine()
-
reset
public void reset()
Description copied from interface:IteratorReset theIterator, that is put it to where it would be if newly created.
-
hasNext
public boolean hasNext()
Description copied from interface:IteratorReturns true if another step forward is possible.
-
copy
public RandomAccessibleIntervalCursor<T> copy()
- Specified by:
copyin interfaceCursor<T>- Specified by:
copyin interfaceRealCursor<T>- Specified by:
copyin interfaceSampler<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)
-
localize
public void localize(float[] position)
Description copied from interface:RealLocalizableWrite the current position into the passed array.- Specified by:
localizein interfaceRealLocalizable- Parameters:
position- receives current position, length must be ≥EuclideanSpace.numDimensions()
-
localize
public void localize(double[] position)
Description copied from interface:RealLocalizableWrite the current position into the passed array.- Specified by:
localizein interfaceRealLocalizable- Parameters:
position- receives current position, length must be ≥EuclideanSpace.numDimensions()
-
getFloatPosition
public float getFloatPosition(int d)
Description copied from interface:RealLocalizableReturn the current position in a given dimension.- Specified by:
getFloatPositionin interfaceLocalizable- Specified by:
getFloatPositionin interfaceRealLocalizable- Parameters:
d- dimension- Returns:
- dimension of current position
-
getDoublePosition
public double getDoublePosition(int d)
Description copied from interface:RealLocalizableReturn the current position in a given dimension.- Specified by:
getDoublePositionin interfaceLocalizable- Specified by:
getDoublePositionin interfaceRealLocalizable- Parameters:
d- dimension- Returns:
- dimension of current position
-
localize
public void localize(int[] 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()
-
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()
-
getIntPosition
public int getIntPosition(int d)
Description copied from interface:LocalizableReturn the current position in a given dimension.- Specified by:
getIntPositionin interfaceLocalizable- Parameters:
d- dimension- Returns:
- dimension of current position
-
getLongPosition
public long getLongPosition(int d)
Description copied from interface:LocalizableReturn the current position in a given dimension.- Specified by:
getLongPositionin interfaceLocalizable- Parameters:
d- dimension- Returns:
- dimension of current position
-
-