rasdaman client API  10.6.3
The Array Analytics Engine: Datacubes at Your Fingertips
Classes | Public Member Functions | Protected Attributes | List of all members
r_Miter Class Reference

r_Miter is used for iterating through parts of multidimensional intervals. More...

#include <miter.hh>

Classes

struct  incArrElem
 

Public Member Functions

 r_Miter (const r_Minterval *newAreaIter, const r_Minterval *newAreaTile, r_Bytes newCellSize, const char *newFirstCell)
 The pointers are stored, do not delete the objects as long as the iterator is used! More...
 
 ~r_Miter ()
 
void reset ()
 resets iterator to first cell. More...
 
char * nextCell ()
 returns current cell and sets iterator to next cell. More...
 
bool isDone ()
 returns TRUE if iteration is finished. More...
 

Protected Attributes

const r_MintervalareaIter {NULL}
 area to be iterated through More...
 
const r_MintervalareaTile {NULL}
 area of tile. More...
 
const char * firstCell {NULL}
 offset of first cell in tile. More...
 
incArrElemincArrIter {NULL}
 array with increments More...
 
char * currCell {NULL}
 current cell for iteration; More...
 
r_Bytes cellSize {}
 size of base type. More...
 
int lowCount {}
 counter for position in lowest dimension. More...
 
bool done {false}
 flag set if iteration is finished. More...
 

Detailed Description

r_Miter is used for iterating through parts of multidimensional intervals.

It is given the domain of the object to be iterated through, the size of the base base type, the address of the first cell in the Tile and an Minterval specifying the area to be iterated through.

Going to the next cell is done with nextCell() which returns the address of the next cell. Test for the end is done with isDone(). The iterator can be reset with reset().

Constructor & Destructor Documentation

◆ r_Miter()

r_Miter::r_Miter ( const r_Minterval newAreaIter,
const r_Minterval newAreaTile,
r_Bytes  newCellSize,
const char *  newFirstCell 
)

The pointers are stored, do not delete the objects as long as the iterator is used!

◆ ~r_Miter()

r_Miter::~r_Miter ( )

Member Function Documentation

◆ isDone()

bool r_Miter::isDone ( )
inline

returns TRUE if iteration is finished.

◆ nextCell()

char* r_Miter::nextCell ( )
inline

returns current cell and sets iterator to next cell.

◆ reset()

void r_Miter::reset ( )

resets iterator to first cell.

Member Data Documentation

◆ areaIter

const r_Minterval* r_Miter::areaIter {NULL}
protected

area to be iterated through

◆ areaTile

const r_Minterval* r_Miter::areaTile {NULL}
protected

area of tile.

◆ cellSize

r_Bytes r_Miter::cellSize {}
protected

size of base type.

◆ currCell

char* r_Miter::currCell {NULL}
protected

current cell for iteration;

◆ done

bool r_Miter::done {false}
protected

flag set if iteration is finished.

◆ firstCell

const char* r_Miter::firstCell {NULL}
protected

offset of first cell in tile.

◆ incArrIter

incArrElem* r_Miter::incArrIter {NULL}
protected

array with increments

◆ lowCount

int r_Miter::lowCount {}
protected

counter for position in lowest dimension.


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