escript  Revision_
Public Member Functions | Private Attributes | List of all members
escript::MPIDataReducer Class Reference

#include <MPIDataReducer.h>

Inheritance diagram for escript::MPIDataReducer:
escript::AbstractReducer

Public Member Functions

 MPIDataReducer (MPI_Op op)
 
 ~MPIDataReducer ()
 
void setDomain (escript::Domain_ptr d)
 
bool valueCompatible (boost::python::object v)
 
bool reduceLocalValue (boost::python::object v, std::string &errstring)
 
void reset ()
 
bool checkRemoteCompatibility (esysUtils::JMPI &mpi_info, std::string &errstring)
 
void getCompatibilityInfo (std::vector< unsigned > &params)
 
bool reduceRemoteValues (MPI_Comm &com)
 
std::string description ()
 
bool recvFrom (Esys_MPI_rank localid, Esys_MPI_rank source, esysUtils::JMPI &mpiinfo)
 
bool sendTo (Esys_MPI_rank localid, Esys_MPI_rank target, esysUtils::JMPI &mpiinfo)
 
virtual boost::python::object getPyObj ()
 
bool groupSend (MPI_Comm &com, bool imsending)
 
bool canClash ()
 
bool groupReduce (MPI_Comm &com, char mystate)
 
void newRunJobs ()
 
void copyValueFrom (boost::shared_ptr< AbstractReducer > &src)
 
- Public Member Functions inherited from escript::AbstractReducer
virtual ~AbstractReducer ()
 
bool hasValue ()
 
virtual double getDouble ()
 
virtual void clear ()
 

Private Attributes

escript::Data value
 
escript::const_Domain_ptr dom
 
MPI_Op reduceop
 
bool had_an_export_this_round
 

Additional Inherited Members

- Protected Attributes inherited from escript::AbstractReducer
bool valueadded
 
bool had_an_export_this_round
 
- Static Protected Attributes inherited from escript::AbstractReducer
static const int PARAMTAG =120567
 

Constructor & Destructor Documentation

MPIDataReducer::MPIDataReducer ( MPI_Op  op)
escript::MPIDataReducer::~MPIDataReducer ( )
inline

Member Function Documentation

bool MPIDataReducer::canClash ( )
virtual

Reimplemented from escript::AbstractReducer.

References MPI_OP_NULL, and reduceop.

Referenced by ~MPIDataReducer().

bool MPIDataReducer::checkRemoteCompatibility ( esysUtils::JMPI mpi_info,
std::string &  errstring 
)
virtual

Implements escript::AbstractReducer.

References getCompatibilityInfo().

Referenced by ~MPIDataReducer().

void MPIDataReducer::copyValueFrom ( boost::shared_ptr< AbstractReducer > &  src)
virtual
std::string MPIDataReducer::description ( )
virtual

Implements escript::AbstractReducer.

References MPI_OP_NULL, and reduceop.

Referenced by ~MPIDataReducer().

void MPIDataReducer::getCompatibilityInfo ( std::vector< unsigned > &  params)
boost::python::object MPIDataReducer::getPyObj ( )
virtual

Implements escript::AbstractReducer.

References value.

Referenced by ~MPIDataReducer().

bool MPIDataReducer::groupReduce ( MPI_Comm com,
char  mystate 
)

Referenced by ~MPIDataReducer().

bool MPIDataReducer::groupSend ( MPI_Comm com,
bool  imsending 
)
void MPIDataReducer::newRunJobs ( )
virtual

Reimplemented from escript::AbstractReducer.

References had_an_export_this_round.

Referenced by ~MPIDataReducer().

bool MPIDataReducer::recvFrom ( Esys_MPI_rank  localid,
Esys_MPI_rank  source,
esysUtils::JMPI mpiinfo 
)
virtual
bool MPIDataReducer::reduceLocalValue ( boost::python::object  v,
std::string &  errstring 
)
virtual
bool MPIDataReducer::reduceRemoteValues ( MPI_Comm com)
virtual
void MPIDataReducer::reset ( )
virtual
bool MPIDataReducer::sendTo ( Esys_MPI_rank  localid,
Esys_MPI_rank  target,
esysUtils::JMPI mpiinfo 
)
virtual
void MPIDataReducer::setDomain ( escript::Domain_ptr  d)
virtual

Reimplemented from escript::AbstractReducer.

References dom.

Referenced by ~MPIDataReducer().

bool MPIDataReducer::valueCompatible ( boost::python::object  v)
virtual

Implements escript::AbstractReducer.

References dom, and escript::Data::getDomain().

Referenced by ~MPIDataReducer().

Member Data Documentation

escript::const_Domain_ptr escript::MPIDataReducer::dom
private
bool escript::MPIDataReducer::had_an_export_this_round
private

Referenced by newRunJobs(), and reduceLocalValue().

MPI_Op escript::MPIDataReducer::reduceop
private
escript::Data escript::MPIDataReducer::value
private

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