MADNESS  0.10.1
Public Member Functions | Private Member Functions | List of all members
madness::LowDimIndexIterator Class Reference

#include <indexit.h>

Inheritance diagram for madness::LowDimIndexIterator:
Inheritance graph
[legend]
Collaboration diagram for madness::LowDimIndexIterator:
Collaboration graph
[legend]

Public Member Functions

template<typename V >
 LowDimIndexIterator (const V &limits)
 Iterates dimension d from 0 to limts[d]-1 inclusive. More...
 
 LowDimIndexIterator (int ndim, const long limits[])
 Iterates dimension d from 0 to limts[d]-1 inclusive. More...
 
 LowDimIndexIterator (int ndim, long top)
 Iterates all dimensions from 0 to top-1 inclusive. More...
 
virtual ~LowDimIndexIterator ()
 
virtual IndexIteratoroperator++ ()
 
- Public Member Functions inherited from madness::IndexIterator
template<typename V >
 IndexIterator (const V &limits)
 Iterates dimension d from 0 to limts[d]-1 inclusive. More...
 
 IndexIterator (int ndim, const long limits[])
 Iterates dimension d from 0 to limts[d]-1 inclusive. More...
 
 IndexIterator (int ndim, long top)
 Iterates all dimensions from 0 to top-1 inclusive. More...
 
virtual ~IndexIterator ()
 
 operator bool () const
 
const std::vector< long > & operator* () const
 
long operator[] (int d) const
 
IndexIteratorreset ()
 

Private Member Functions

 LowDimIndexIterator ()
 Bury the default constructor. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from madness::IndexIterator
static void test ()
 this function should also be deprecated More...
 
- Protected Attributes inherited from madness::IndexIterator
bool finished
 
std::vector< long > i
 Current index. More...
 
std::vector< long > n
 User specified upper limits for each dimension. More...
 

Detailed Description

The inherited IndexIterator for iterating over the low dimensions quickly and the high dimensions slowly (all elements of dimension ndim-1 at index i will be visited before any element of index i+1 in dim. ndim-1).

Constructor & Destructor Documentation

◆ LowDimIndexIterator() [1/4]

madness::LowDimIndexIterator::LowDimIndexIterator ( )
inlineprivate

Bury the default constructor.

◆ LowDimIndexIterator() [2/4]

template<typename V >
madness::LowDimIndexIterator::LowDimIndexIterator ( const V limits)
inline

Iterates dimension d from 0 to limts[d]-1 inclusive.

◆ LowDimIndexIterator() [3/4]

madness::LowDimIndexIterator::LowDimIndexIterator ( int  ndim,
const long  limits[] 
)
inline

Iterates dimension d from 0 to limts[d]-1 inclusive.

◆ LowDimIndexIterator() [4/4]

madness::LowDimIndexIterator::LowDimIndexIterator ( int  ndim,
long  top 
)
inline

Iterates all dimensions from 0 to top-1 inclusive.

◆ ~LowDimIndexIterator()

virtual madness::LowDimIndexIterator::~LowDimIndexIterator ( )
inlinevirtual

Member Function Documentation

◆ operator++()

virtual IndexIterator& madness::LowDimIndexIterator::operator++ ( )
inlinevirtual

increment the lowest dimension first and check for overflows up through dimension 0

Reimplemented from madness::IndexIterator.

References d(), madness::IndexIterator::finished, madness::IndexIterator::i, and madness::IndexIterator::n.


The documentation for this class was generated from the following file: