CNORXZ
Container with Native Operation Routines and Expressions
|
#include <prange.h>
Public Types | |
typedef RangeBase | RB |
typedef PIndex< typename RangeT::IndexType > | IndexType |
typedef RangeT::MetaType | MetaType |
Public Types inherited from CNORXZ::RangeInterface< PRange< RangeT > > | |
typedef RangeBase | RB |
Public Types inherited from CNORXZ::RangeBase | |
typedef DIndex | IndexType |
Public Member Functions | |
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 |
Sptr< RangeT > | orig () const |
const Vector< SizeT > & | parts () const |
RangePtr | derive () const |
Public Member Functions inherited from CNORXZ::RangeInterface< PRange< RangeT > > | |
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 |
virtual RangePtr | sub (SizeT num) const |
virtual MArray< RangePtr > | sub () const |
bool | operator== (const RangeBase &in) const |
bool | operator!= (const RangeBase &in) const |
Uuid | id () const |
DIndex | begin () const |
DIndex | end () const |
Public Attributes | |
friend | PRangeFactory< RangeT > |
Public Attributes inherited from CNORXZ::RangeBase | |
friend | RangeFactoryBase |
Additional Inherited Members | |
Protected Member Functions inherited from CNORXZ::RangeInterface< PRange< RangeT > > | |
RangeInterface ()=default | |
Protected Member Functions inherited from CNORXZ::RangeBase | |
RangeBase () | |
Protected Attributes inherited from CNORXZ::RangeBase | |
Uuid | mId = {0,0} |
Wptr< RangeBase > | mThis |
Partial Range. Ranges of these kind represent a part of a given range (full range). Using a mathematical nomenclature, this would be called a "sub-range". (The prefix "sub", as well as the letter "S" are, however, already extensively used in other contexts.)
typedef PIndex<typename RangeT::IndexType> CNORXZ::PRange< RangeT >::IndexType |
typedef RangeT::MetaType CNORXZ::PRange< RangeT >::MetaType |
RangePtr CNORXZ::PRange< RangeT >::derive | ( | ) | const |
Create a new range of the type of the full range but containing only the parts covered by the PRange.
Definition at line 366 of file prange.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 312 of file prange.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 336 of file prange.cc.h.
|
finaloverridevirtual |
The type of the range's meta data
Implements CNORXZ::RangeBase.
Definition at line 330 of file prange.cc.h.
Get the parts.
Definition at line 360 of file prange.cc.h.
|
finaloverridevirtual |
|
finaloverridevirtual |
Meta data in string format at lexicographic position pos.
pos | size type argument |
Implements CNORXZ::RangeBase.
Definition at line 318 of file prange.cc.h.
|
finaloverridevirtual |