![]()  | 
  
    OpenMS
    
     
   | 
  
Representation of a coordinate in D-dimensional space. More...
#include <OpenMS/DATASTRUCTURES/DPosition.h>
Public Types | |
| enum | { DIMENSION = D } | 
| Dimensions.  More... | |
| typedef TCoordinateType | CoordinateType | 
| Coordinate type.  More... | |
| typedef CoordinateType * | Iterator | 
| Mutable iterator.  More... | |
| typedef const CoordinateType * | ConstIterator | 
| Non-mutable iterator.  More... | |
STL compatibility type definitions  | |
| typedef CoordinateType | value_type | 
| typedef CoordinateType & | reference | 
| typedef CoordinateType * | pointer | 
| typedef CoordinateType * | iterator | 
| typedef const CoordinateType * | const_iterator | 
Public Member Functions | |
Constructors and Destructor  | |
| DPosition ()=default | |
| Default constructor.  More... | |
| DPosition (CoordinateType x) | |
Constructor that fills all dimensions with the value x.  More... | |
| DPosition (CoordinateType x, CoordinateType y) | |
| Constructor only for DPosition<2> that takes two Coordinates.  More... | |
| DPosition (CoordinateType x, CoordinateType y, CoordinateType z) | |
| Constructor only for DPosition<3> that takes three Coordinates.  More... | |
| DPosition (const DPosition &pos)=default | |
| Copy constructor.  More... | |
| DPosition (DPosition &&rhs) noexcept=default | |
| Move constructor.  More... | |
| DPosition & | operator= (const DPosition &source)=default | 
| Assignment operator.  More... | |
| DPosition & | operator= (DPosition &&source) noexcept=default | 
| Move Assignment operator.  More... | |
| ~DPosition () noexcept=default | |
| Destructor (not-virtual as this will save a lot of space!)  More... | |
| void | swap (DPosition &rhs) noexcept | 
| Swap the two objects.  More... | |
| DPosition & | abs () noexcept | 
| Make all dimension values positive.  More... | |
Static Public Member Functions | |
Static values  | |
| static constexpr DPosition | zero () | 
| all zero  More... | |
| static constexpr DPosition | minPositive () | 
| smallest positive  More... | |
| static constexpr DPosition | minNegative () | 
| smallest negative  More... | |
| static constexpr DPosition | maxPositive () | 
| largest positive  More... | |
Iteration | |
| CoordinateType | coordinate_ [D] {} | 
| ConstIterator | begin () const | 
| Non-mutable begin iterator.  More... | |
| ConstIterator | end () const | 
| Non-mutable end iterator.  More... | |
| Iterator | begin () | 
| Mutable begin iterator.  More... | |
| Iterator | end () | 
| Mutable end iterator.  More... | |
Accessors | |
| CoordinateType | operator[] (Size index) const | 
| Const accessor for the dimensions.  More... | |
| CoordinateType & | operator[] (Size index) | 
| Accessor for the dimensions.  More... | |
| CoordinateType | getX () const | 
| Name accessor for the first dimension. Only for DPosition<2>, for visualization.  More... | |
| CoordinateType | getY () const | 
| Name accessor for the second dimension. Only for DPosition<2>, for visualization.  More... | |
| void | setX (CoordinateType c) | 
| Name mutator for the first dimension. Only for DPosition<2>, for visualization.  More... | |
| void | setY (CoordinateType c) | 
| Name mutator for the second dimension. Only for DPosition<2>, for visualization.  More... | |
| bool | operator== (const DPosition &point) const | 
| Equality operator.  More... | |
| bool | operator!= (const DPosition &point) const | 
| Equality operator.  More... | |
| bool | operator< (const DPosition &point) const | 
| Lexicographical less than operator. Lexicographical comparison from dimension 0 to dimension D-1 is done.  More... | |
| bool | operator<= (const DPosition &point) const | 
| Lexicographical greater less or equal operator.  More... | |
| bool | spatiallyLessEqual (const DPosition &point) const | 
| Spatially (geometrically) less or equal operator. All coordinates must be "<=".  More... | |
| bool | spatiallyGreaterEqual (const DPosition &point) const | 
| Spatially (geometrically) greater or equal operator. All coordinates must be ">=".  More... | |
| bool | operator> (const DPosition &point) const | 
| Lexicographical greater than operator.  More... | |
| bool | operator>= (const DPosition &point) const | 
| Lexicographical greater or equal operator.  More... | |
| DPosition | operator+ (const DPosition &point) const | 
| Addition (a bit inefficient)  More... | |
| DPosition & | operator+= (const DPosition &point) | 
| Addition.  More... | |
| DPosition | operator- (const DPosition &point) const | 
| Subtraction (a bit inefficient)  More... | |
| DPosition & | operator-= (const DPosition &point) | 
| Subtraction.  More... | |
| DPosition | operator- () const | 
| Negation (a bit inefficient)  More... | |
| CoordinateType | operator* (const DPosition &point) const | 
| Inner product.  More... | |
| DPosition & | operator*= (CoordinateType scalar) | 
| Scalar multiplication.  More... | |
| DPosition & | operator/= (CoordinateType scalar) | 
| Scalar division.  More... | |
| void | clear () | 
| Set all dimensions to zero.  More... | |
| constexpr static Size | size () | 
| Returns the number of dimensions.  More... | |
Representation of a coordinate in D-dimensional space.
| typedef const CoordinateType* const_iterator | 
| typedef const CoordinateType* ConstIterator | 
Non-mutable iterator.
| typedef TCoordinateType CoordinateType | 
Coordinate type.
| typedef CoordinateType* Iterator | 
Mutable iterator.
| typedef CoordinateType* iterator | 
| typedef CoordinateType* pointer | 
| typedef CoordinateType& reference | 
| typedef CoordinateType value_type | 
      
  | 
  default | 
Default constructor.
Creates a position with all coordinates zero.
Referenced by DPosition< D, TCoordinateType >::maxPositive(), DPosition< D, TCoordinateType >::minNegative(), DPosition< D, TCoordinateType >::minPositive(), and DPosition< D, TCoordinateType >::zero().
      
  | 
  inline | 
Constructor that fills all dimensions with the value x. 
References DPosition< D, TCoordinateType >::coordinate_.
      
  | 
  inline | 
Constructor only for DPosition<2> that takes two Coordinates.
References DPosition< D, TCoordinateType >::coordinate_.
      
  | 
  inline | 
Constructor only for DPosition<3> that takes three Coordinates.
References DPosition< D, TCoordinateType >::coordinate_.
      
  | 
  defaultnoexcept | 
Destructor (not-virtual as this will save a lot of space!)
      
  | 
  inlinenoexcept | 
Make all dimension values positive.
References DPosition< D, TCoordinateType >::coordinate_.
Referenced by Annotation1DPeakItem< DataPoint >::draw().
      
  | 
  inline | 
Mutable begin iterator.
References DPosition< D, TCoordinateType >::coordinate_.
      
  | 
  inline | 
Non-mutable begin iterator.
References DPosition< D, TCoordinateType >::coordinate_.
Referenced by HashGrid< Cluster >::cellindexAtClustercenter_(), OpenMS::hash_value(), and HashGrid< Cluster >::updateGridDimension_().
      
  | 
  inline | 
Set all dimensions to zero.
References DPosition< D, TCoordinateType >::coordinate_.
      
  | 
  inline | 
Mutable end iterator.
References DPosition< D, TCoordinateType >::coordinate_.
      
  | 
  inline | 
Non-mutable end iterator.
References DPosition< D, TCoordinateType >::coordinate_.
Referenced by HashGrid< Cluster >::cellindexAtClustercenter_(), OpenMS::hash_value(), and HashGrid< Cluster >::updateGridDimension_().
      
  | 
  inline | 
Name accessor for the first dimension. Only for DPosition<2>, for visualization.
References DPosition< D, TCoordinateType >::coordinate_, and OPENMS_PRECONDITION.
Referenced by GridBasedClustering< Metric >::cluster(), Plot2DCanvas::dataToWidget_(), and Plot1DCanvas::dataToWidget_().
      
  | 
  inline | 
Name accessor for the second dimension. Only for DPosition<2>, for visualization.
References DPosition< D, TCoordinateType >::coordinate_, and OPENMS_PRECONDITION.
Referenced by GridBasedClustering< Metric >::cluster(), Plot2DCanvas::dataToWidget_(), and Plot1DCanvas::dataToWidget_().
      
  | 
  inlinestaticconstexpr | 
largest positive
References DPosition< D, TCoordinateType >::DPosition().
      
  | 
  inlinestaticconstexpr | 
smallest negative
References DPosition< D, TCoordinateType >::DPosition().
      
  | 
  inlinestaticconstexpr | 
smallest positive
References DPosition< D, TCoordinateType >::DPosition().
      
  | 
  inline | 
Equality operator.
References DPosition< D, TCoordinateType >::operator==().
      
  | 
  inline | 
Inner product.
References DPosition< D, TCoordinateType >::coordinate_.
      
  | 
  inline | 
Scalar multiplication.
References DPosition< D, TCoordinateType >::coordinate_.
Addition (a bit inefficient)
References DPosition< D, TCoordinateType >::coordinate_.
Addition.
References DPosition< D, TCoordinateType >::coordinate_.
      
  | 
  inline | 
Negation (a bit inefficient)
References DPosition< D, TCoordinateType >::coordinate_.
Subtraction (a bit inefficient)
References DPosition< D, TCoordinateType >::coordinate_.
Subtraction.
References DPosition< D, TCoordinateType >::coordinate_.
      
  | 
  inline | 
Scalar division.
References DPosition< D, TCoordinateType >::coordinate_.
      
  | 
  inline | 
Lexicographical less than operator. Lexicographical comparison from dimension 0 to dimension D-1 is done.
References DPosition< D, TCoordinateType >::coordinate_.
Referenced by DPosition< D, TCoordinateType >::operator>=().
      
  | 
  inline | 
Lexicographical greater less or equal operator.
References DPosition< D, TCoordinateType >::coordinate_.
Referenced by DPosition< D, TCoordinateType >::operator>().
Move Assignment operator.
      
  | 
  inline | 
Equality operator.
References DPosition< D, TCoordinateType >::coordinate_.
Referenced by DPosition< D, TCoordinateType >::operator!=().
      
  | 
  inline | 
Lexicographical greater than operator.
References DPosition< D, TCoordinateType >::operator<=().
      
  | 
  inline | 
Lexicographical greater or equal operator.
References DPosition< D, TCoordinateType >::operator<().
      
  | 
  inline | 
Accessor for the dimensions.
References DPosition< D, TCoordinateType >::coordinate_, and OPENMS_PRECONDITION.
      
  | 
  inline | 
Const accessor for the dimensions.
References DPosition< D, TCoordinateType >::coordinate_, and OPENMS_PRECONDITION.
      
  | 
  inline | 
Name mutator for the first dimension. Only for DPosition<2>, for visualization.
References OpenMS::Constants::c, DPosition< D, TCoordinateType >::coordinate_, and OPENMS_PRECONDITION.
      
  | 
  inline | 
Name mutator for the second dimension. Only for DPosition<2>, for visualization.
References OpenMS::Constants::c, DPosition< D, TCoordinateType >::coordinate_, and OPENMS_PRECONDITION.
      
  | 
  inlinestaticconstexpr | 
Returns the number of dimensions.
      
  | 
  inline | 
Spatially (geometrically) greater or equal operator. All coordinates must be ">=".
References DPosition< D, TCoordinateType >::coordinate_.
      
  | 
  inline | 
Spatially (geometrically) less or equal operator. All coordinates must be "<=".
References DPosition< D, TCoordinateType >::coordinate_.
      
  | 
  inlinenoexcept | 
Swap the two objects.
References DPosition< D, TCoordinateType >::coordinate_.
      
  | 
  inlinestaticconstexpr | 
all zero
References DPosition< D, TCoordinateType >::DPosition().
      
  | 
  protected | 
Referenced by DPosition< D, TCoordinateType >::abs(), DPosition< D, TCoordinateType >::begin(), DPosition< D, TCoordinateType >::clear(), DPosition< D, TCoordinateType >::DPosition(), DPosition< D, TCoordinateType >::end(), DPosition< D, TCoordinateType >::getX(), DPosition< D, TCoordinateType >::getY(), DPosition< D, TCoordinateType >::operator*(), DPosition< D, TCoordinateType >::operator*=(), DPosition< D, TCoordinateType >::operator+(), DPosition< D, TCoordinateType >::operator+=(), DPosition< D, TCoordinateType >::operator-(), DPosition< D, TCoordinateType >::operator-=(), DPosition< D, TCoordinateType >::operator/=(), DPosition< D, TCoordinateType >::operator<(), DPosition< D, TCoordinateType >::operator<=(), DPosition< D, TCoordinateType >::operator==(), DPosition< D, TCoordinateType >::operator[](), DPosition< D, TCoordinateType >::setX(), DPosition< D, TCoordinateType >::setY(), DPosition< D, TCoordinateType >::spatiallyGreaterEqual(), DPosition< D, TCoordinateType >::spatiallyLessEqual(), and DPosition< D, TCoordinateType >::swap().