Go to the documentation of this file.
17 #ifndef __ESCRIPT_SCALARREDUCER_H__
18 #define __ESCRIPT_SCALARREDUCER_H__
26 class MPIScalarReducer :
public AbstractReducer
56 bool sendTo(
int localid,
int target,
JMPI& mpiinfo);
60 virtual boost::python::object
getPyObj();
86 #endif // __ESCRIPT_SCALARREDUCER_H__
~MPIScalarReducer()
Definition: MPIScalarReducer.h:55
int MPI_Status
Definition: EsysMPI.h:44
void setDomain(Domain_ptr d)
Definition: MPIScalarReducer.cpp:108
int MPI_Op
Definition: EsysMPI.h:43
Reducer_ptr makeScalarReducer(std::string type)
Definition: MPIScalarReducer.cpp:31
void reset()
Definition: MPIScalarReducer.cpp:190
std::string description()
Definition: MPIScalarReducer.cpp:113
double getDouble()
Definition: MPIScalarReducer.cpp:259
#define MPI_SUM
Definition: EsysMPI.h:51
bool recvFrom(int localid, int source, JMPI &mpiinfo)
Definition: MPIScalarReducer.cpp:238
boost::shared_ptr< AbstractDomain > Domain_ptr
Definition: AbstractDomain.h:53
MPIScalarReducer(MPI_Op op)
Definition: MPIScalarReducer.cpp:86
#define MPI_OP_NULL
Definition: EsysMPI.h:55
bool canClash()
Definition: MPIScalarReducer.cpp:309
double identity
Definition: MPIScalarReducer.h:102
bool valueCompatible(boost::python::object v)
Definition: MPIScalarReducer.cpp:144
bool sendTo(int localid, int target, JMPI &mpiinfo)
Definition: MPIScalarReducer.cpp:250
virtual boost::python::object getPyObj()
Definition: MPIScalarReducer.cpp:264
#define MPI_MAX
Definition: EsysMPI.h:53
bool groupReduce(MPI_Comm &com, char mystate)
boost::shared_ptr< AbstractReducer > Reducer_ptr
Definition: AbstractReducer.h:130
double value
Definition: MPIScalarReducer.h:100
boost::shared_ptr< JMPI_ > JMPI
Definition: EsysMPI.h:71
Definition: SplitWorldException.h:40
void getCompatibilityInfo(std::vector< unsigned > ¶ms)
Definition: MPIScalarReducer.cpp:230
bool reduceRemoteValues(MPI_Comm &com)
Definition: MPIScalarReducer.cpp:203
static const int PARAMTAG
Definition: AbstractReducer.h:126
void newRunJobs()
Definition: MPIScalarReducer.cpp:139
#define MPI_DOUBLE
Definition: EsysMPI.h:46
#define MPI_MIN
Definition: EsysMPI.h:52
void copyValueFrom(boost::shared_ptr< AbstractReducer > &src)
Definition: MPIScalarReducer.cpp:298
bool had_an_export_this_round
Definition: MPIScalarReducer.h:103
bool groupSend(MPI_Comm &com, bool imsending)
Definition: AbstractContinuousDomain.cpp:23
const unsigned char NEW
Definition: AbstractReducer.h:62
bool checkRemoteCompatibility(JMPI &mpiInfo, std::string &errstring)
Definition: MPIScalarReducer.cpp:196
int MPI_Comm
Definition: EsysMPI.h:41
Definition: MPIScalarReducer.h:38
bool valueadded
Definition: AbstractReducer.h:124
bool reduceLocalValue(boost::python::object v, std::string &errstring)
Definition: MPIScalarReducer.cpp:154
MPI_Op reduceop
Definition: MPIScalarReducer.h:101