CNORXZ
Container with Native Operation Routines and Expressions
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | Protected Member Functions | List of all members
CNORXZ::MArray< T > Class Template Reference

#include <marray.h>

Inheritance diagram for CNORXZ::MArray< T >:
CNORXZ::ArrayBase< T > CNORXZ::CArrayBase< T >

Public Types

typedef CArrayBase< TAB
 
typedef AB::const_iterator const_iterator
 
- Public Types inherited from CNORXZ::ArrayBase< T >
typedef CArrayBase< TCAB
 
typedef CAB::const_iterator const_iterator
 
typedef BIndex< Titerator
 
- Public Types inherited from CNORXZ::CArrayBase< T >
typedef AIndex< Tconst_iterator
 

Public Member Functions

 DEFAULT_MEMBERS (MArray)
 
 MArray (const RangePtr &range)
 
 MArray (const RangePtr &range, const Vector< T > &vec)
 
 MArray (const RangePtr &range, Vector< T > &&vec)
 
MArrayinit (const RangePtr &range)
 
MArrayextend (const RangePtr &range)
 
virtual const Tdata () const override
 
virtual Tdata () override
 
virtual const_iterator cbegin () const override
 
virtual const_iterator cend () const override
 
virtual bool isView () const override
 
- Public Member Functions inherited from CNORXZ::ArrayBase< T >
 DEFAULT_MEMBERS (ArrayBase)
 
 ArrayBase (const RangePtr &range)
 
template<typename I , typename M >
Toperator[] (const IndexInterface< I, M > &i)
 
template<typename I , typename M >
Tat (const IndexInterface< I, M > &i)
 
template<class... Indices>
Toperator[] (const SPack< Indices... > &pack)
 
template<class... Indices>
Tat (const SPack< Indices... > &pack)
 
Toperator[] (const DPack &pack)
 
Tat (const DPack &pack)
 
template<class Index >
OpRoot< T, Index > operator() (const Sptr< Index > &i)
 
template<class... Indices>
decltype(autooperator() (const SPack< Indices... > &pack)
 
decltype(autooperator() (const DPack &pack)
 
template<typename I , typename M >
Sptr< ArrayBase< T > > sl (const IndexInterface< I, M > &begin, const IndexInterface< I, M > &end)
 
virtual iterator begin ()
 
virtual iterator end ()
 
template<typename I , typename M >
const Tat (const IndexInterface< I, M > &i) const
 
template<class... Indices>
const Tat (const SPack< Indices... > &pack) const
 
const Tat (const DPack &pack) const
 
virtual const_iterator begin () const
 
virtual const_iterator end () const
 
template<typename I , typename M >
Sptr< CArrayBase< T > > sl (const IndexInterface< I, M > &begin, const IndexInterface< I, M > &end) const
 
- Public Member Functions inherited from CNORXZ::CArrayBase< T >
 DEFAULT_MEMBERS (CArrayBase)
 
 CArrayBase (const RangePtr &range)
 
virtual ~CArrayBase ()=default
 
template<typename I , typename M >
const Toperator[] (const IndexInterface< I, M > &i) const
 
template<typename I , typename M >
const Tat (const IndexInterface< I, M > &i) const
 
template<class... Indices>
const Toperator[] (const SPack< Indices... > &pack) const
 
template<class... Indices>
const Tat (const SPack< Indices... > &pack) const
 
const Toperator[] (const DPack &pack) const
 
const Tat (const DPack &pack) const
 
template<typename I , typename M >
Sptr< CArrayBase< T > > sl (const IndexInterface< I, M > &begin, const IndexInterface< I, M > &end) const
 
template<class Index >
COpRoot< T, Index > operator() (const Sptr< Index > &i) const
 
template<class... Indices>
decltype(autooperator() (const SPack< Indices... > &pack) const
 
decltype(autooperator() (const DPack &pack) const
 
virtual SizeT size () const
 
virtual RangePtr range () const
 

Public Attributes

 SERIALIZATION_FUNCTIONS
 

Protected Member Functions

virtual bool formatIsTrivial () const override final
 
- Protected Member Functions inherited from CNORXZ::ArrayBase< T >
template<class Acc >
iterator itLex (const Acc &acc)
 
template<class Acc >
iterator itLexSave (const Acc &acc)
 
- Protected Member Functions inherited from CNORXZ::CArrayBase< T >
template<class Acc >
const_iterator itLex (const Acc &acc) const
 
template<class Acc >
const_iterator itLexSave (const Acc &acc) const
 
template<class Acc >
void checkFormatCompatibility (const Acc &acc) const
 

Additional Inherited Members

- Protected Attributes inherited from CNORXZ::CArrayBase< T >
RangePtr mRange
 

Detailed Description

template<typename T>
class CNORXZ::MArray< T >

Generic multi-dimensional array class This class owns the data that can be accessed through it

Definition at line 25 of file marray.h.

Member Typedef Documentation

◆ AB

Definition at line 28 of file marray.h.

◆ const_iterator

template<typename T >
typedef AB::const_iterator CNORXZ::MArray< T >::const_iterator

Definition at line 29 of file marray.h.

Constructor & Destructor Documentation

◆ MArray() [1/3]

template<typename T >
CNORXZ::MArray< T >::MArray ( const RangePtr & range)

Definition at line 24 of file marray.cc.h.

◆ MArray() [2/3]

template<typename T >
CNORXZ::MArray< T >::MArray ( const RangePtr & range,
const Vector< T > & vec )

Definition at line 29 of file marray.cc.h.

◆ MArray() [3/3]

template<typename T >
CNORXZ::MArray< T >::MArray ( const RangePtr & range,
Vector< T > && vec )

Definition at line 34 of file marray.cc.h.

Member Function Documentation

◆ cbegin()

template<typename T >
MArray< T >::const_iterator CNORXZ::MArray< T >::cbegin ( ) const
overridevirtual

get index pointing to first position

Reimplemented from CNORXZ::ArrayBase< T >.

Definition at line 77 of file marray.cc.h.

◆ cend()

template<typename T >
MArray< T >::const_iterator CNORXZ::MArray< T >::cend ( ) const
overridevirtual

get index pointing to position after last position

Reimplemented from CNORXZ::ArrayBase< T >.

Definition at line 83 of file marray.cc.h.

◆ data() [1/2]

template<typename T >
const T * CNORXZ::MArray< T >::data ( ) const
overridevirtual

get pointer to container data

Reimplemented from CNORXZ::ArrayBase< T >.

Definition at line 65 of file marray.cc.h.

◆ data() [2/2]

template<typename T >
T * CNORXZ::MArray< T >::data ( )
overridevirtual

get pointer to container data read/write access

Implements CNORXZ::ArrayBase< T >.

Definition at line 71 of file marray.cc.h.

◆ DEFAULT_MEMBERS()

template<typename T >
CNORXZ::MArray< T >::DEFAULT_MEMBERS ( MArray< T > )

◆ extend()

template<typename T >
MArray< T > & CNORXZ::MArray< T >::extend ( const RangePtr & range)

Definition at line 47 of file marray.cc.h.

◆ formatIsTrivial()

template<typename T >
bool CNORXZ::MArray< T >::formatIsTrivial ( ) const
finaloverrideprotectedvirtual

check if format is trivial

Returns
true if container is data owning array, else return result of the corresponding container index

Implements CNORXZ::CArrayBase< T >.

Definition at line 99 of file marray.cc.h.

◆ init()

template<typename T >
MArray< T > & CNORXZ::MArray< T >::init ( const RangePtr & range)

Definition at line 39 of file marray.cc.h.

◆ isView()

template<typename T >
bool CNORXZ::MArray< T >::isView ( ) const
overridevirtual

check if container views the data, i.e. it does not own it

Implements CNORXZ::CArrayBase< T >.

Definition at line 89 of file marray.cc.h.

Member Data Documentation

◆ SERIALIZATION_FUNCTIONS

template<typename T >
CNORXZ::MArray< T >::SERIALIZATION_FUNCTIONS

Definition at line 47 of file marray.h.


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