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

GridPartition is a layout partitioner; it is created with the info needed to partition a global domain into subdomains using N 1-dim upper sub-domain specifications along each axis, or any of the specifiers used for the UniformGridPartition. More...

#include <GridPartition.h>

List of all members.

Public Types

enum  { uniform = false }
enum  { gridded = true }
enum  { tile = false }
enum  { general = false }
enum  { dimensions = Dim }
typedef LocalMapper< Dim > DefaultMapper_t
typedef Interval< Dim > Domain_t
typedef Node< Domain_tValue_t
typedef std::vector< Value_t * > List_t

Public Member Functions

 GridPartition (const Grid< Dim > &g)
 GridPartition (const Grid< Dim > &g, const GuardLayers< Dim > &gcs)
 GridPartition (const Grid< Dim > &g, const GuardLayers< Dim > &igcs, const GuardLayers< Dim > &egcs)
 GridPartition ()
 GridPartition (const Loc< Dim > &a)
 GridPartition (const Loc< Dim > &a, const GuardLayers< Dim > &gcs)
 GridPartition (const Loc< Dim > &a, const GuardLayers< Dim > &igcs, const GuardLayers< Dim > &egcs)
 GridPartition (const GridPartition< Dim > &b)
 GridPartition (const UniformGridPartition< Dim > &b)
 ~GridPartition ()
GridPartition< Dim > & operator= (const GridPartition< Dim > &g)
int maxSize () const
const Loc< Dim > & blocks () const
bool hasGuards () const
bool hasCustomEdgeGuards () const
bool hasInternalGuards () const
bool hasExternalGuards () const
const Grid< Dim > & grid () const
const GuardLayers< Dim > & internalGuards () const
const GuardLayers< Dim > & externalGuards () const
template<class D >
int partition (const D &domain, List_t &all, const ContextMapper< Dim > &cmapper) const
template<class D >
int partition (const D &domain, List_t &all) const
template<class Out >
void print (Out &o) const

Detailed Description

template<int Dim>
class GridPartition< Dim >

GridPartition is a layout partitioner; it is created with the info needed to partition a global domain into subdomains using N 1-dim upper sub-domain specifications along each axis, or any of the specifiers used for the UniformGridPartition.

GridPartition inherits from UniformGridPartition.

A GridPartition object is constructed with the following information: GridPartition() Creates one partition, with no guard cells

GridPartition(const Loc<Dim> &n, int p=-1) Creates n[i] blocks along each i'th dimension

GridPartition(const Loc<Dim> &n, const GuardLayers<Dim> &gcs) Same as above, with internal and external guard cell sizes set to gcs.

GridPartition(const Loc<Dim> &n, const GuardLayers<Dim> &igcs, const GuardLayers<Dim> &egcs) Same as above, with internal and external guard cell sizes specified independently.

GridPartition(const Grid<Dim> &g) Partitions according to the Grid object.

GridPartition(const Grid<Dim> &g, const GuardLayers<Dim> &gcs) Same as above, with internal and external guard cell sizes set to gcs.

GridPartition(const Grid<Dim> &g, const GuardLayers<Dim> &igcs, const GuardLayers<Dim> &egcs) Same as above, with internal and external guard cell sizes specified independently.


Member Typedef Documentation

template<int Dim>
typedef LocalMapper<Dim> GridPartition< Dim >::DefaultMapper_t
template<int Dim>
typedef Interval<Dim> GridPartition< Dim >::Domain_t
template<int Dim>
typedef Node<Domain_t> GridPartition< Dim >::Value_t
template<int Dim>
typedef std::vector<Value_t *> GridPartition< Dim >::List_t

Member Enumeration Documentation

template<int Dim>
anonymous enum
Enumerator:
uniform 
template<int Dim>
anonymous enum
Enumerator:
gridded 
template<int Dim>
anonymous enum
Enumerator:
tile 
template<int Dim>
anonymous enum
Enumerator:
general 
template<int Dim>
anonymous enum
Enumerator:
dimensions 

Constructor & Destructor Documentation

template<int Dim>
GridPartition< Dim >::GridPartition ( const Grid< Dim > &  g) [inline]
template<int Dim>
GridPartition< Dim >::GridPartition ( const Grid< Dim > &  g,
const GuardLayers< Dim > &  gcs 
) [inline]
template<int Dim>
GridPartition< Dim >::GridPartition ( const Grid< Dim > &  g,
const GuardLayers< Dim > &  igcs,
const GuardLayers< Dim > &  egcs 
) [inline]
template<int Dim>
GridPartition< Dim >::GridPartition ( ) [inline]
template<int Dim>
GridPartition< Dim >::GridPartition ( const Loc< Dim > &  a) [inline]
template<int Dim>
GridPartition< Dim >::GridPartition ( const Loc< Dim > &  a,
const GuardLayers< Dim > &  gcs 
) [inline]
template<int Dim>
GridPartition< Dim >::GridPartition ( const Loc< Dim > &  a,
const GuardLayers< Dim > &  igcs,
const GuardLayers< Dim > &  egcs 
) [inline]
template<int Dim>
GridPartition< Dim >::GridPartition ( const GridPartition< Dim > &  b) [inline]
template<int Dim>
GridPartition< Dim >::GridPartition ( const UniformGridPartition< Dim > &  b) [inline]
template<int Dim>
GridPartition< Dim >::~GridPartition ( ) [inline]

Member Function Documentation

template<int Dim>
GridPartition<Dim>& GridPartition< Dim >::operator= ( const GridPartition< Dim > &  g) [inline]
template<int Dim>
int GridPartition< Dim >::maxSize ( ) const [inline]
template<int Dim>
const Loc<Dim>& GridPartition< Dim >::blocks ( ) const [inline]
template<int Dim>
bool GridPartition< Dim >::hasGuards ( ) const [inline]
template<int Dim>
bool GridPartition< Dim >::hasCustomEdgeGuards ( ) const [inline]
template<int Dim>
bool GridPartition< Dim >::hasInternalGuards ( ) const [inline]
template<int Dim>
bool GridPartition< Dim >::hasExternalGuards ( ) const [inline]
template<int Dim>
const Grid<Dim>& GridPartition< Dim >::grid ( ) const [inline]
template<int Dim>
const GuardLayers<Dim>& GridPartition< Dim >::internalGuards ( ) const [inline]
template<int Dim>
const GuardLayers<Dim>& GridPartition< Dim >::externalGuards ( ) const [inline]
template<int Dim>
template<class D >
int GridPartition< Dim >::partition ( const D &  domain,
List_t all,
const ContextMapper< Dim > &  cmapper 
) const
template<int Dim>
template<class D >
int GridPartition< Dim >::partition ( const D &  domain,
List_t all 
) const [inline]
template<int Dim>
template<class Out >
void GridPartition< Dim >::print ( Out &  o) const

References std::endl().


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