escript Revision_
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 (JMPI &mpi_info, std::string &errstring)
 
void getCompatibilityInfo (std::vector< unsigned > &params)
 
bool reduceRemoteValues (MPI_Comm &com)
 
std::string description ()
 
bool recvFrom (int localid, int source, JMPI &mpiinfo)
 
bool sendTo (int localid, int target, 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()

escript::MPIDataReducer::MPIDataReducer ( MPI_Op op)

◆ ~MPIDataReducer()

escript::MPIDataReducer::~MPIDataReducer ( )
inline

Member Function Documentation

◆ canClash()

bool escript::MPIDataReducer::canClash ( )
virtual

Reimplemented from escript::AbstractReducer.

References MPI_OP_NULL, and reduceop.

◆ checkRemoteCompatibility()

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

◆ copyValueFrom()

void escript::MPIDataReducer::copyValueFrom ( boost::shared_ptr< AbstractReducer > & src)
virtual

◆ description()

std::string escript::MPIDataReducer::description ( )
virtual

Implements escript::AbstractReducer.

References MPI_OP_NULL, and reduceop.

◆ getCompatibilityInfo()

◆ getPyObj()

boost::python::object escript::MPIDataReducer::getPyObj ( )
virtual

Implements escript::AbstractReducer.

References value.

◆ groupReduce()

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

◆ groupSend()

◆ newRunJobs()

void escript::MPIDataReducer::newRunJobs ( )
virtual

Reimplemented from escript::AbstractReducer.

References had_an_export_this_round.

◆ recvFrom()

bool escript::MPIDataReducer::recvFrom ( int localid,
int source,
JMPI & mpiinfo )
virtual

◆ reduceLocalValue()

bool escript::MPIDataReducer::reduceLocalValue ( boost::python::object v,
std::string & errstring )
virtual

◆ reduceRemoteValues()

◆ reset()

void escript::MPIDataReducer::reset ( )
virtual

◆ sendTo()

◆ setDomain()

void escript::MPIDataReducer::setDomain ( escript::Domain_ptr d)
virtual

Reimplemented from escript::AbstractReducer.

References dom.

◆ valueCompatible()

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

Member Data Documentation

◆ dom

escript::const_Domain_ptr escript::MPIDataReducer::dom
private

◆ had_an_export_this_round

bool escript::MPIDataReducer::had_an_export_this_round
private

Referenced by newRunJobs(), and reduceLocalValue().

◆ reduceop

MPI_Op escript::MPIDataReducer::reduceop
private

◆ value


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