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

#include <MPIScalarReducer.h>

Inheritance diagram for escript::MPIScalarReducer:
escript::AbstractReducer

Public Member Functions

 MPIScalarReducer (MPI_Op op)
 
 ~MPIScalarReducer ()
 
void setDomain (Domain_ptr d)
 
bool valueCompatible (boost::python::object v)
 
bool reduceLocalValue (boost::python::object v, std::string &errstring)
 
void reset ()
 
bool checkRemoteCompatibility (JMPI &mpiInfo, 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)
 
double getDouble ()
 
virtual boost::python::object getPyObj ()
 
bool groupSend (MPI_Comm &com, bool imsending)
 
bool canClash ()
 
bool groupReduce (MPI_Comm &com, char mystate)
 
void copyValueFrom (boost::shared_ptr< AbstractReducer > &src)
 
void newRunJobs ()
 
- Public Member Functions inherited from escript::AbstractReducer
virtual ~AbstractReducer ()
 
bool hasValue ()
 
virtual void clear ()
 

Private Attributes

double value
 
MPI_Op reduceop
 
double identity
 
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

◆ MPIScalarReducer()

MPIScalarReducer::MPIScalarReducer ( MPI_Op  op)

◆ ~MPIScalarReducer()

escript::MPIScalarReducer::~MPIScalarReducer ( )
inline

Member Function Documentation

◆ canClash()

bool MPIScalarReducer::canClash ( )
virtual

Reimplemented from escript::AbstractReducer.

References MPI_OP_NULL, and reduceop.

Referenced by ~MPIScalarReducer().

◆ checkRemoteCompatibility()

bool MPIScalarReducer::checkRemoteCompatibility ( JMPI mpiInfo,
std::string &  errstring 
)
virtual

Implements escript::AbstractReducer.

Referenced by ~MPIScalarReducer().

◆ copyValueFrom()

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

◆ description()

std::string MPIScalarReducer::description ( )
virtual

◆ getCompatibilityInfo()

void MPIScalarReducer::getCompatibilityInfo ( std::vector< unsigned > &  params)

Referenced by ~MPIScalarReducer().

◆ getDouble()

double MPIScalarReducer::getDouble ( )
virtual

Reimplemented from escript::AbstractReducer.

References value.

Referenced by ~MPIScalarReducer().

◆ getPyObj()

boost::python::object MPIScalarReducer::getPyObj ( )
virtual

◆ groupReduce()

bool escript::MPIScalarReducer::groupReduce ( MPI_Comm com,
char  mystate 
)

Referenced by getPyObj(), and ~MPIScalarReducer().

◆ groupSend()

bool escript::MPIScalarReducer::groupSend ( MPI_Comm com,
bool  imsending 
)

Referenced by getPyObj(), and ~MPIScalarReducer().

◆ newRunJobs()

void MPIScalarReducer::newRunJobs ( )
virtual

Reimplemented from escript::AbstractReducer.

References had_an_export_this_round.

Referenced by ~MPIScalarReducer().

◆ recvFrom()

bool MPIScalarReducer::recvFrom ( int  localid,
int  source,
JMPI mpiinfo 
)
virtual

◆ reduceLocalValue()

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

◆ reduceRemoteValues()

bool MPIScalarReducer::reduceRemoteValues ( MPI_Comm com)
virtual

◆ reset()

void MPIScalarReducer::reset ( )
virtual

◆ sendTo()

bool MPIScalarReducer::sendTo ( int  localid,
int  target,
JMPI mpiinfo 
)
virtual

◆ setDomain()

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

Reimplemented from escript::AbstractReducer.

Referenced by ~MPIScalarReducer().

◆ valueCompatible()

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

Implements escript::AbstractReducer.

Referenced by ~MPIScalarReducer().

Member Data Documentation

◆ had_an_export_this_round

bool escript::MPIScalarReducer::had_an_export_this_round
private

Referenced by newRunJobs(), and reduceLocalValue().

◆ identity

double escript::MPIScalarReducer::identity
private

Referenced by getPyObj(), and MPIScalarReducer().

◆ reduceop

MPI_Op escript::MPIScalarReducer::reduceop
private

◆ value

double escript::MPIScalarReducer::value
private

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