17 #include "omnetpp/platdep/config.h"
21 #ifndef __OMNETPP_CMPICOMM_H
22 #define __OMNETPP_CMPICOMM_H
24 #include "omnetpp/cparsimcomm.h"
35 class SIM_API cMPICommunications :
public cParsimCommunications
38 cMPICommBuffer *recycledBuffer;
46 virtual cMPICommBuffer *doCreateCommBuffer();
57 virtual ~cMPICommunications();
64 virtual void init(
int numPartitions)
override;
69 virtual void shutdown()
override;
74 virtual int getNumPartitions()
const override;
79 virtual int getProcId()
const override;
84 virtual cCommBuffer *createCommBuffer()
override;
89 virtual void recycleCommBuffer(cCommBuffer *buffer)
override;
94 virtual void send(cCommBuffer *buffer,
int tag,
int destination)
override;
99 virtual void broadcast(cCommBuffer *buffer,
int tag)
override;
105 virtual bool receiveBlocking(
int filtTag, cCommBuffer *buffer,
int& receivedTag,
int& sourceProcId)
override;
112 virtual bool receiveNonblocking(
int filtTag, cCommBuffer *buffer,
int& receivedTag,
int& sourceProcId)
override;