Class ArrayRandomAccess<T extends NativeType<T>>

Type Parameters:
T -
All Implemented Interfaces:
EuclideanSpace, Localizable, Positionable, RandomAccess<T>, RealLocalizable, Sampler<T>

public class ArrayRandomAccess<T extends NativeType<T>> extends AbstractLocalizableInt implements RandomAccess<T>
Author:
Stephan Preibisch, Stephan Saalfeld, Tobias Pietzsch
  • Field Details

  • Constructor Details

    • ArrayRandomAccess

      protected ArrayRandomAccess(ArrayRandomAccess<T> randomAccess)
    • ArrayRandomAccess

      public ArrayRandomAccess(ArrayImg<T,?> container)
  • Method Details

    • 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>>
    • 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 localizable)
      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:
      localizable - 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 localizable)
      Description copied from interface: Positionable
      Place the element at the same location as a given Localizable
      Specified by:
      setPosition in interface Positionable
      Parameters:
      localizable - absolute position, EuclideanSpace.numDimensions() must be ≥ EuclideanSpace.numDimensions()
    • setPosition

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

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

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

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

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

      public ArrayRandomAccess<T> copyRandomAccess()
      Specified by:
      copyRandomAccess in interface RandomAccess<T extends NativeType<T>>
    • fwdDim0

      public void fwdDim0()
      Moves one step forward in dimension 0
    • bckDim0

      public void bckDim0()
      Moves one step backward in dimension 0
    • moveDim0

      public void moveDim0(int distance)
      Moves n steps in dimension 0
      Parameters:
      distance - - how many steps (positive or negative)
    • move

      public void move(long distance)
      Moves n steps in dimension 0
      Parameters:
      distance - - how many steps (positive or negative)
    • setPositionDim0

      public void setPositionDim0(int pos)
      Sets the ArrayRandomAccess to a certain position in dimension 0 Careful: it assumes that it is only a one-dimensional image, all other dimensions would be set to zero (this saves one subtraction)
      Parameters:
      pos - - the new position
    • setPositionDim0

      public void setPositionDim0(long pos)
      Sets the ArrayRandomAccess to a certain position in dimension 0 Careful: it assumes that it is only a one-dimensional image, all other dimensions would be set to zero (this saves one subtraction)
      Parameters:
      pos - - the new position