OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
SubFieldIter< T, Dim, SOffset< Dim > > Class Template Reference

#include <SubFieldIter.h>

Inheritance diagram for SubFieldIter< T, Dim, SOffset< Dim > >:
Collaboration diagram for SubFieldIter< T, Dim, SOffset< Dim > >:

Public Types

enum  { IsExpr = 1 }
typedef SOffset< DimSubset_t
typedef SubFieldIter< T, Dim, Subset_tSFI
typedef SFI PETE_Expr_t
typedef T PETE_Return_t
enum  
typedef SubFieldIter< T, Dim, SOffset< Dim > > Wrapped

Public Member Functions

 SubFieldIter (const BareField< T, Dim > &df, const typename BareField< T, Dim >::iterator_if &ldf, const SOffset< Dim > &s, unsigned int B)
 SubFieldIter ()
 ~SubFieldIter ()
void setLFieldData (LField< T, Dim > *p, NDIndex< Dim > &n)
void initialize ()
bool findIntersection (const NDIndex< Dim > &loc, NDIndex< Dim > &inter)
bool plugBase (const NDIndex< Dim > &)
void rewind (unsigned)
void step (unsigned int)
void step (unsigned int, int)
int size (unsigned int d) const
T & operator* ()
T & offset ()
T & offset (int)
T & unit_offset (int)
int Stride (int)
bool CanCompress () const
void Compress (T)
bool TryCompress ()
bool TryCompress (T)
bool IsCompressed () const
bool DomainCompressed () const
PETE_Expr_t MakeExpression () const
BareField< T, Dim > & getBareField ()
BareField< T, Dim >::iterator_if getLFieldIter () const
SOffset< Dim > & getDomain ()
bool checkBrackets () const
unsigned int getBrackets () const
BareField< T, Dim >::iterator_if nextLField ()
LField< T, Dim > * getLField ()
void setLField (LField< T, Dim > *p)
void FillGCIfNecessary () const
SubFieldIter< T, Dim, SOffset< Dim > > & PETE_unwrap ()

Static Public Member Functions

static int getSubsetType ()
static bool matchType (int)
static void makeNDIndex (const Subset_t &s, NDIndex< Dim > &i)

Private Attributes

T * SingleValPtr
SingleValStore
NDIndex< DimComponent
BareField< T, Dim > * MyBareField
SOffset< Dim > * MyDomain
LField< T, Dim > * LFPtr
BareField< T, Dim >::iterator_if CurrentLField
unsigned int MyBrackets

Detailed Description

template<class T, unsigned int Dim>
class SubFieldIter< T, Dim, SOffset< Dim > >

Definition at line 527 of file SubFieldIter.h.

Member Typedef Documentation

◆ PETE_Expr_t

template<class T, unsigned int Dim>
typedef SFI SubFieldIter< T, Dim, SOffset< Dim > >::PETE_Expr_t

Definition at line 633 of file SubFieldIter.h.

◆ PETE_Return_t

template<class T, unsigned int Dim>
typedef T SubFieldIter< T, Dim, SOffset< Dim > >::PETE_Return_t

Definition at line 634 of file SubFieldIter.h.

◆ SFI

template<class T, unsigned int Dim>
typedef SubFieldIter<T, Dim, Subset_t> SubFieldIter< T, Dim, SOffset< Dim > >::SFI

Definition at line 535 of file SubFieldIter.h.

◆ Subset_t

template<class T, unsigned int Dim>
typedef SOffset<Dim> SubFieldIter< T, Dim, SOffset< Dim > >::Subset_t

Definition at line 534 of file SubFieldIter.h.

◆ Wrapped

typedef SubFieldIter< T, Dim, SOffset< Dim > > PETE_Expr< SubFieldIter< T, Dim, SOffset< Dim > > >::Wrapped
inherited

Definition at line 79 of file PETE.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
inherited

Definition at line 127 of file SubFieldIter.h.

◆ anonymous enum

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

Definition at line 632 of file SubFieldIter.h.

Constructor & Destructor Documentation

◆ SubFieldIter() [1/2]

template<class T, unsigned int Dim>
SubFieldIter< T, Dim, SOffset< Dim > >::SubFieldIter ( const BareField< T, Dim > & df,
const typename BareField< T, Dim >::iterator_if & ldf,
const SOffset< Dim > & s,
unsigned int B )
inline

Definition at line 538 of file SubFieldIter.h.

References Dim, SingleValPtr, and SubFieldIterBase< T, Dim, SOffset< Dim >, 1U >::SubFieldIterBase().

Here is the call graph for this function:

◆ SubFieldIter() [2/2]

template<class T, unsigned int Dim>
SubFieldIter< T, Dim, SOffset< Dim > >::SubFieldIter ( )
inline

Definition at line 544 of file SubFieldIter.h.

◆ ~SubFieldIter()

template<class T, unsigned int Dim>
SubFieldIter< T, Dim, SOffset< Dim > >::~SubFieldIter ( )
inline

Definition at line 547 of file SubFieldIter.h.

Member Function Documentation

◆ CanCompress()

template<class T, unsigned int Dim>
bool SubFieldIter< T, Dim, SOffset< Dim > >::CanCompress ( ) const
inline

Definition at line 621 of file SubFieldIter.h.

◆ checkBrackets()

bool SubFieldIterBase< T, Dim, SOffset< Dim >, ExprDim >::checkBrackets ( ) const
inlineinherited

Definition at line 166 of file SubFieldIter.h.

◆ Compress()

template<class T, unsigned int Dim>
void SubFieldIter< T, Dim, SOffset< Dim > >::Compress ( T )
inline

Definition at line 622 of file SubFieldIter.h.

◆ DomainCompressed()

template<class T, unsigned int Dim>
bool SubFieldIter< T, Dim, SOffset< Dim > >::DomainCompressed ( ) const
inline

Definition at line 626 of file SubFieldIter.h.

◆ FillGCIfNecessary()

void SubFieldIterBase< T, Dim, SOffset< Dim >, ExprDim >::FillGCIfNecessary ( ) const
inlineinherited

Definition at line 219 of file SubFieldIter.h.

◆ findIntersection()

template<class T, unsigned int Dim>
bool SubFieldIter< T, Dim, SOffset< Dim > >::findIntersection ( const NDIndex< Dim > & loc,
NDIndex< Dim > & inter )
inline

Definition at line 585 of file SubFieldIter.h.

References Component, and NDIndex< Dim >::empty().

Here is the call graph for this function:

◆ getBareField()

BareField< T, Dim > & SubFieldIterBase< T, Dim, SOffset< Dim >, ExprDim >::getBareField ( )
inlineinherited

Definition at line 153 of file SubFieldIter.h.

Referenced by SubFieldIter< T, Dim, SOffset< Dim > >::initialize().

◆ getBrackets()

unsigned int SubFieldIterBase< T, Dim, SOffset< Dim >, ExprDim >::getBrackets ( ) const
inlineinherited

Definition at line 167 of file SubFieldIter.h.

◆ getDomain()

SOffset< Dim > & SubFieldIterBase< T, Dim, SOffset< Dim >, ExprDim >::getDomain ( )
inlineinherited

◆ getLField()

LField< T, Dim > * SubFieldIterBase< T, Dim, SOffset< Dim >, ExprDim >::getLField ( )
inlineinherited

Definition at line 185 of file SubFieldIter.h.

◆ getLFieldIter()

BareField< T, Dim >::iterator_if SubFieldIterBase< T, Dim, SOffset< Dim >, ExprDim >::getLFieldIter ( ) const
inlineinherited

Definition at line 157 of file SubFieldIter.h.

◆ getSubsetType()

template<class T, unsigned int Dim>
int SubFieldIter< T, Dim, SOffset< Dim > >::getSubsetType ( )
inlinestatic

Definition at line 570 of file SubFieldIter.h.

References SOffsetSubsetType.

◆ initialize()

template<class T, unsigned int Dim>
void SubFieldIter< T, Dim, SOffset< Dim > >::initialize ( )
inline

Definition at line 574 of file SubFieldIter.h.

References Component, SubFieldIterBase< T, Dim, SOffset< Dim >, 1U >::getBareField(), SubFieldIterBase< T, Dim, SOffset< Dim >, 1U >::getDomain(), makeNDIndex(), and SingleValStore.

Here is the call graph for this function:

◆ IsCompressed()

template<class T, unsigned int Dim>
bool SubFieldIter< T, Dim, SOffset< Dim > >::IsCompressed ( ) const
inline

Definition at line 625 of file SubFieldIter.h.

◆ MakeExpression()

template<class T, unsigned int Dim>
PETE_Expr_t SubFieldIter< T, Dim, SOffset< Dim > >::MakeExpression ( ) const
inline

Definition at line 635 of file SubFieldIter.h.

◆ makeNDIndex()

template<class T, unsigned int Dim>
void SubFieldIter< T, Dim, SOffset< Dim > >::makeNDIndex ( const Subset_t & s,
NDIndex< Dim > & i )
inlinestatic

Definition at line 591 of file SubFieldIter.h.

References Dim.

Referenced by initialize().

◆ matchType()

template<class T, unsigned int Dim>
bool SubFieldIter< T, Dim, SOffset< Dim > >::matchType ( int )
inlinestatic

Definition at line 571 of file SubFieldIter.h.

◆ nextLField()

BareField< T, Dim >::iterator_if SubFieldIterBase< T, Dim, SOffset< Dim >, ExprDim >::nextLField ( )
inlineinherited

Definition at line 170 of file SubFieldIter.h.

◆ offset() [1/2]

template<class T, unsigned int Dim>
T & SubFieldIter< T, Dim, SOffset< Dim > >::offset ( )
inline

Definition at line 614 of file SubFieldIter.h.

References offset().

Referenced by offset(), operator*(), setLFieldData(), and unit_offset().

Here is the call graph for this function:

◆ offset() [2/2]

template<class T, unsigned int Dim>
T & SubFieldIter< T, Dim, SOffset< Dim > >::offset ( int )
inline

Definition at line 615 of file SubFieldIter.h.

References SingleValPtr, and SingleValStore.

◆ operator*()

template<class T, unsigned int Dim>
T & SubFieldIter< T, Dim, SOffset< Dim > >::operator* ( )
inline

Definition at line 613 of file SubFieldIter.h.

References offset().

Here is the call graph for this function:

◆ PETE_unwrap()

SubFieldIter< T, Dim, SOffset< Dim > > & PETE_Expr< SubFieldIter< T, Dim, SOffset< Dim > > >::PETE_unwrap ( )
inlineinherited

Definition at line 81 of file PETE.h.

◆ plugBase()

template<class T, unsigned int Dim>
bool SubFieldIter< T, Dim, SOffset< Dim > >::plugBase ( const NDIndex< Dim > & )
inline

Definition at line 598 of file SubFieldIter.h.

◆ rewind()

template<class T, unsigned int Dim>
void SubFieldIter< T, Dim, SOffset< Dim > >::rewind ( unsigned )
inline

Definition at line 601 of file SubFieldIter.h.

◆ setLField()

void SubFieldIterBase< T, Dim, SOffset< Dim >, ExprDim >::setLField ( LField< T, Dim > * p)
inlineinherited

Definition at line 189 of file SubFieldIter.h.

◆ setLFieldData()

template<class T, unsigned int Dim>
void SubFieldIter< T, Dim, SOffset< Dim > >::setLFieldData ( LField< T, Dim > * p,
NDIndex< Dim > & n )
inline

Definition at line 554 of file SubFieldIter.h.

References LField< T, Dim >::begin(), SOffset< Dim >::begin(), Component, Dim, SubFieldIterBase< T, Dim, SOffset< Dim >, 1U >::getDomain(), LField< T, Dim >::getOwned(), offset(), SubFieldIterBase< T, Dim, S, ExprDim >::setLFieldData(), and SingleValPtr.

Here is the call graph for this function:

◆ size()

template<class T, unsigned int Dim>
int SubFieldIter< T, Dim, SOffset< Dim > >::size ( unsigned int d) const
inline

Definition at line 608 of file SubFieldIter.h.

◆ step() [1/2]

template<class T, unsigned int Dim>
void SubFieldIter< T, Dim, SOffset< Dim > >::step ( unsigned int )
inline

Definition at line 604 of file SubFieldIter.h.

◆ step() [2/2]

template<class T, unsigned int Dim>
void SubFieldIter< T, Dim, SOffset< Dim > >::step ( unsigned int ,
int  )
inline

Definition at line 605 of file SubFieldIter.h.

◆ Stride()

template<class T, unsigned int Dim>
int SubFieldIter< T, Dim, SOffset< Dim > >::Stride ( int )
inline

Definition at line 619 of file SubFieldIter.h.

◆ TryCompress() [1/2]

template<class T, unsigned int Dim>
bool SubFieldIter< T, Dim, SOffset< Dim > >::TryCompress ( )
inline

Definition at line 623 of file SubFieldIter.h.

◆ TryCompress() [2/2]

template<class T, unsigned int Dim>
bool SubFieldIter< T, Dim, SOffset< Dim > >::TryCompress ( T )
inline

Definition at line 624 of file SubFieldIter.h.

◆ unit_offset()

template<class T, unsigned int Dim>
T & SubFieldIter< T, Dim, SOffset< Dim > >::unit_offset ( int )
inline

Definition at line 618 of file SubFieldIter.h.

References offset().

Here is the call graph for this function:

Member Data Documentation

◆ Component

template<class T, unsigned int Dim>
NDIndex<Dim> SubFieldIter< T, Dim, SOffset< Dim > >::Component
private

Definition at line 640 of file SubFieldIter.h.

Referenced by findIntersection(), initialize(), and setLFieldData().

◆ CurrentLField

BareField<T,Dim>::iterator_if SubFieldIterBase< T, Dim, SOffset< Dim >, ExprDim >::CurrentLField
privateinherited

Definition at line 239 of file SubFieldIter.h.

◆ LFPtr

LField<T,Dim>* SubFieldIterBase< T, Dim, SOffset< Dim >, ExprDim >::LFPtr
privateinherited

Definition at line 236 of file SubFieldIter.h.

◆ MyBareField

BareField<T,Dim>* SubFieldIterBase< T, Dim, SOffset< Dim >, ExprDim >::MyBareField
privateinherited

Definition at line 228 of file SubFieldIter.h.

◆ MyBrackets

unsigned int SubFieldIterBase< T, Dim, SOffset< Dim >, ExprDim >::MyBrackets
privateinherited

Definition at line 242 of file SubFieldIter.h.

◆ MyDomain

SOffset< Dim >* SubFieldIterBase< T, Dim, SOffset< Dim >, ExprDim >::MyDomain
privateinherited

Definition at line 231 of file SubFieldIter.h.

◆ SingleValPtr

template<class T, unsigned int Dim>
T* SubFieldIter< T, Dim, SOffset< Dim > >::SingleValPtr
private

Definition at line 638 of file SubFieldIter.h.

Referenced by offset(), setLFieldData(), and SubFieldIter().

◆ SingleValStore

template<class T, unsigned int Dim>
T SubFieldIter< T, Dim, SOffset< Dim > >::SingleValStore
private

Definition at line 639 of file SubFieldIter.h.

Referenced by initialize(), and offset().


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