FreePOOMA  2.4.1
Public Types | Public Member Functions
DomainLayout< Dim > Class Template Reference

DomainLayout is used to act as a layout object for all engines that just need a simple layout for a single domain of dimension Dim. More...

#include <DomainLayout.h>

List of all members.

Public Types

enum  { dimensions = Dim }
enum  { dynamic = false }
typedef DomainLayout< Dim > This_t
typedef Interval< Dim > Domain_t
typedef Node< Domain_tValue_t
typedef DynamicEvents::PatchID_t PatchID_t
typedef DynamicEvents::CreateSize_t CreateSize_t
typedef GuardLayers< Dim > GuardLayers_t
typedef Value_titerator
typedef const Value_tconst_iterator

Public Member Functions

 DomainLayout ()
 DomainLayout (const Domain_t &dom)
 DomainLayout (const Domain_t &dom, const GuardLayers_t &g)
 DomainLayout (const Value_t &node)
 DomainLayout (const This_t &layout)
void initialize (const Domain_t &dom)
void initialize (const Domain_t &dom, const GuardLayers_t &g)
void initialize (const This_t &layout)
 ~DomainLayout ()
bool initialized () const
int first (int d) const
Value_tnode ()
const Value_tnode () const
Loc< Dim > blocks () const
const Domain_tdomain () const
const Domain_tinnerDomain () const
const Domain_tallocated () const
GuardLayers_t internalGuards () const
GuardLayers_t externalGuards () const
const Domain_tdomain (int i) const
const Domain_townedDomain (int i) const
const Domain_tallocatedDomain (int i) const
template<class L >
bool operator== (const L &layout) const
template<class L >
bool operator!= (const L &layout) const
iterator begin ()
iterator end ()
const_iterator begin () const
const_iterator end () const
long size () const
iterator beginLocal ()
iterator endLocal ()
const_iterator beginLocal () const
const_iterator endLocal () const
long sizeLocal () const
iterator beginGlobal ()
iterator endGlobal ()
const_iterator beginGlobal () const
const_iterator endGlobal () const
long sizeGlobal () const
iterator beginRemote ()
iterator endRemote ()
const_iterator beginRemote () const
const_iterator endRemote () const
long sizeRemote () const
int globalID (const Loc< Dim > &loc) const
int globalID (int i1) const
int globalID (int i1, int i2) const
int globalID (int i1, int i2, int i3) const
int globalID (int i1, int i2, int i3, int i4) const
int globalID (int i1, int i2, int i3, int i4, int i5) const
int globalID (int i1, int i2, int i3, int i4, int i5, int i6) const
int globalID (int i1, int i2, int i3, int i4, int i5, int i6, int i7) const
template<class OtherDomain , class OutIter , class ConstructTag >
int touches (const OtherDomain &d, OutIter o, ConstructTag ctag) const
template<class OtherDomain , class OutIter , class ConstructTag >
int touchesLocal (const OtherDomain &d, OutIter o, const ConstructTag &ctag) const
template<class OtherDomain , class OutIter , class ConstructTag >
int touchesRemote (const OtherDomain &, OutIter, const ConstructTag &) const
template<class OtherDomain , class OutIter >
int touches (const OtherDomain &d, OutIter o) const
template<class OtherDomain , class OutIter >
int touchesLocal (const OtherDomain &d, OutIter o) const
template<class OtherDomain , class OutIter >
int touchesRemote (const OtherDomain &d, OutIter o) const
template<class Out >
void print (Out &o) const

Detailed Description

template<int Dim>
class DomainLayout< Dim >

DomainLayout is used to act as a layout object for all engines that just need a simple layout for a single domain of dimension Dim.

It is not shareable, and it does not provide a dynamic create/destroy interface. It is possible to change the domain of this layout, by calling initialize.

DomainLayout provides the same interface for begin/end iterators over Nodes as all other layouts. It will appear to have just one local patch, and no remote patches.


Member Typedef Documentation

template<int Dim>
typedef DomainLayout<Dim> DomainLayout< Dim >::This_t
template<int Dim>
typedef Interval<Dim> DomainLayout< Dim >::Domain_t
template<int Dim>
typedef Node<Domain_t> DomainLayout< Dim >::Value_t
template<int Dim>
typedef DynamicEvents::PatchID_t DomainLayout< Dim >::PatchID_t
template<int Dim>
typedef DynamicEvents::CreateSize_t DomainLayout< Dim >::CreateSize_t
template<int Dim>
typedef GuardLayers<Dim> DomainLayout< Dim >::GuardLayers_t
template<int Dim>
typedef Value_t* DomainLayout< Dim >::iterator
template<int Dim>
typedef const Value_t* DomainLayout< Dim >::const_iterator

Member Enumeration Documentation

template<int Dim>
anonymous enum
Enumerator:
dimensions 
template<int Dim>
anonymous enum
Enumerator:
dynamic 

Constructor & Destructor Documentation

template<int Dim>
DomainLayout< Dim >::DomainLayout ( ) [inline]
template<int Dim>
DomainLayout< Dim >::DomainLayout ( const Domain_t dom) [inline, explicit]
template<int Dim>
DomainLayout< Dim >::DomainLayout ( const Domain_t dom,
const GuardLayers_t g 
) [inline]
template<int Dim>
DomainLayout< Dim >::DomainLayout ( const Value_t node) [inline, explicit]
template<int Dim>
DomainLayout< Dim >::DomainLayout ( const This_t layout) [inline]
template<int Dim>
DomainLayout< Dim >::~DomainLayout ( ) [inline]

Member Function Documentation

template<int Dim>
void DomainLayout< Dim >::initialize ( const Domain_t dom) [inline]

References Pooma::context().

template<int Dim>
void DomainLayout< Dim >::initialize ( const Domain_t dom,
const GuardLayers_t g 
) [inline]

References Pooma::context(), and grow().

template<int Dim>
void DomainLayout< Dim >::initialize ( const This_t layout) [inline]
template<int Dim>
bool DomainLayout< Dim >::initialized ( ) const [inline]
template<int Dim>
int DomainLayout< Dim >::first ( int  d) const [inline]
template<int Dim>
Value_t& DomainLayout< Dim >::node ( ) [inline]
template<int Dim>
const Value_t& DomainLayout< Dim >::node ( ) const [inline]
template<int Dim>
Loc<Dim> DomainLayout< Dim >::blocks ( ) const [inline]
template<int Dim>
const Domain_t& DomainLayout< Dim >::domain ( ) const [inline]
template<int Dim>
const Domain_t& DomainLayout< Dim >::innerDomain ( ) const [inline]
template<int Dim>
const Domain_t& DomainLayout< Dim >::allocated ( ) const [inline]
template<int Dim>
GuardLayers_t DomainLayout< Dim >::internalGuards ( ) const [inline]
template<int Dim>
GuardLayers_t DomainLayout< Dim >::externalGuards ( ) const [inline]
template<int Dim>
const Domain_t& DomainLayout< Dim >::domain ( int  i) const [inline]
template<int Dim>
const Domain_t& DomainLayout< Dim >::ownedDomain ( int  i) const [inline]
template<int Dim>
const Domain_t& DomainLayout< Dim >::allocatedDomain ( int  i) const [inline]
template<int Dim>
template<class L >
bool DomainLayout< Dim >::operator== ( const L &  layout) const [inline]
template<int Dim>
template<class L >
bool DomainLayout< Dim >::operator!= ( const L &  layout) const [inline]
template<int Dim>
iterator DomainLayout< Dim >::begin ( ) [inline]
template<int Dim>
iterator DomainLayout< Dim >::end ( ) [inline]
template<int Dim>
const_iterator DomainLayout< Dim >::begin ( ) const [inline]
template<int Dim>
const_iterator DomainLayout< Dim >::end ( ) const [inline]
template<int Dim>
long DomainLayout< Dim >::size ( ) const [inline]
template<int Dim>
iterator DomainLayout< Dim >::beginLocal ( ) [inline]
template<int Dim>
iterator DomainLayout< Dim >::endLocal ( ) [inline]
template<int Dim>
const_iterator DomainLayout< Dim >::beginLocal ( ) const [inline]
template<int Dim>
const_iterator DomainLayout< Dim >::endLocal ( ) const [inline]
template<int Dim>
long DomainLayout< Dim >::sizeLocal ( ) const [inline]
template<int Dim>
iterator DomainLayout< Dim >::beginGlobal ( ) [inline]
template<int Dim>
iterator DomainLayout< Dim >::endGlobal ( ) [inline]
template<int Dim>
const_iterator DomainLayout< Dim >::beginGlobal ( ) const [inline]
template<int Dim>
const_iterator DomainLayout< Dim >::endGlobal ( ) const [inline]
template<int Dim>
long DomainLayout< Dim >::sizeGlobal ( ) const [inline]
template<int Dim>
iterator DomainLayout< Dim >::beginRemote ( ) [inline]
template<int Dim>
iterator DomainLayout< Dim >::endRemote ( ) [inline]
template<int Dim>
const_iterator DomainLayout< Dim >::beginRemote ( ) const [inline]
template<int Dim>
const_iterator DomainLayout< Dim >::endRemote ( ) const [inline]
template<int Dim>
long DomainLayout< Dim >::sizeRemote ( ) const [inline]
template<int Dim>
int DomainLayout< Dim >::globalID ( const Loc< Dim > &  loc) const [inline]
template<int Dim>
int DomainLayout< Dim >::globalID ( int  i1) const [inline]
template<int Dim>
int DomainLayout< Dim >::globalID ( int  i1,
int  i2 
) const [inline]
template<int Dim>
int DomainLayout< Dim >::globalID ( int  i1,
int  i2,
int  i3 
) const [inline]
template<int Dim>
int DomainLayout< Dim >::globalID ( int  i1,
int  i2,
int  i3,
int  i4 
) const [inline]
template<int Dim>
int DomainLayout< Dim >::globalID ( int  i1,
int  i2,
int  i3,
int  i4,
int  i5 
) const [inline]
template<int Dim>
int DomainLayout< Dim >::globalID ( int  i1,
int  i2,
int  i3,
int  i4,
int  i5,
int  i6 
) const [inline]
template<int Dim>
int DomainLayout< Dim >::globalID ( int  i1,
int  i2,
int  i3,
int  i4,
int  i5,
int  i6,
int  i7 
) const [inline]
template<int Dim>
template<class OtherDomain , class OutIter , class ConstructTag >
int DomainLayout< Dim >::touches ( const OtherDomain &  d,
OutIter  o,
ConstructTag  ctag 
) const
template<int Dim>
template<class OtherDomain , class OutIter , class ConstructTag >
int DomainLayout< Dim >::touchesLocal ( const OtherDomain &  d,
OutIter  o,
const ConstructTag &  ctag 
) const [inline]
template<int Dim>
template<class OtherDomain , class OutIter , class ConstructTag >
int DomainLayout< Dim >::touchesRemote ( const OtherDomain &  ,
OutIter  ,
const ConstructTag &   
) const [inline]
template<int Dim>
template<class OtherDomain , class OutIter >
int DomainLayout< Dim >::touches ( const OtherDomain &  d,
OutIter  o 
) const [inline]
template<int Dim>
template<class OtherDomain , class OutIter >
int DomainLayout< Dim >::touchesLocal ( const OtherDomain &  d,
OutIter  o 
) const [inline]
template<int Dim>
template<class OtherDomain , class OutIter >
int DomainLayout< Dim >::touchesRemote ( const OtherDomain &  d,
OutIter  o 
) const [inline]
template<int Dim>
template<class Out >
void DomainLayout< Dim >::print ( Out &  o) const [inline]

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