An iterator over all possible combinations of indices (a number of integers) between certain bounds. More...
#include <MultiIndexIterator.h>
Inheritance diagram for cpputils::MultiIndexIterator< RANK >:
Collaboration diagram for cpputils::MultiIndexIterator< RANK >:Public Types | |
| typedef Base::value_type | MultiIndex |
| typedef MultiIndex::T_numtype | SingleIndex |
Public Member Functions | |
| MultiIndexIterator & | operator= (const MultiIndexIterator &other) |
Constructors | |
| MultiIndexIterator (const MultiIndex &lbound, const MultiIndex &ubound, mii::Begin) | |
| Initialization to the beginning of the sequence. More... | |
| MultiIndexIterator (const MultiIndex &lbound, const MultiIndex &ubound, mii::End) | |
| ” to the end of the sequence (which is in fact beyond the end by one) | |
| MultiIndexIterator (const MultiIndex &ubound, mii::Begin b) | |
| MultiIndexIterator (const MultiIndex &ubound, mii::End e) | |
InputIterator operations | |
| MultiIndexIterator & | operator++ () |
| const MultiIndex & | operator* () const |
| MultiIndex & | operator* () |
Convenience | |
| const MultiIndexIterator | getBegin () const |
| const MultiIndexIterator | getEnd () const |
| MultiIndexIterator & | setToBegin () |
| MultiIndexIterator & | setToEnd () |
Friends | |
| bool | operator== (const MultiIndexIterator &i1, const MultiIndexIterator &i2) |
| Comparison only for the actual values referred to. The user has to take care that the bounds are actually the same! | |
An iterator over all possible combinations of indices (a number of integers) between certain bounds.
Models an input iterator.
| RANK | the number of indices |
Definition at line 42 of file MultiIndexIterator.h.
|
inline |
Initialization to the beginning of the sequence.
| lbound | tiny vector comprising the sequence of lower bounds |
| ubound | tiny vector comprising the sequence of upper bounds (inclusive!) |
Definition at line 56 of file MultiIndexIterator.h.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.lbound is all-zero
| ubound | tiny vector comprising the sequence of upper bounds (inclusive!) |
Definition at line 66 of file MultiIndexIterator.h.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.lbound is all-zero
Definition at line 72 of file MultiIndexIterator.h.