Class StackView.DefaultRA<T>

java.lang.Object
net.imglib2.view.StackView.DefaultRA<T>
Type Parameters:
T - the pixel type
All Implemented Interfaces:
EuclideanSpace, Localizable, Positionable, RandomAccess<T>, RealLocalizable, Sampler<T>
Enclosing class:
StackView<T>

public static final class StackView.DefaultRA<T> extends Object implements RandomAccess<T>
A RandomAccess on a StackView. It keeps a list of RandomAccesses on all constituent hyper-slices of the StackView.

When changing any dimension of the position, except the (n+1)th, this position change is applied to the active slice RandomAccess. When changing the (n+1)th dimension of the position, a new slice RandomAccess becomes active is set to the position of the previously active slice RandomAccess.

  • Constructor Summary

    Constructors
    Constructor
    Description
     
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    bck(int d)
    Move by -1 in one dimension.
     
     
    void
    fwd(int d)
    Move by 1 in one dimension.
    get()
    Access the actual T instance providing access to a pixel, sub-pixel or integral region value the Sampler points at.
    double
    Return the current position in a given dimension.
    float
    Return the current position in a given dimension.
    int
    Return the current position in a given dimension.
    long
    Return the current position in a given dimension.
    void
    localize(double[] position)
    Write the current position into the passed array.
    void
    localize(float[] position)
    Write the current position into the passed array.
    void
    localize(int[] position)
    Write the current position into the passed array.
    void
    localize(long[] position)
    Write the current position into the passed array.
    void
    move(int[] distance)
    Move the element relative to its current location using an int[] as distance vector.
    void
    move(int distance, int d)
    Move the element in one dimension for some distance.
    void
    move(long[] distance)
    Move the element relative to its current location using a long[] as distance vector.
    void
    move(long distance, int d)
    Move the element in one dimension for some distance.
    void
    move(Localizable distance)
    Move the element relative to its current location using an Localizable as distance vector.
    int
    Gets the space's number of dimensions.
    void
    setPosition(int[] position)
    Set the position of the element.
    void
    setPosition(int position, int d)
    Set the position of the element for one dimension.
    void
    setPosition(long[] position)
    Set the position of the element.
    void
    setPosition(long position, int d)
    Set the position of the element for one dimension.
    void
    Place the element at the same location as a given Localizable

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

  • Method Details

    • localize

      public void localize(int[] 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
    • 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
    • getIntPosition

      public int getIntPosition(int d)
      Description copied from interface: Localizable
      Return the current position in a given dimension.
      Specified by:
      getIntPosition in interface Localizable
      Parameters:
      d - dimension
      Returns:
      dimension of current position
    • getLongPosition

      public long getLongPosition(int d)
      Description copied from interface: Localizable
      Return the current position in a given dimension.
      Specified by:
      getLongPosition in interface Localizable
      Parameters:
      d - dimension
      Returns:
      dimension of current position
    • localize

      public void localize(float[] position)
      Description copied from interface: RealLocalizable
      Write the current position into the passed array.
      Specified by:
      localize in interface RealLocalizable
      Parameters:
      position - receives current position
    • localize

      public void localize(double[] position)
      Description copied from interface: RealLocalizable
      Write the current position into the passed array.
      Specified by:
      localize in interface RealLocalizable
      Parameters:
      position - 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 interface RealLocalizable
      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 interface RealLocalizable
      Parameters:
      d - dimension
      Returns:
      dimension of current position
    • numDimensions

      public int numDimensions()
      Description copied from interface: EuclideanSpace
      Gets the space's number of dimensions.
      Specified by:
      numDimensions in interface EuclideanSpace
    • fwd

      public void fwd(int d)
      Description copied from interface: Positionable
      Move by 1 in one dimension.
      Specified by:
      fwd in interface Positionable
      Parameters:
      d - dimension
    • bck

      public void bck(int d)
      Description copied from interface: Positionable
      Move by -1 in one dimension.
      Specified by:
      bck in interface Positionable
      Parameters:
      d - dimension
    • move

      public void move(int distance, int d)
      Description copied from interface: Positionable
      Move the element in one dimension for some distance.
      Specified by:
      move in interface Positionable
      Parameters:
      distance - relative offset in dimension d
      d - dimension
    • move

      public void move(long distance, int d)
      Description copied from interface: Positionable
      Move the element in one dimension for some distance.
      Specified by:
      move in interface Positionable
      Parameters:
      distance - relative offset in dimension d
      d - dimension
    • move

      public void move(Localizable distance)
      Description copied from interface: Positionable
      Move the element relative to its current location using an Localizable as distance vector.
      Specified by:
      move in interface Positionable
      Parameters:
      distance - relative offset, EuclideanSpace.numDimensions() must be ≥ EuclideanSpace.numDimensions()
    • move

      public void move(int[] distance)
      Description copied from interface: Positionable
      Move the element relative to its current location using an int[] as distance vector.
      Specified by:
      move in interface Positionable
      Parameters:
      distance - relative offset, length must be ≥ EuclideanSpace.numDimensions()
    • move

      public void move(long[] distance)
      Description copied from interface: Positionable
      Move the element relative to its current location using a long[] as distance vector.
      Specified by:
      move in interface Positionable
      Parameters:
      distance - relative offset, length must be ≥ EuclideanSpace.numDimensions()
    • setPosition

      public void setPosition(Localizable position)
      Description copied from interface: Positionable
      Place the element at the same location as a given Localizable
      Specified by:
      setPosition in interface Positionable
      Parameters:
      position - absolute position, EuclideanSpace.numDimensions() must be ≥ EuclideanSpace.numDimensions()
    • setPosition

      public void setPosition(int[] position)
      Description copied from interface: Positionable
      Set the position of the element.
      Specified by:
      setPosition in interface Positionable
      Parameters:
      position - absolute position, length must be ≥ EuclideanSpace.numDimensions()
    • setPosition

      public void setPosition(long[] position)
      Description copied from interface: Positionable
      Set the position of the element.
      Specified by:
      setPosition in interface Positionable
      Parameters:
      position - absolute position, length must be ≥ EuclideanSpace.numDimensions()
    • setPosition

      public void setPosition(int position, int d)
      Description copied from interface: Positionable
      Set the position of the element for one dimension.
      Specified by:
      setPosition in interface Positionable
      Parameters:
      position - absolute position in dimension d
      d - dimension
    • setPosition

      public void setPosition(long position, int d)
      Description copied from interface: Positionable
      Set the position of the element for one dimension.
      Specified by:
      setPosition in interface Positionable
      Parameters:
      position - absolute position in dimension d
      d - dimension
    • 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>
    • copy

      public StackView.DefaultRA<T> copy()
      Specified by:
      copy in interface Sampler<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)
    • copyRandomAccess

      public StackView.DefaultRA<T> copyRandomAccess()
      Specified by:
      copyRandomAccess in interface RandomAccess<T>