![]() |
CNORXZ
Container with Native Operation Routines and Expressions
|
#include <mrange.h>
Public Types | |
| typedef IndexInterface< GMIndex< FormatT, Indices... >, Tuple< typename Indices::MetaType... > > | IB |
| typedef Tuple< typename Indices::MetaType... > | MetaType |
| typedef MRange< typename Indices::RangeType... > | RangeType |
Static Public Attributes | |
| static constexpr SizeT | NI = sizeof...(Indices) |
Additional Inherited Members | |
Protected Attributes inherited from CNORXZ::IndexInterface< GMIndex< FormatT, Indices... >, Tuple< Indices::MetaType... > > | |
| SizeT | mPos |
Multi-index with fixed number of sub-indices of arbitrary type and arbitrary index format.
| FormatT | Index format type. |
| Indices | Sub-index types. |
| typedef IndexInterface<GMIndex<FormatT,Indices...>, Tuple<typename Indices::MetaType...> > CNORXZ::GMIndex< FormatT, Indices >::IB |
|
constexprdefault |
Default constructor.
|
constexprdefault |
Move constructor (default).
|
constexpr |
Copy constructor (no default, copy sub-index instances).
Definition at line 155 of file mrange.cc.h.
|
constexpr |
Construct from index pack.
Definition at line 181 of file mrange.cc.h.
|
constexpr |
Construct from index pack and format.
Definition at line 197 of file mrange.cc.h.
Construct from index pointers.
Definition at line 210 of file mrange.cc.h.
|
constexpr |
Construct from index pointers and format.
Definition at line 226 of file mrange.cc.h.
|
constexpr |
Construct from range.
Definition at line 240 of file mrange.cc.h.
|
constexpr |
Construct from range and format.
Definition at line 256 of file mrange.cc.h.
| GMIndex< FormatT, Indices... > & CNORXZ::GMIndex< FormatT, Indices >::at | ( | const MetaType & | metaPos | ) |
set index position so that it's meta data matches input
| meta | meta data to be matched |
Definition at line 433 of file mrange.cc.h.
| auto CNORXZ::GMIndex< FormatT, Indices >::deepFormat | ( | ) | const |
recursive index format
Definition at line 537 of file mrange.cc.h.
| auto CNORXZ::GMIndex< FormatT, Indices >::deepMax | ( | ) | const |
max of all single-indices (recursive)
Definition at line 544 of file mrange.cc.h.
|
constexpr |
index dimension
Definition at line 392 of file mrange.cc.h.
| const auto & CNORXZ::GMIndex< FormatT, Indices >::format | ( | ) | const |
Get index format.
Definition at line 507 of file mrange.cc.h.
| bool CNORXZ::GMIndex< FormatT, Indices >::formatIsTrivial | ( | ) | const |
check is format is trivial
Definition at line 461 of file mrange.cc.h.
| IndexId< 0 > CNORXZ::GMIndex< FormatT, Indices >::id | ( | ) | const |
index ID
Definition at line 380 of file mrange.cc.h.
|
constexpr |
Definition at line 455 of file mrange.cc.h.
|
constexpr |
create a for-loop expression
| Xpr | loop internal expression |
| F | accumulating function |
| xpr | loop internal expression |
| f | accumulating function |
| CNORXZ::GMIndex< FormatT, Indices >::INDEX_RANDOM_ACCESS_ITERATOR_DEFS | ( | MetaType | ) |
lexicographic position
Definition at line 357 of file mrange.cc.h.
| const auto & CNORXZ::GMIndex< FormatT, Indices >::lexFormat | ( | ) | const |
Get lexicographic index format.
Definition at line 518 of file mrange.cc.h.
maximal lexicographic position
Definition at line 374 of file mrange.cc.h.
| GMIndex< FormatT, Indices... >::MetaType CNORXZ::GMIndex< FormatT, Indices >::meta | ( | ) | const |
return meta data at current index position
Definition at line 426 of file mrange.cc.h.
|
constexpr |
Definition at line 137 of file mrange.cc.h.
|
constexpr |
Definition at line 30 of file mrange.cc.h.
|
constexpr |
Definition at line 78 of file mrange.cc.h.
| GMIndex< FormatT, Indices... > & CNORXZ::GMIndex< FormatT, Indices >::operator() | ( | ) |
Update index position according to the sub-indices.
Definition at line 494 of file mrange.cc.h.
| GMIndex< FormatT, Indices... > & CNORXZ::GMIndex< FormatT, Indices >::operator() | ( | const Sptr< MIndex< Indices... > > & | mi | ) |
Replace sub-index instances and update index position correspondingly.
| new | index instances. |
Definition at line 486 of file mrange.cc.h.
| GMIndex< FormatT, Indices... >::MetaType CNORXZ::GMIndex< FormatT, Indices >::operator* | ( | ) | const |
return meta data at current index position
Definition at line 386 of file mrange.cc.h.
| GMIndex< FormatT, Indices... > CNORXZ::GMIndex< FormatT, Indices >::operator+ | ( | Int | n | ) | const |
return index with lexicographic index position incremented n times
| n |
Definition at line 309 of file mrange.cc.h.
| GMIndex< FormatT, Indices... > & CNORXZ::GMIndex< FormatT, Indices >::operator++ | ( | ) |
increment lexicographic index position
Definition at line 285 of file mrange.cc.h.
| GMIndex< FormatT, Indices... > & CNORXZ::GMIndex< FormatT, Indices >::operator+= | ( | Int | n | ) |
increment lexicographic index position n times
| n |
Definition at line 329 of file mrange.cc.h.
| SizeT CNORXZ::GMIndex< FormatT, Indices >::operator- | ( | const GMIndex< FormatT, Indices > & | i | ) | const |
Definition at line 323 of file mrange.cc.h.
| GMIndex< FormatT, Indices... > CNORXZ::GMIndex< FormatT, Indices >::operator- | ( | Int | n | ) | const |
return index with lexicographic index position decremented n times
| n |
Definition at line 316 of file mrange.cc.h.
| GMIndex< FormatT, Indices... > & CNORXZ::GMIndex< FormatT, Indices >::operator-- | ( | ) |
decrement lexicographic index position
Definition at line 297 of file mrange.cc.h.
| GMIndex< FormatT, Indices... > & CNORXZ::GMIndex< FormatT, Indices >::operator-= | ( | Int | n | ) |
decrement lexicographic index position n times
| n |
Definition at line 343 of file mrange.cc.h.
|
constexpr |
Copy assignment (no default, copy sub-index instances).
Definition at line 168 of file mrange.cc.h.
|
constexprdefault |
Move assignment (default).
| GMIndex< FormatT, Indices... > & CNORXZ::GMIndex< FormatT, Indices >::operator= | ( | SizeT | pos | ) |
Definition at line 269 of file mrange.cc.h.
| const SPack< Indices... > & CNORXZ::GMIndex< FormatT, Indices >::pack | ( | ) | const |
Get index pack.
Definition at line 501 of file mrange.cc.h.
maximal memory position
Definition at line 368 of file mrange.cc.h.
| RangePtr CNORXZ::GMIndex< FormatT, Indices >::prange | ( | const GMIndex< FormatT, Indices... > & | last | ) | const |
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 524 of file mrange.cc.h.
| Sptr< typename GMIndex< FormatT, Indices... >::RangeType > CNORXZ::GMIndex< FormatT, Indices >::range | ( | ) | const |
pointer to the range the index is defined on
Definition at line 398 of file mrange.cc.h.
| GMIndex< FormatT, Indices... > & CNORXZ::GMIndex< FormatT, Indices >::reformat | ( | const Vector< SizeT > & | f, |
| const Vector< SizeT > & | s ) |
reformat index, create new index instance
| f | new format |
| s | new sub-index sizes |
Definition at line 552 of file mrange.cc.h.
| GMIndex< FormatT, Indices... > & CNORXZ::GMIndex< FormatT, Indices >::setFormat | ( | const FormatT & | bs | ) |
Assign new index format.
Definition at line 608 of file mrange.cc.h.
| decltype(auto) CNORXZ::GMIndex< FormatT, Indices >::stepSize | ( | const IndexId< I > & | id | ) | const |
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 405 of file mrange.cc.h.
| String CNORXZ::GMIndex< FormatT, Indices >::stringMeta | ( | ) | const |
return string formatted meta data at current index position
Definition at line 413 of file mrange.cc.h.
| decltype(auto) CNORXZ::GMIndex< FormatT, Indices >::xpr | ( | const Sptr< MIndex< Indices... > > & | _this | ) | const |
Definition at line 443 of file mrange.cc.h.