CNORXZ
Container with Native Operation Routines and Expressions
|
#include <index_base.h>
Protected Attributes | |
SizeT | mPos = 0 |
Basic index interface class template
Static polymorphism: This class defines an interface template; all indices are supposed to be derived from the corresponding template instance
Indices act as iterators over parameter spaces (ranges) and/or the containers (arrays) defined on them
Moreover, indices are used to define operations on the corresponding parameters space
In principle, one distinguishes between lexicographic position (= index position) and the memory position of the corresponding meta data w.r.t. the first element
I | Index type, recurring template argument |
MetaType | data type of the meta data |
Definition at line 47 of file index_base.h.
|
default |
default destructor
|
inline |
set index position so that it's meta data matches input
meta | meta data to be matched |
Definition at line 164 of file index_base.h.
|
inline |
recursive index format
Definition at line 173 of file index_base.h.
|
inline |
max of all single-indices (recursive)
Definition at line 176 of file index_base.h.
|
inline |
index dimension
Definition at line 141 of file index_base.h.
|
inline |
check is format is trivial
Definition at line 196 of file index_base.h.
|
inline |
index ID
Definition at line 105 of file index_base.h.
|
inline |
create a for-loop expression
Xpr | loop internal expression |
F | accumulating function |
xpr | loop internal expression |
f | accumulating function |
Definition at line 192 of file index_base.h.
|
inline |
lexicographic position
Definition at line 94 of file index_base.h.
|
inline |
maximal lexicographic position
Definition at line 100 of file index_base.h.
|
inline |
return meta data at current index position
Definition at line 158 of file index_base.h.
bool CNORXZ::IndexInterface< I, MetaType >::operator!= | ( | const IndexInterface< I, MetaType > & | i | ) | const |
check if indices are not equal
i | Index to compare with |
Definition at line 71 of file index_base.cc.h.
|
inline |
return meta data at current index position
Definition at line 138 of file index_base.h.
|
inline |
return index with lexicographic index position incremented n times
n |
Definition at line 68 of file index_base.h.
|
inline |
increment lexicographic index position
Definition at line 60 of file index_base.h.
|
inline |
increment lexicographic index position n times
n |
Definition at line 78 of file index_base.h.
|
inline |
difference of lexicographic index postions
i | Index to compare with |
Definition at line 88 of file index_base.h.
|
inline |
return index with lexicographic index position decremented n times
n |
Definition at line 73 of file index_base.h.
|
inline |
decrement lexicographic index position
Definition at line 63 of file index_base.h.
|
inline |
decrement lexicographic index position n times
n |
Definition at line 83 of file index_base.h.
bool CNORXZ::IndexInterface< I, MetaType >::operator< | ( | const IndexInterface< I, MetaType > & | i | ) | const |
check if index position is less than that of i
i | Index to compare with |
Definition at line 77 of file index_base.cc.h.
bool CNORXZ::IndexInterface< I, MetaType >::operator<= | ( | const IndexInterface< I, MetaType > & | i | ) | const |
check if index position is less or equal than that of i
i | Index to compare with |
Definition at line 89 of file index_base.cc.h.
bool CNORXZ::IndexInterface< I, MetaType >::operator== | ( | const IndexInterface< I, MetaType > & | i | ) | const |
check if indices are equal
i | Index to compare with |
Definition at line 65 of file index_base.cc.h.
bool CNORXZ::IndexInterface< I, MetaType >::operator> | ( | const IndexInterface< I, MetaType > & | i | ) | const |
check if index position is greater than that of i
i | Index to compare with |
Definition at line 83 of file index_base.cc.h.
bool CNORXZ::IndexInterface< I, MetaType >::operator>= | ( | const IndexInterface< I, MetaType > & | i | ) | const |
check if index position is greater or equal than that of i
i | Index to compare with |
Definition at line 95 of file index_base.cc.h.
|
inline |
maximal memory position
Definition at line 97 of file index_base.h.
SizeT CNORXZ::IndexInterface< I, MetaType >::pos | ( | ) | const |
memory position
Definition at line 101 of file index_base.cc.h.
|
inline |
create partial range starting at this index' position and ending at the position of input index. The end position is included!
end | end index |
Definition at line 170 of file index_base.h.
PtrId CNORXZ::IndexInterface< I, MetaType >::ptrId | ( | ) | const |
Definition at line 107 of file index_base.cc.h.
|
inline |
pointer to the range the index is defined on
Definition at line 144 of file index_base.h.
|
inline |
reformat index, create new index instance
f | new format |
s | new sub-index sizes |
Definition at line 182 of file index_base.h.
|
inline |
return the memory step size this index has w.r.t. to index of given ID
J | static index ID, size type |
id | input index ID |
Definition at line 152 of file index_base.h.
|
inline |
return string formatted meta data at current index position
Definition at line 155 of file index_base.h.
|
inline |
explicit static cast
Definition at line 54 of file index_base.h.
|
inline |
explicit static cast (const)
Definition at line 57 of file index_base.h.
|
protected |
the memory position
Definition at line 199 of file index_base.h.