Public Types | Public Member Functions | Static Public Attributes | Private Attributes | Friends

LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE > Class Template Reference

#include <updategroup.h>

Collaboration diagram for LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef Stepper< CELL_TYPE >
::Topology 
Topology
typedef APITraits::SelectSoA
< CELL_TYPE >::Value 
SupportsSoA
typedef GridTypeSelector
< CELL_TYPE, Topology, true,
SupportsSoA >::Value 
GridType
typedef Stepper< CELL_TYPE >
::PatchType 
PatchType
typedef Stepper< CELL_TYPE >
::PatchProviderPtr 
PatchProviderPtr
typedef Stepper< CELL_TYPE >
::PatchAccepterPtr 
PatchAccepterPtr
typedef boost::shared_ptr
< typename PatchLink< GridType >
::Link > 
PatchLinkPtr
typedef PartitionManager
< Topology
PartitionManagerType
typedef
PartitionManagerType::RegionVecMap 
RegionVecMap
typedef Stepper< CELL_TYPE >
::PatchAccepterVec 
PatchAccepterVec
typedef Stepper< CELL_TYPE >
::PatchProviderVec 
PatchProviderVec

Public Member Functions

template<typename STEPPER >
 UpdateGroup (boost::shared_ptr< Partition< DIM > > partition, const CoordBox< DIM > &box, const unsigned &ghostZoneWidth, boost::shared_ptr< Initializer< CELL_TYPE > > initializer, STEPPER *stepperType, PatchAccepterVec patchAcceptersGhost=PatchAccepterVec(), PatchAccepterVec patchAcceptersInner=PatchAccepterVec(), PatchProviderVec patchProvidersGhost=PatchProviderVec(), PatchProviderVec patchProvidersInner=PatchProviderVec(), MPI_Comm communicator=MPI_COMM_WORLD)
virtual ~UpdateGroup ()
const Chronometerstatistics () const
void addPatchProvider (const PatchProviderPtr &patchProvider, const PatchType &patchType)
void addPatchAccepter (const PatchAccepterPtr &patchAccepter, const PatchType &patchType)
void update (int nanoSteps)
const GridTypegrid () const
virtual std::pair< int, int > currentStep () const
const std::vector< std::size_t > & getWeights () const
double computeTimeInner () const
double computeTimeGhost () const
double patchAcceptersTime () const
double patchProvidersTime () const

Static Public Attributes

static const int DIM = Topology::DIM

Private Attributes

boost::shared_ptr< Stepper
< CELL_TYPE > > 
stepper
boost::shared_ptr
< PartitionManagerType
partitionManager
std::vector< PatchLinkPtrpatchLinks
unsigned ghostZoneWidth
boost::shared_ptr< Initializer
< CELL_TYPE > > 
initializer
MPILayer mpiLayer
unsigned rank

Friends

class HiParSimulatorTest
class UpdateGroupPrototypeTest
class UpdateGroupTest

template<class CELL_TYPE>
class LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >


Member Typedef Documentation

template<class CELL_TYPE >
typedef GridTypeSelector<CELL_TYPE, Topology, true, SupportsSoA>::Value LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::GridType
template<class CELL_TYPE >
typedef Stepper<CELL_TYPE>::PatchAccepterPtr LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::PatchAccepterPtr
template<class CELL_TYPE >
typedef Stepper<CELL_TYPE>::PatchAccepterVec LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::PatchAccepterVec
template<class CELL_TYPE >
typedef boost::shared_ptr<typename PatchLink<GridType>::Link> LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::PatchLinkPtr
template<class CELL_TYPE >
typedef Stepper<CELL_TYPE>::PatchProviderPtr LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::PatchProviderPtr
template<class CELL_TYPE >
typedef Stepper<CELL_TYPE>::PatchProviderVec LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::PatchProviderVec
template<class CELL_TYPE >
typedef Stepper<CELL_TYPE>::PatchType LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::PatchType
template<class CELL_TYPE >
typedef APITraits::SelectSoA<CELL_TYPE>::Value LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::SupportsSoA
template<class CELL_TYPE >
typedef Stepper<CELL_TYPE>::Topology LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::Topology

Constructor & Destructor Documentation

template<class CELL_TYPE >
template<typename STEPPER >
LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::UpdateGroup ( boost::shared_ptr< Partition< DIM > >  partition,
const CoordBox< DIM > &  box,
const unsigned ghostZoneWidth,
boost::shared_ptr< Initializer< CELL_TYPE > >  initializer,
STEPPER *  stepperType,
PatchAccepterVec  patchAcceptersGhost = PatchAccepterVec(),
PatchAccepterVec  patchAcceptersInner = PatchAccepterVec(),
PatchProviderVec  patchProvidersGhost = PatchProviderVec(),
PatchProviderVec  patchProvidersInner = PatchProviderVec(),
MPI_Comm  communicator = MPI_COMM_WORLD 
) [inline]
template<class CELL_TYPE >
virtual LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::~UpdateGroup (  )  [inline, virtual]

Member Function Documentation

template<class CELL_TYPE >
void LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::addPatchAccepter ( const PatchAccepterPtr patchAccepter,
const PatchType patchType 
) [inline]
template<class CELL_TYPE >
void LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::addPatchProvider ( const PatchProviderPtr patchProvider,
const PatchType patchType 
) [inline]
template<class CELL_TYPE >
double LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::computeTimeGhost (  )  const [inline]
template<class CELL_TYPE >
double LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::computeTimeInner (  )  const [inline]
template<class CELL_TYPE >
virtual std::pair<int, int> LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::currentStep (  )  const [inline, virtual]
template<class CELL_TYPE >
const std::vector<std::size_t>& LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::getWeights (  )  const [inline]
template<class CELL_TYPE >
const GridType& LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::grid (  )  const [inline]
template<class CELL_TYPE >
double LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::patchAcceptersTime (  )  const [inline]
template<class CELL_TYPE >
double LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::patchProvidersTime (  )  const [inline]
template<class CELL_TYPE >
const Chronometer& LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::statistics (  )  const [inline]
template<class CELL_TYPE >
void LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::update ( int  nanoSteps  )  [inline]

Friends And Related Function Documentation

template<class CELL_TYPE >
friend class HiParSimulatorTest [friend]
template<class CELL_TYPE >
friend class UpdateGroupPrototypeTest [friend]
template<class CELL_TYPE >
friend class UpdateGroupTest [friend]

Member Data Documentation

template<class CELL_TYPE >
const int LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::DIM = Topology::DIM [static]
template<class CELL_TYPE >
unsigned LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::ghostZoneWidth [private]
template<class CELL_TYPE >
boost::shared_ptr<Initializer<CELL_TYPE> > LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::initializer [private]
template<class CELL_TYPE >
MPILayer LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::mpiLayer [private]
template<class CELL_TYPE >
boost::shared_ptr<PartitionManagerType> LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::partitionManager [private]
template<class CELL_TYPE >
std::vector<PatchLinkPtr> LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::patchLinks [private]
template<class CELL_TYPE >
unsigned LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::rank [private]
template<class CELL_TYPE >
boost::shared_ptr<Stepper<CELL_TYPE> > LibGeoDecomp::HiParSimulator::UpdateGroup< CELL_TYPE >::stepper [private]

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