22#ifndef _nmrMultiIndexCounter_h
23#define _nmrMultiIndexCounter_h
29#ifndef DEFINE_FORMATTED_OUTPUT
30#define DEFINE_FORMATTED_OUTPUT 0
103 register const int s =
GetSize();
104 for (i = 0; i < s; i++) {
132 register const int s =
GetSize();
133 for (i = 0; i < s; i++) {
159 return reinterpret_cast<const unsigned int *
>(
GetIndexCells());
206 register const int s =
GetSize();
208 for (i = 0; i < s; i++) {
225 register const int s =
GetSize();
226 for (i = 0; i < s; i++) {
238 register const int s =
GetSize();
239 for (i = 0; i < s; i++) {
248 register const int s =
GetSize();
249 for (i = 0; i < s; i++) {
void SetHighBound(unsigned int counter, IndexType bound)
Definition nmrMultiIndexCounter.h:120
int IndexType
Definition nmrMultiIndexCounter.h:70
CounterStatus Status
Definition nmrMultiIndexCounter.h:319
const IndexType * GetIndexCells() const
Definition nmrMultiIndexCounter.h:151
IndexType GetHighBound(unsigned int counter) const
Definition nmrMultiIndexCounter.h:177
nmrMultiIndexCounter(unsigned int size)
unsigned long GetNumberOfCombinations() const
bool IsBetweenBounds() const
Definition nmrMultiIndexCounter.h:304
CounterType Index
Definition nmrMultiIndexCounter.h:314
IndexType GetLowBound(unsigned int counter) const
Definition nmrMultiIndexCounter.h:167
void SetIndex(unsigned int cell, IndexType value)
Definition nmrMultiIndexCounter.h:194
CounterStatus GetStatus() const
Definition nmrMultiIndexCounter.h:286
std::vector< IndexType > CounterType
Definition nmrMultiIndexCounter.h:313
const unsigned int * GetIndexCellsAsUnsigned() const
Definition nmrMultiIndexCounter.h:157
const IndexType * GetHighBounds() const
Definition nmrMultiIndexCounter.h:172
const IndexType * GetIncrements() const
Definition nmrMultiIndexCounter.h:182
const IndexType * GetLowBounds() const
Definition nmrMultiIndexCounter.h:162
CounterType LowBounds
Definition nmrMultiIndexCounter.h:315
void SetLowBound(unsigned int counter, IndexType bound)
Definition nmrMultiIndexCounter.h:113
void GoTo(const IndexType where[])
Definition nmrMultiIndexCounter.h:245
IndexType GetIncrement(unsigned int counter) const
Definition nmrMultiIndexCounter.h:187
void SetIncrements(const IndexType increments[])
Definition nmrMultiIndexCounter.h:129
static const IndexType DefaultIncrement
Definition nmrMultiIndexCounter.h:72
IndexType operator[](unsigned int i) const
Definition nmrMultiIndexCounter.h:146
bool IsAboveLowBounds() const
Definition nmrMultiIndexCounter.h:292
unsigned int GetSize() const
Definition nmrMultiIndexCounter.h:88
void UpdateStatus()
Definition nmrMultiIndexCounter.h:203
void SetIncrement(unsigned int counter, IndexType increment)
Definition nmrMultiIndexCounter.h:140
CounterType HighBounds
Definition nmrMultiIndexCounter.h:316
CounterStatus
Definition nmrMultiIndexCounter.h:74
@ COUNTER_UNDEFINED
Definition nmrMultiIndexCounter.h:74
@ COUNTER_IN_BOUNDS
Definition nmrMultiIndexCounter.h:74
@ COUNTER_UNDERFLOW
Definition nmrMultiIndexCounter.h:74
@ COUNTER_OVERFLOW
Definition nmrMultiIndexCounter.h:74
void GoToLowBounds()
Definition nmrMultiIndexCounter.h:222
CounterType Increments
Definition nmrMultiIndexCounter.h:317
void SetBounds(const IndexType lowBounds[], const IndexType highBounds[])
Definition nmrMultiIndexCounter.h:100
bool IndexIsEqualTo(const nmrMultiIndexCounter &other) const
void SetAllIncrements(IndexType increment)
Definition nmrMultiIndexCounter.h:82
bool IsBelowHighBounds() const
Definition nmrMultiIndexCounter.h:298
void GoToHighBounds()
Definition nmrMultiIndexCounter.h:235
#define CISST_EXPORT
Definition cmnExportMacros.h:50
Portability across compilers and operating systems tools.
size_type size(void) const
Definition vctDynamicConstMatrixBase.h:228