![]() |
CNORXZ
Container with Native Operation Routines and Expressions
|
#include <mrange.h>
Public Types | |
| typedef RangeBase | RB |
| typedef MIndex< typename Ranges::IndexType... > | IndexType |
| typedef Tuple< typename Ranges::IndexType::MetaType... > | MetaType |
Public Types inherited from CNORXZ::RangeInterface< MRange< Ranges... > > | |
| typedef RangeBase | RB |
Public Types inherited from CNORXZ::RangeBase | |
| typedef DIndex | IndexType |
Public Member Functions | |
| virtual RangePtr | sub (SizeT num) const override final |
| virtual MArray< RangePtr > | sub () const override final |
| virtual SizeT | size () const override final |
| virtual SizeT | dim () const override final |
| virtual String | stringMeta (SizeT pos) const override final |
| virtual const TypeInfo & | type () const override final |
| virtual const TypeInfo & | metaType () const override final |
| virtual RangePtr | extend (const RangePtr &r) const override final |
| decltype(auto) | space () const |
| const MetaType | get (SizeT pos) const |
| SizeT | getMeta (const MetaType &metaPos) const |
Public Member Functions inherited from CNORXZ::RangeInterface< MRange< Ranges... > > | |
| decltype(auto) | begin () const |
| decltype(auto) | end () const |
| virtual DIndex | index (SizeT pos) const override final |
Public Member Functions inherited from CNORXZ::RangeBase | |
| virtual | ~RangeBase ()=default |
| bool | operator== (const RangeBase &in) const |
| bool | operator!= (const RangeBase &in) const |
| Uuid | id () const |
| DIndex | begin () const |
| DIndex | end () const |
Public Attributes | |
| friend | MRangeFactory< Ranges... > |
Public Attributes inherited from CNORXZ::RangeBase | |
| friend | RangeFactoryBase |
Static Public Attributes | |
| static constexpr SizeT | NR = sizeof...(Ranges) |
Protected Member Functions | |
| MRange ()=default | |
| MRange (const MRange &in)=delete | |
| MRange & | operator= (const MRange &in)=delete |
| MRange (const Tuple< Sptr< Ranges >... > &rs) | |
| virtual Vector< Uuid > | key () const override final |
Protected Member Functions inherited from CNORXZ::RangeInterface< MRange< Ranges... > > | |
| RangeInterface ()=default | |
Protected Member Functions inherited from CNORXZ::RangeBase | |
| RangeBase () | |
Protected Attributes | |
| Tuple< Sptr< Ranges >... > | mRs |
| Arr< RangePtr, NR > | mA |
Protected Attributes inherited from CNORXZ::RangeBase | |
| Uuid | mId = {0,0} |
| Wptr< RangeBase > | mThis |
Multi Range with compile-time fixed number of sub-ranges of compile-time fixed type.
| typedef MIndex<typename Ranges::IndexType...> CNORXZ::MRange< Ranges >::IndexType |
| typedef Tuple<typename Ranges::IndexType::MetaType...> CNORXZ::MRange< Ranges >::MetaType |
| typedef RangeBase CNORXZ::MRange< Ranges >::RB |
|
protecteddefault |
Dafault constructor
|
protecteddelete |
|
protected |
Construct from sub-ranges
| rs | Tuple of pointers to sub-ranges. |
Definition at line 682 of file mrange.cc.h.
|
finaloverridevirtual |
Range dimension. Returns the range's dimension, which is equivalent to the number of sub-ranges. If a sub-range has non-zero dimension this is NOT taken into account!
Implements CNORXZ::RangeBase.
Definition at line 720 of file mrange.cc.h.
|
finaloverridevirtual |
Create extended range. Creates a new range consisting of the meta data spaces of this range and the range r
| r | shared pointer to range used for extension |
Implements CNORXZ::RangeBase.
Definition at line 763 of file mrange.cc.h.
| const MRange< Ranges... >::MetaType CNORXZ::MRange< Ranges >::get | ( | SizeT | pos | ) | const |
| SizeT CNORXZ::MRange< Ranges >::getMeta | ( | const MetaType & | metaPos | ) | const |
Get lexicographic position according to the given meta data value.
| metaPos | Meta data value. |
Definition at line 756 of file mrange.cc.h.
|
finaloverrideprotectedvirtual |
Implements CNORXZ::RangeBase.
Definition at line 776 of file mrange.cc.h.
|
finaloverridevirtual |
The type of the range's meta data
Implements CNORXZ::RangeBase.
Definition at line 738 of file mrange.cc.h.
|
protecteddelete |
|
finaloverridevirtual |
| decltype(auto) CNORXZ::MRange< Ranges >::space | ( | ) | const |
Get sub-ranges.
Definition at line 744 of file mrange.cc.h.
|
finaloverridevirtual |
Meta data in string format at lexicographic position pos.
| pos | size type argument |
Implements CNORXZ::RangeBase.
Definition at line 726 of file mrange.cc.h.
|
finaloverridevirtual |
Access sub-ranges. In the case the range is multi-dimensional this function returns an array of all sub-ranges (empty is one-dimensional)
Reimplemented from CNORXZ::RangeBase.
Definition at line 695 of file mrange.cc.h.
|
finaloverridevirtual |
Access sub-ranges. In the case the range is multi-dimensional the num-th sub-range can be accessed through this function
| num | size type argument |
Reimplemented from CNORXZ::RangeBase.
Definition at line 688 of file mrange.cc.h.
|
finaloverridevirtual |
|
protected |
| friend CNORXZ::MRange< Ranges >::MRangeFactory< Ranges... > |
|
protected |
|
staticconstexpr |