#include <DenseIntVectSet.H>
This class is used by IVSIterator to implement its iterator when IntVectSet is stored as a DenseIntVectSet.
Public Member Functions | |
DenseIntVectSetIterator () | |
DenseIntVectSetIterator (const DenseIntVectSet &ivs) | |
void | define (const DenseIntVectSet &ivs) |
const IntVect & | operator() () const |
bool | ok () const |
void | operator++ () |
void | begin () |
void | end () |
Static Public Attributes | |
static DenseIntVectSet | emptyDenseIntVectSet |
Private Member Functions | |
void | thisIntVect (const int a_linearPos) |
void | setStride () |
Private Attributes | |
BitSetTrueIterator | m_iterator |
const DenseIntVectSet * | m_ivsPtr |
IntVect | m_current |
IntVect | m_stride |
int | m_prevLinearPos |
DenseIntVectSetIterator::DenseIntVectSetIterator | ( | ) | [inline] |
After default construction, ok() is false so it looks like an empty bitset but if operator++() is called, it will fail.
DenseIntVectSetIterator::DenseIntVectSetIterator | ( | const DenseIntVectSet & | ivs | ) | [inline] |
Never really used. Normal construction by IntVectSet is default then define().
References m_iterator, ok(), setStride(), and thisIntVect().
void DenseIntVectSetIterator::define | ( | const DenseIntVectSet & | ivs | ) | [inline] |
References BitSetTrueIterator::define(), DenseIntVectSet::m_bits, m_iterator, m_ivsPtr, m_prevLinearPos, ok(), setStride(), and thisIntVect().
bool DenseIntVectSetIterator::ok | ( | ) | const [inline] |
References m_iterator, and BitSetTrueIterator::ok().
Referenced by begin(), define(), DenseIntVectSetIterator(), and IVSIterator::ok().
void DenseIntVectSetIterator::operator++ | ( | ) | [inline] |
References CH_assert, m_iterator, m_ivsPtr, and thisIntVect().
void DenseIntVectSetIterator::begin | ( | ) | [inline] |
References BitSetTrueIterator::begin(), m_iterator, m_prevLinearPos, ok(), and thisIntVect().
Referenced by IVSIterator::begin().
void DenseIntVectSetIterator::end | ( | ) | [inline] |
void DenseIntVectSetIterator::thisIntVect | ( | const int | a_linearPos | ) | [private] |
Referenced by begin(), define(), DenseIntVectSetIterator(), and operator++().
void DenseIntVectSetIterator::setStride | ( | ) | [inline, private] |
References D_TERM6, DenseIntVectSet::m_domain, m_ivsPtr, m_stride, max(), and Box::size().
Referenced by define(), and DenseIntVectSetIterator().
Referenced by begin(), define(), DenseIntVectSetIterator(), end(), ok(), and operator++().
const DenseIntVectSet* DenseIntVectSetIterator::m_ivsPtr [private] |
Referenced by define(), operator++(), and setStride().
IntVect DenseIntVectSetIterator::m_current [private] |
Referenced by operator()().
IntVect DenseIntVectSetIterator::m_stride [private] |
Referenced by setStride().
int DenseIntVectSetIterator::m_prevLinearPos [private] |