OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
BrickIterator< T, Dim > Class Template Reference

#include <BrickIterator.h>

Inheritance diagram for BrickIterator< T, Dim >:
Inheritance graph
[legend]
Collaboration diagram for BrickIterator< T, Dim >:
Collaboration graph
[legend]

Public Types

typedef T PETE_Return_t
 
typedef BrickIterator< T, DimPETE_Expr_t
 

Public Member Functions

 BrickIterator ()
 
 BrickIterator (T *, const NDIndex< Dim > &, const NDIndex< Dim > &)
 
 BrickIterator (T *, const vec< int, Dim > &)
 
BrickIteratoroperator++ ()
 
bool whole () const
 
bool operator== (const BrickIterator< T, Dim > &a) const
 
bool operator!= (const BrickIterator< T, Dim > &a) const
 
Toperator* () const
 
void step (unsigned d)
 
void rewind (unsigned d)
 
Toffset (int i) const
 
Toffset (int i, int j) const
 
Toffset (int i, int j, int k) const
 
Toffset (int *i) const
 
Tunit_offset (int i) const
 
Tunit_offset (int i, int j) const
 
Tunit_offset (int i, int j, int k) const
 
void moveBy (int i)
 
void moveBy (int i, int j)
 
void moveBy (int i, int j, int k)
 
void moveBy (const int *i)
 
int Stride (int i) const
 
MessageputMessage (Message &, bool makecopy=true)
 
MessagegetMessage (Message &)
 
PETE_Expr_t MakeExpression () const
 
- Public Member Functions inherited from BrickCounter< Dim >
 BrickCounter ()
 
 BrickCounter (const NDIndex< Dim > &)
 
BrickCounteroperator++ ()
 
bool done (unsigned d) const
 
void step (unsigned d)
 
void rewind (unsigned d)
 
int size (unsigned d) const
 
int GetOffset (unsigned d) const
 

Protected Member Functions

void op_pp ()
 
- Protected Member Functions inherited from BrickCounter< Dim >
void op_pp ()
 

Protected Attributes

T *__restrict__ Current
 
vec< int, DimStrides
 
bool Whole
 
- Protected Attributes inherited from BrickCounter< Dim >
vec< int, DimCounters
 
vec< int, DimCounts
 

Detailed Description

template<class T, unsigned Dim>
class BrickIterator< T, Dim >

Definition at line 64 of file BrickIterator.h.

Member Typedef Documentation

template<class T, unsigned Dim>
typedef BrickIterator<T,Dim> BrickIterator< T, Dim >::PETE_Expr_t

Definition at line 180 of file BrickIterator.h.

template<class T, unsigned Dim>
typedef T BrickIterator< T, Dim >::PETE_Return_t

Definition at line 179 of file BrickIterator.h.

Constructor & Destructor Documentation

template<class T, unsigned Dim>
BrickIterator< T, Dim >::BrickIterator ( )
inline

Definition at line 69 of file BrickIterator.h.

template<class T , unsigned Dim>
BrickIterator< T, Dim >::BrickIterator ( T p,
const NDIndex< Dim > &  counted,
const NDIndex< Dim > &  domalloc 
)
template<class T , unsigned Dim>
BrickIterator< T, Dim >::BrickIterator ( T p,
const vec< int, Dim > &  sizes 
)

Definition at line 90 of file BrickIterator.hpp.

References Dim, and Hypervolume::n.

Member Function Documentation

template<class T , unsigned Dim>
Message & BrickIterator< T, Dim >::getMessage ( Message m)

Definition at line 190 of file BrickIterator.hpp.

References Message::MsgItem::data(), Dim, Message::get(), Message::item(), Hypervolume::n, PInsist, and T.

Referenced by CompressedBrickIterator< T, Dim >::getMessage().

Here is the call graph for this function:

template<class T, unsigned Dim>
PETE_Expr_t BrickIterator< T, Dim >::MakeExpression ( ) const
inline

Definition at line 181 of file BrickIterator.h.

template<class T, unsigned Dim>
void BrickIterator< T, Dim >::moveBy ( int  i)
inline
template<class T, unsigned Dim>
void BrickIterator< T, Dim >::moveBy ( int  i,
int  j 
)
inline
template<class T, unsigned Dim>
void BrickIterator< T, Dim >::moveBy ( int  i,
int  j,
int  k 
)
inline
template<class T, unsigned Dim>
void BrickIterator< T, Dim >::moveBy ( const int *  i)
inline
template<class T, unsigned Dim>
T& BrickIterator< T, Dim >::offset ( int  i) const
inline
template<class T, unsigned Dim>
T& BrickIterator< T, Dim >::offset ( int  i,
int  j 
) const
inline
template<class T, unsigned Dim>
T& BrickIterator< T, Dim >::offset ( int  i,
int  j,
int  k 
) const
inline
template<class T, unsigned Dim>
T& BrickIterator< T, Dim >::offset ( int *  i) const
inline

Definition at line 124 of file BrickIterator.h.

References BrickIterator< T, Dim >::Current, vec< T, Length >::dot(), and BrickIterator< T, Dim >::Strides.

Here is the call graph for this function:

template<class T , unsigned Dim>
void BrickIterator< T, Dim >::op_pp ( )
protected

Definition at line 111 of file BrickIterator.hpp.

References Dim.

Referenced by BrickIterator< T, Dim >::operator++().

template<class T, unsigned Dim>
bool BrickIterator< T, Dim >::operator!= ( const BrickIterator< T, Dim > &  a) const
inline

Definition at line 88 of file BrickIterator.h.

References BrickIterator< T, Dim >::Current.

template<class T, unsigned Dim>
T& BrickIterator< T, Dim >::operator* ( ) const
inline

Definition at line 94 of file BrickIterator.h.

References BrickIterator< T, Dim >::Current.

Referenced by BareFieldIterator< T, D >::operator*().

template<class T, unsigned Dim>
BrickIterator& BrickIterator< T, Dim >::operator++ ( )
inline

Definition at line 78 of file BrickIterator.h.

References BrickIterator< T, Dim >::op_pp().

Referenced by IndexedBareFieldIterator< T, D >::operator++(), and BareFieldIterator< T, D >::operator++().

Here is the call graph for this function:

template<class T, unsigned Dim>
bool BrickIterator< T, Dim >::operator== ( const BrickIterator< T, Dim > &  a) const
inline

Definition at line 84 of file BrickIterator.h.

References BrickIterator< T, Dim >::Current.

template<class T , unsigned Dim>
Message & BrickIterator< T, Dim >::putMessage ( Message m,
bool  makecopy = true 
)

Definition at line 139 of file BrickIterator.hpp.

References Dim, Hypervolume::n, Message::put(), Message::putmsg(), Message::setCopy(), Message::setDelete(), and T.

Referenced by CompressedBrickIterator< T, Dim >::putMessage().

Here is the call graph for this function:

template<class T, unsigned Dim>
void BrickIterator< T, Dim >::rewind ( unsigned  d)
inline

Definition at line 105 of file BrickIterator.h.

References BrickIterator< T, Dim >::Current, BrickCounter< Dim >::rewind(), and BrickIterator< T, Dim >::Strides.

Referenced by for_each().

Here is the call graph for this function:

template<class T, unsigned Dim>
void BrickIterator< T, Dim >::step ( unsigned  d)
inline

Definition at line 100 of file BrickIterator.h.

References BrickIterator< T, Dim >::Current, BrickCounter< Dim >::step(), and BrickIterator< T, Dim >::Strides.

Referenced by all_values_equal(), and for_each().

Here is the call graph for this function:

template<class T, unsigned Dim>
int BrickIterator< T, Dim >::Stride ( int  i) const
inline

Definition at line 165 of file BrickIterator.h.

References BrickIterator< T, Dim >::Strides.

Referenced by for_each().

template<class T, unsigned Dim>
T& BrickIterator< T, Dim >::unit_offset ( int  i) const
inline

Definition at line 128 of file BrickIterator.h.

References BrickIterator< T, Dim >::Current.

Referenced by for_each().

template<class T, unsigned Dim>
T& BrickIterator< T, Dim >::unit_offset ( int  i,
int  j 
) const
inline
template<class T, unsigned Dim>
T& BrickIterator< T, Dim >::unit_offset ( int  i,
int  j,
int  k 
) const
inline
template<class T, unsigned Dim>
bool BrickIterator< T, Dim >::whole ( ) const
inline

Definition at line 81 of file BrickIterator.h.

References BrickIterator< T, Dim >::Whole.

Referenced by DiscField< Dim >::write_offset_and_data().

Member Data Documentation

template<class T, unsigned Dim>
T* __restrict__ BrickIterator< T, Dim >::Current
protected
template<class T, unsigned Dim>
vec<int,Dim> BrickIterator< T, Dim >::Strides
protected
template<class T, unsigned Dim>
bool BrickIterator< T, Dim >::Whole
protected

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