OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
IndexedField< T, Dim, Brackets, M, C > Class Template Reference

#include <IndexedField.h>

Inheritance diagram for IndexedField< T, Dim, Brackets, M, C >:
Inheritance graph
Collaboration diagram for IndexedField< T, Dim, Brackets, M, C >:
Collaboration graph

Public Types

enum  { Dim_u = Dim }
 
enum  { IsExpr = 0 }
 
typedef T T_t
 
typedef IndexedBareFieldIterator< T, Dimiterator
 
typedef iterator PETE_Expr_t
 
typedef IndexedBareField< T, Dim, Brackets > Wrapped
 

Public Member Functions

IndexedField< T, Dim, Brackets+1, M, C > operator[] (const Index &idx)
 
IndexedField< T, Dim, Brackets+1, M, C > operator[] (int i)
 
IndexedField< T, Dim, Dim, M, C > operator[] (const NDIndex< Dim > &ndidx)
 
void operator= (T x)
 
IndexedField< T, Dim, Brackets, M, C > & operator= (const IndexedField< T, Dim, Brackets, M, C > &x)
 
IndexedField< T, Dim, Brackets, M, C > & operator= (const Index &x)
 
template<class T1 , unsigned Dim1, unsigned Brackets1, class M1 , class C1 >
IndexedField< T, Dim, Brackets, M, C > & operator= (const IndexedField< T1, Dim1, Brackets1, M1, C1 > &x)
 
template<class B >
IndexedField< T, Dim, Brackets, M, C > & operator= (const PETE_Expr< B > &x)
 
Field< T, Dim, M, C > & getField ()
 
const Field< T, Dim, M, C > & getField () const
 
const NDIndex< Dim > & getDomain () const
 
BareField< T, Dim > & getBareField ()
 
const BareField< T, Dim > & getBareField () const
 
PETE_TUTree< OpParens< int >, iteratoroperator() (int arg)
 
PETE_TUTree< OpParens< std::pair< int, int > >, iteratoroperator() (int a1, int a2)
 
get ()
 
iterator begin () const
 
iterator end () const
 
void write (std::ostream &)
 
iterator MakeExpression () const
 
IndexedBareField< T, Dim, Brackets > & PETE_unwrap ()
 
const IndexedBareField< T, Dim, Brackets > & PETE_unwrap () const
 

Protected Member Functions

 IndexedField (Field< T, Dim, M, C > &f, const Index &idx)
 
 IndexedField (Field< T, Dim, M, C > &f, int i)
 
 IndexedField (Field< T, Dim, M, C > &f, const NDIndex< Brackets-1 > &idx, const Index &i)
 
 IndexedField (Field< T, Dim, M, C > &f, const NDIndex< Dim > &ndidx)
 
void getsingle (T &)
 

Protected Attributes

Field< T, Dim, M, C > & F
 
BareField< T, Dim > & A
 
NDIndex< Brackets > Indexes
 

Friends

class IndexedField< T, Dim, Brackets-1, M, C >
 
class Field< T, Dim, M, C >
 

Detailed Description

template<class T, unsigned Dim, unsigned Brackets, class M, class C>
class IndexedField< T, Dim, Brackets, M, C >

Definition at line 26 of file IndexedField.h.

Member Typedef Documentation

◆ iterator

template<class T , unsigned Dim, unsigned Brackets>
typedef IndexedBareFieldIterator<T,Dim> IndexedBareField< T, Dim, Brackets >::iterator
inherited

Definition at line 204 of file IndexedBareField.h.

◆ PETE_Expr_t

template<class T , unsigned Dim, unsigned Brackets>
typedef iterator IndexedBareField< T, Dim, Brackets >::PETE_Expr_t
inherited

Definition at line 298 of file IndexedBareField.h.

◆ T_t

template<class T , unsigned Dim, unsigned Brackets>
typedef T IndexedBareField< T, Dim, Brackets >::T_t
inherited

Definition at line 202 of file IndexedBareField.h.

◆ Wrapped

typedef IndexedBareField< T, Dim, Brackets > PETE_Expr< IndexedBareField< T, Dim, Brackets > >::Wrapped
inherited

Definition at line 79 of file PETE.h.

Member Enumeration Documentation

◆ anonymous enum

template<class T , unsigned Dim, unsigned Brackets>
anonymous enum
inherited
Enumerator
Dim_u 

Definition at line 203 of file IndexedBareField.h.

◆ anonymous enum

template<class T , unsigned Dim, unsigned Brackets>
anonymous enum
inherited
Enumerator
IsExpr 

Definition at line 297 of file IndexedBareField.h.

Constructor & Destructor Documentation

◆ IndexedField() [1/4]

template<class T , unsigned Dim, unsigned Brackets, class M , class C >
IndexedField< T, Dim, Brackets, M, C >::IndexedField ( Field< T, Dim, M, C > &  f,
const Index idx 
)
inlineprotected

Definition at line 98 of file IndexedField.h.

◆ IndexedField() [2/4]

template<class T , unsigned Dim, unsigned Brackets, class M , class C >
IndexedField< T, Dim, Brackets, M, C >::IndexedField ( Field< T, Dim, M, C > &  f,
int  i 
)
inlineprotected

Definition at line 100 of file IndexedField.h.

◆ IndexedField() [3/4]

template<class T , unsigned Dim, unsigned Brackets, class M , class C >
IndexedField< T, Dim, Brackets, M, C >::IndexedField ( Field< T, Dim, M, C > &  f,
const NDIndex< Brackets-1 > &  idx,
const Index i 
)
inlineprotected

Definition at line 102 of file IndexedField.h.

◆ IndexedField() [4/4]

template<class T , unsigned Dim, unsigned Brackets, class M , class C >
IndexedField< T, Dim, Brackets, M, C >::IndexedField ( Field< T, Dim, M, C > &  f,
const NDIndex< Dim > &  ndidx 
)
inlineprotected

Definition at line 105 of file IndexedField.h.

Member Function Documentation

◆ begin()

template<class T , unsigned Dim, unsigned Brackets>
iterator IndexedBareField< T, Dim, Brackets >::begin ( ) const
inlineinherited

◆ end()

template<class T , unsigned Dim, unsigned Brackets>
iterator IndexedBareField< T, Dim, Brackets >::end ( ) const
inlineinherited

Definition at line 291 of file IndexedBareField.h.

◆ get()

template<class T , unsigned Dim, unsigned Brackets>
T IndexedBareField< T, Dim, Brackets >::get
inherited

Definition at line 89 of file IndexedBareField.hpp.

References Attrib::Legacy::Distribution::T.

◆ getBareField() [1/2]

template<class T , unsigned Dim, unsigned Brackets>
BareField< T, Dim > & IndexedBareField< T, Dim, Brackets >::getBareField ( )
inlineinherited

◆ getBareField() [2/2]

template<class T , unsigned Dim, unsigned Brackets>
const BareField< T, Dim > & IndexedBareField< T, Dim, Brackets >::getBareField ( ) const
inlineinherited

Definition at line 264 of file IndexedBareField.h.

References IndexedBareField< T, Dim, Brackets >::A.

◆ getDomain()

template<class T , unsigned Dim, unsigned Brackets>
const NDIndex< Dim > & IndexedBareField< T, Dim, Brackets >::getDomain ( void  ) const
inlineinherited

◆ getField() [1/2]

template<class T , unsigned Dim, unsigned Brackets, class M , class C >
Field< T, Dim, M, C > & IndexedField< T, Dim, Brackets, M, C >::getField ( )
inline

Definition at line 89 of file IndexedField.h.

References IndexedField< T, Dim, Brackets, M, C >::F.

◆ getField() [2/2]

template<class T , unsigned Dim, unsigned Brackets, class M , class C >
const Field< T, Dim, M, C > & IndexedField< T, Dim, Brackets, M, C >::getField ( ) const
inline

Definition at line 90 of file IndexedField.h.

References IndexedField< T, Dim, Brackets, M, C >::F.

◆ getsingle()

template<class T , unsigned Dim, unsigned Brackets>
void IndexedBareField< T, Dim, Brackets >::getsingle ( T &  r)
protectedinherited

Definition at line 78 of file IndexedBareField.hpp.

◆ MakeExpression()

template<class T , unsigned Dim, unsigned Brackets>
iterator IndexedBareField< T, Dim, Brackets >::MakeExpression ( ) const
inlineinherited

Definition at line 299 of file IndexedBareField.h.

References IndexedBareField< T, Dim, Brackets >::begin().

Here is the call graph for this function:

◆ operator()() [1/2]

template<class T , unsigned Dim, unsigned Brackets>
PETE_TUTree< OpParens< std::pair< int, int > >, iterator > IndexedBareField< T, Dim, Brackets >::operator() ( int  a1,
int  a2 
)
inlineinherited

Definition at line 277 of file IndexedBareField.h.

References IndexedBareField< T, Dim, Brackets >::begin(), CTAssert, and Dim.

Here is the call graph for this function:

◆ operator()() [2/2]

template<class T , unsigned Dim, unsigned Brackets>
PETE_TUTree< OpParens< int >, iterator > IndexedBareField< T, Dim, Brackets >::operator() ( int  arg)
inlineinherited

Definition at line 270 of file IndexedBareField.h.

References arg(), IndexedBareField< T, Dim, Brackets >::begin(), CTAssert, and Dim.

Here is the call graph for this function:

◆ operator=() [1/5]

template<class T , unsigned Dim, unsigned Brackets, class M , class C >
IndexedField< T, Dim, Brackets, M, C > & IndexedField< T, Dim, Brackets, M, C >::operator= ( const Index x)
inline

Definition at line 65 of file IndexedField.h.

References assign().

Here is the call graph for this function:

◆ operator=() [2/5]

template<class T , unsigned Dim, unsigned Brackets, class M , class C >
IndexedField< T, Dim, Brackets, M, C > & IndexedField< T, Dim, Brackets, M, C >::operator= ( const IndexedField< T, Dim, Brackets, M, C > &  x)
inline

Definition at line 57 of file IndexedField.h.

References assign(), CTAssert, and Dim.

Here is the call graph for this function:

◆ operator=() [3/5]

template<class T , unsigned Dim, unsigned Brackets, class M , class C >
template<class T1 , unsigned Dim1, unsigned Brackets1, class M1 , class C1 >
IndexedField< T, Dim, Brackets, M, C > & IndexedField< T, Dim, Brackets, M, C >::operator= ( const IndexedField< T1, Dim1, Brackets1, M1, C1 > &  x)
inline

Definition at line 73 of file IndexedField.h.

References assign(), and CTAssert.

Here is the call graph for this function:

◆ operator=() [4/5]

template<class T , unsigned Dim, unsigned Brackets, class M , class C >
template<class B >
IndexedField< T, Dim, Brackets, M, C > & IndexedField< T, Dim, Brackets, M, C >::operator= ( const PETE_Expr< B > &  x)
inline

Definition at line 82 of file IndexedField.h.

References assign().

Here is the call graph for this function:

◆ operator=() [5/5]

template<class T , unsigned Dim, unsigned Brackets, class M , class C >
void IndexedField< T, Dim, Brackets, M, C >::operator= ( x)
inline

Definition at line 51 of file IndexedField.h.

References assign().

Here is the call graph for this function:

◆ operator[]() [1/3]

template<class T , unsigned Dim, unsigned Brackets, class M , class C >
IndexedField< T, Dim, Brackets+1, M, C > IndexedField< T, Dim, Brackets, M, C >::operator[] ( const Index idx)
inline

Definition at line 34 of file IndexedField.h.

References CTAssert, Dim, and IndexedField< T, Dim, Brackets, M, C >::F.

◆ operator[]() [2/3]

template<class T , unsigned Dim, unsigned Brackets, class M , class C >
IndexedField< T, Dim, Dim, M, C > IndexedField< T, Dim, Brackets, M, C >::operator[] ( const NDIndex< Dim > &  ndidx)
inline

Definition at line 45 of file IndexedField.h.

References CTAssert, Dim, and IndexedField< T, Dim, Brackets, M, C >::F.

◆ operator[]() [3/3]

template<class T , unsigned Dim, unsigned Brackets, class M , class C >
IndexedField< T, Dim, Brackets+1, M, C > IndexedField< T, Dim, Brackets, M, C >::operator[] ( int  i)
inline

Definition at line 39 of file IndexedField.h.

References CTAssert, Dim, and IndexedField< T, Dim, Brackets, M, C >::F.

◆ PETE_unwrap() [1/2]

IndexedBareField< T, Dim, Brackets > & PETE_Expr< IndexedBareField< T, Dim, Brackets > >::PETE_unwrap ( )
inlineinherited

Definition at line 81 of file PETE.h.

◆ PETE_unwrap() [2/2]

const IndexedBareField< T, Dim, Brackets > & PETE_Expr< IndexedBareField< T, Dim, Brackets > >::PETE_unwrap ( ) const
inlineinherited

Definition at line 85 of file PETE.h.

◆ write()

template<class T , unsigned Dim, unsigned Brackets>
void IndexedBareField< T, Dim, Brackets >::write ( std::ostream &  out)
inherited

Definition at line 50 of file IndexedBareField.hpp.

References assign(), Dim, and PInsist.

Referenced by operator<<().

Here is the call graph for this function:

Friends And Related Function Documentation

◆ Field< T, Dim, M, C >

template<class T , unsigned Dim, unsigned Brackets, class M , class C >
friend class Field< T, Dim, M, C >
friend

Definition at line 1 of file IndexedField.h.

◆ IndexedField< T, Dim, Brackets-1, M, C >

template<class T , unsigned Dim, unsigned Brackets, class M , class C >
friend class IndexedField< T, Dim, Brackets-1, M, C >
friend

Definition at line 1 of file IndexedField.h.

Member Data Documentation

◆ A

template<class T , unsigned Dim, unsigned Brackets>
BareField<T,Dim>& IndexedBareField< T, Dim, Brackets >::A
protectedinherited

◆ F

template<class T , unsigned Dim, unsigned Brackets, class M , class C >
Field<T,Dim,M,C>& IndexedField< T, Dim, Brackets, M, C >::F
protected

◆ Indexes

template<class T , unsigned Dim, unsigned Brackets>
NDIndex<Brackets> IndexedBareField< T, Dim, Brackets >::Indexes
protectedinherited

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