Interface LexicographicalOrder

All Known Implementing Classes:
PredefinedOrder, ShiftOrder

public interface LexicographicalOrder
Version:
4.10

It defines the necessary functionalities needed to define a lexicographical ordering of k-dimensional points.

  • Method Summary

    Modifier and Type
    Method
    Description
    int
    compare(int[] p1, int[] p2)
    It compares two k-dimensional points.
    int
    dimensionAt(int precedenceLevel)
    It provides the dimension corresponding to the given precedence level
    int
    This is equivalent to the call precedenceOf(0).
    int[]
    It returns the ordering of dimensions used when no shift is applied (i.e.
    int
    precedenceOf(int dimension)
    It provides the precedence level of the given dimension.
    void
    It shifts the lexicographical order so that the most significant dimension is set to d.
  • Method Details

    • compare

      int compare(int[] p1, int[] p2)
      It compares two k-dimensional points.
      Parameters:
      p1 - point 1
      p2 - point 2
      Returns:
      comparison result: a negative value if p1 is smaller than p2, 0 if p1 is equal to p2, and a positive value if p1 is larger than p2.
    • precedenceOf

      int precedenceOf(int dimension)
      It provides the precedence level of the given dimension. 0 is the most significant.
      Parameters:
      dimension - the given dimension
      Returns:
      integer value of the precedence level.
    • dimensionAt

      int dimensionAt(int precedenceLevel)
      It provides the dimension corresponding to the given precedence level
      Parameters:
      precedenceLevel - the given precedence level
      Returns:
      an integer value of the dimension.
    • setMostSignificantDimension

      void setMostSignificantDimension(int d)
      It shifts the lexicographical order so that the most significant dimension is set to d.
      Parameters:
      d - the dimension to be considered most significant
    • getMostSignificantDimension

      int getMostSignificantDimension()
      This is equivalent to the call precedenceOf(0).
      Returns:
      the most significant dimension
    • masterOrdering

      int[] masterOrdering()
      It returns the ordering of dimensions used when no shift is applied (i.e. when the most significant dimension is not changed)
      Returns:
      the ordering of dimensions without a shift.