1 #ifndef SZA_UTIL_COORD_H
2 #define SZA_UTIL_COORD_H
30 Coord(
unsigned ind1,
unsigned ind2);
31 Coord(
unsigned ind1,
unsigned ind2,
unsigned ind3);
51 void reset(
unsigned nAxis=1);
61 unsigned int getIndex(
unsigned iAxis);
66 bool isSet(
unsigned iAxis);
96 std::vector<unsigned int> ind_;
97 std::vector<bool> initialized_;
106 #endif // End #ifndef SZA_UTIL_COORD_H
virtual ~Coord()
Destructor.
unsigned nAxis()
Return the number of axes in this coordinate nTuplet.
void reset(unsigned nAxis=1)
Reset the coordinate ntuplet.
friend std::ostream & operator<<(std::ostream &os, Coord &coord)
An operator for printing this object.
void operator=(Coord &coord)
Assignment operators.
unsigned int getIndex(unsigned iAxis)
Return the coordinate index for axis iAxis.
bool isSet(unsigned iAxis)
Return true if a coordinate is set for this axis.
void setIndex(unsigned nAxis, unsigned index)
Set the coordinate index of the requested axis.
A class for specifying a coordinate in a multi-dimensional space.
Coord & operator+=(unsigned incr)
Add an increment to this object.
bool isValid()
Check if this coordinate contains valid data.
void reserveIndex(unsigned nAxis)
Reserve (but don't set) an index slot for the requested axis.
bool operator==(Coord &coord)
Add an increment to this object.