Go to the documentation of this file.
16 #ifndef __ESCRIPT_SCALARREDUCER_H__
17 #define __ESCRIPT_SCALARREDUCER_H__
25 class MPIScalarReducer :
public AbstractReducer
55 bool sendTo(
int localid,
int target,
JMPI& mpiinfo);
59 virtual boost::python::object
getPyObj();
85 #endif // __ESCRIPT_SCALARREDUCER_H__
~MPIScalarReducer()
Definition: MPIScalarReducer.h:52
int MPI_Status
Definition: EsysMPI.h:43
void setDomain(Domain_ptr d)
Definition: MPIScalarReducer.cpp:107
int MPI_Op
Definition: EsysMPI.h:42
Reducer_ptr makeScalarReducer(std::string type)
Definition: MPIScalarReducer.cpp:30
void reset()
Definition: MPIScalarReducer.cpp:189
std::string description()
Definition: MPIScalarReducer.cpp:112
double getDouble()
Definition: MPIScalarReducer.cpp:258
#define MPI_SUM
Definition: EsysMPI.h:50
bool recvFrom(int localid, int source, JMPI &mpiinfo)
Definition: MPIScalarReducer.cpp:237
boost::shared_ptr< AbstractDomain > Domain_ptr
Definition: AbstractDomain.h:47
MPIScalarReducer(MPI_Op op)
Definition: MPIScalarReducer.cpp:85
#define MPI_OP_NULL
Definition: EsysMPI.h:54
bool canClash()
Definition: MPIScalarReducer.cpp:308
double identity
Definition: MPIScalarReducer.h:99
bool valueCompatible(boost::python::object v)
Definition: MPIScalarReducer.cpp:143
bool sendTo(int localid, int target, JMPI &mpiinfo)
Definition: MPIScalarReducer.cpp:249
virtual boost::python::object getPyObj()
Definition: MPIScalarReducer.cpp:263
#define MPI_MAX
Definition: EsysMPI.h:52
bool groupReduce(MPI_Comm &com, char mystate)
boost::shared_ptr< AbstractReducer > Reducer_ptr
Definition: AbstractReducer.h:128
double value
Definition: MPIScalarReducer.h:97
boost::shared_ptr< JMPI_ > JMPI
Definition: EsysMPI.h:70
Definition: SplitWorldException.h:38
void getCompatibilityInfo(std::vector< unsigned > ¶ms)
Definition: MPIScalarReducer.cpp:229
bool reduceRemoteValues(MPI_Comm &com)
Definition: MPIScalarReducer.cpp:202
static const int PARAMTAG
Definition: AbstractReducer.h:124
void newRunJobs()
Definition: MPIScalarReducer.cpp:138
#define MPI_DOUBLE
Definition: EsysMPI.h:45
#define MPI_MIN
Definition: EsysMPI.h:51
void copyValueFrom(boost::shared_ptr< AbstractReducer > &src)
Definition: MPIScalarReducer.cpp:297
bool had_an_export_this_round
Definition: MPIScalarReducer.h:100
bool groupSend(MPI_Comm &com, bool imsending)
Definition: AbstractContinuousDomain.cpp:22
const unsigned char NEW
Definition: AbstractReducer.h:59
bool checkRemoteCompatibility(JMPI &mpiInfo, std::string &errstring)
Definition: MPIScalarReducer.cpp:195
int MPI_Comm
Definition: EsysMPI.h:40
Definition: MPIScalarReducer.h:36
bool valueadded
Definition: AbstractReducer.h:122
bool reduceLocalValue(boost::python::object v, std::string &errstring)
Definition: MPIScalarReducer.cpp:153
MPI_Op reduceop
Definition: MPIScalarReducer.h:98