Class CellCursor<T extends NativeType<T>,C extends Cell<?>>

All Implemented Interfaces:
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>
Author:
Tobias Pietzsch
  • Field Details

    • type

      protected final T extends NativeType<T> type
    • cursorOnCells

      protected final Cursor<C extends Cell<?>> cursorOnCells
    • 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 Details

  • Method Details

    • getCell

      public C getCell()
      Specified by:
      getCell in interface AbstractCellImg.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 the Sampler points at.
      Specified by:
      get in interface Sampler<T extends NativeType<T>>
    • copy

      public CellCursor<T,C> copy()
      Specified by:
      copy in interface Sampler<T extends NativeType<T>>
      Specified by:
      copy in class AbstractCursor<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 the Sampler. 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 an ArrayCursor for example)
    • copyCursor

      public CellCursor<T,C> copyCursor()
      Specified by:
      copyCursor in interface Cursor<T extends NativeType<T>>
      Specified by:
      copyCursor in interface RealCursor<T extends NativeType<T>>
      Specified by:
      copyCursor in class AbstractCursor<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 interface Iterator<T extends NativeType<T>>
      Specified by:
      hasNext in interface Iterator
      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 interface Iterator
      Overrides:
      jumpFwd in class AbstractCursor<T extends NativeType<T>>
      Parameters:
      steps - number of steps to move forward
    • fwd

      public void fwd()
      Description copied from interface: Iterator
      Move forward.
      Specified by:
      fwd in interface Iterator
    • reset

      public void reset()
      Description copied from interface: Iterator
      Reset the Iterator, that is put it to where it would be if newly created.
      Specified by:
      reset in interface Iterator
    • toString

      public String toString()
      Overrides:
      toString in class AbstractCursor<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 interface Localizable
      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 interface Localizable
      Parameters:
      position - receives current position