|
C++ mpi module for stochmagnet_main Package
|
This class is a class to send / receive unblocking message from one to core to one core. More...
#include <MPI_CoreToCoreIMessage.h>


Public Member Functions | |
| MPI_CoreToCoreIMessage () | |
| create | |
| virtual | ~MPI_CoreToCoreIMessage (void) |
| destroy | |
| virtual tMemSize | getMemorySize () const override |
| return the memory size of the class | |
| virtual tMemSize | getContentsMemorySize () const override |
| return nthe memory size of the included associations More... | |
| virtual void | send (const MPI_Environment &env, const tMPICoreId &dstCore, const std::valarray< T > &data, const tMPITag &tag) override |
| none blocking of sending a data with flag to dstCore More... | |
| virtual void | send (const MPI_Environment &env, const tMPICoreId &dstCore, const T *data, const tMPICount &nData, const tMPIType &dataType, const tMPITag &tag) override |
| blocking send a data with tag to dstCore More... | |
| virtual void | receive (const MPI_Environment &env, const tMPICoreId &srcCore, std::valarray< T > &data, const tMPITag &tag) override |
| receiving a data with flag to dstCore More... | |
| virtual void | receive (const MPI_Environment &env, const tMPICoreId &dstCore, T *buffer, const tMPICount &nData, const tMPIType &dataType, const tMPITag &tag) override |
| blocking send a data with tag to dstCore More... | |
| virtual void | sendNReceive (const MPI_Environment &env, const tMPICoreId &dstCore, const tMPICoreId &srcCore, const T &sentData, const tMPITag &sentTag, T &receivedData, const tMPITag &receivedTag) override |
| receiving a data with flag to dstCore More... | |
| virtual void | sendNReceive (const MPI_Environment &env, const tMPICoreId &dstCore, const tMPICoreId &srcCore, const std::valarray< T > &sentData, const tMPITag &sentTag, std::valarray< T > &receivedData, const tMPITag &receivedTag) override |
| receiving a data with flag to dstCore More... | |
| virtual void | sendNReceive (const MPI_Environment &env, const tMPICoreId &dstCore, const tMPICoreId &srcCore, const T *sentData, const tMPICount &nSentData, const tMPIType &sentDataType, const tMPITag &sentTag, T *receivedData, const tMPICount &nReceivedData, const tMPIType &receivedDataType, const tMPITag &receivedTag) override |
| receiving a data with flag to dstCore More... | |
| virtual void | exchange (const MPI_Environment &env, const tMPICoreId &dstCore, std::valarray< T > &data, const tMPITag &tag) override |
| receiving a data with flag to dstCore More... | |
| virtual int | wait () override |
| wait the end of the message | |
| virtual void | getElementsNumber (tMPICount &nElements) override |
| get the number of element of the message More... | |
| virtual tBoolean | isFinished () override |
| return true if the communication is finihed | |
Public Member Functions inherited from CORE_Object | |
| template<class T > | |
| std::shared_ptr< T > | getSharedPointer () |
| return the shared pointer for this More... | |
| template<class T > | |
| std::shared_ptr< const T > | getConstSharedPointer () const |
| return a const shared pointer for this More... | |
| template<class T > | |
| tBoolean | isInstanceOf () const |
| test if the clas T is an instance of this class More... | |
| tString | getClassName () const |
| return the name of the class More... | |
| tString | getPointerString () const |
| retrun the pointer of the class as a string More... | |
| tString | getIdentityString () const |
| retrun the string identification of the class More... | |
| virtual tString | toString () const |
| return the string representation of the object node More... | |
Static Public Member Functions | |
| static CORE_UniquePointer< SelfClass > | New () |
| create an unique instance of the class This More... | |
| static void | Send (const MPI_Environment &env, const tMPICoreId &dstCore, const T &data, const tMPITag &tag, tMPIRequest &request) |
| none blocking of sending a data with flag to dstCore More... | |
| static void | Send (const MPI_Environment &env, const tMPICoreId &dstCore, const T *data, const tMPICount &nData, const tMPITag &tag, tMPIRequest &request) |
| none blocking of sending a data with flag to dstCore More... | |
| static void | Send (const MPI_Environment &env, const tMPICoreId &dstCore, const std::valarray< T > &data, const tMPITag &tag, tMPIRequest &request) |
| none blocking of sending a data with flag to dstCore More... | |
| static void | Send (const MPI_Environment &env, const tMPICoreId &dstCore, const T *data, const tMPICount &nData, const tMPIType &dataType, const tMPITag &tag, tMPIRequest &request) |
| blocking send a data with tag to dstCore More... | |
| static tBoolean | Receive (const MPI_Environment &env, const tMPICoreId &srcCore, T &data, const tMPITag &tag, tMPIRequest &request) |
| blocking receive a data with tag from source core More... | |
| static tBoolean | Receive (const MPI_Environment &env, const tMPICoreId &srcCore, std::valarray< T > &data, const tMPITag &tag, tMPIRequest &request) |
| receive a data with tag from source core More... | |
| static void | Receive (const MPI_Environment &env, const tMPICoreId &srcCore, T *buffer, const tMPICount &nData, const tMPITag &tag, tMPIRequest &request) |
| blocking receive a data with tag from srcCore More... | |
| static void | Receive (const MPI_Environment &env, const tMPICoreId &dstCore, T *buffer, const tMPICount &nData, const tMPIType &dataType, const tMPITag &tag, tMPIRequest &request) |
| blocking send a data with tag to dstCore More... | |
| static void | SendNReceive (const MPI_Environment &env, const tMPICoreId &dstCore, const tMPICoreId &srcCore, const T &sentData, const tMPITag &sentTag, T &receivedData, const tMPITag &receivedTag, tMPIRequest requests[2]) |
| blocking swapping a data with tag to dst Core and receive a data from src core More... | |
| static void | SendNReceive (const MPI_Environment &env, const tMPICoreId &dstCore, const T *sentData, const int &nSentData, const tMPITag &sentTag, T *receivedData, const int &nReceivedData, const tMPITag &receivedTag, tMPIRequest requests[2]) |
| blocking swapping a data with tag to dst Core and receive a data from src core More... | |
| static void | SendNReceive (const MPI_Environment &env, const tMPICoreId &dstCore, const tMPICoreId &srcCore, const std::valarray< T > &sentData, const tMPITag &sentTag, std::valarray< T > &receivedData, const tMPITag &receivedTag, tMPIRequest requests[2]) |
| blocking swapping a data with tag to dst Core and receive a data from src core More... | |
| static void | SendNReceive (const MPI_Environment &env, const tMPICoreId &dstCore, const tMPICoreId &srcCore, const T *sentData, const tMPICount &nSentData, const tMPIType &sentDataType, const tMPITag &sentTag, T *receivedData, const tMPICount &nReceivedData, const tMPIType &receivedDataType, const tMPITag &receivedTag, tMPIRequest requests[2]) |
| receiving a data with flag to dstCore More... | |
| static void | SendNReceive (const MPI_Environment &env, const tMPICoreId &dstCore, const T *sentData, const tMPICount &nSentData, const tMPIType &sentDataType, const tMPITag &sentTag, T *receivedData, const tMPICount &nReceivedData, const tMPIType &receivedDataType, const tMPITag &receivedTag, tMPIRequest requests[2]) |
| receiving a data with flag to dstCore More... | |
Static Public Member Functions inherited from MPI_CoreToCoreMessage< T > | |
| static tULLInt | WaitAllMessages (const std::vector< CORE_UniquePointer< MPI_CoreToCoreMessage< T >>> &messages) |
| wait for the end of communication of all messages More... | |
Static Public Member Functions inherited from CORE_Object | |
| static tBoolean | EnableMemoryStack (const tBoolean &isMemoryChecked) |
| enable the memory stack More... | |
| static void | EnableMemoryStack () |
| enable the memory stack | |
| static void | DisableMemoryStack () |
| disable the memory stack | |
| static tBoolean | IsMemoryStackEnabled () |
| return trur if the memory stack is enabled | |
| static tString | MemoryStackToString () |
| get the memory stack in string More... | |
| static tIndex | GetRegisteredClassesNumber () |
| get the memory stack in string More... | |
Additional Inherited Members | |
Protected Member Functions inherited from MPI_CoreToCoreMessage< T > | |
| MPI_CoreToCoreMessage () | |
| create | |
| virtual | ~MPI_CoreToCoreMessage (void) |
| destroy | |
Protected Member Functions inherited from MPI_Object | |
| MPI_Object (void) | |
| create | |
| virtual | ~MPI_Object (void) |
| destroy | |
Protected Member Functions inherited from CORE_Object | |
| CORE_Object () | |
| build an instance of the object | |
| virtual | ~CORE_Object () |
| destroy the instance of object std | |
This class is a class to send / receive unblocking message from one to core to one core.
| T | : type of message to exchange |
disadvantage
|
inlineoverridevirtual |
receiving a data with flag to dstCore
| [in] | env | environment of the destination Core |
| [in] | srcCore | id of the source core |
| [in,out] | data | data to receive |
| [in] | tag | tag of the data |
Implements MPI_CoreToCoreMessage< T >.
|
inlineoverridevirtual |
return nthe memory size of the included associations
Reimplemented from MPI_CoreToCoreMessage< T >.
|
inlineoverridevirtual |
get the number of element of the message
| [out] | nElements | : number of elemet of type T |
Implements MPI_CoreToCoreMessage< T >.
|
inlinestatic |
create an unique instance of the class This
|
inlineoverridevirtual |
blocking send a data with tag to dstCore
| [in] | env | environment of the destination Core |
| [in] | dstCore | id of the destination core |
| [in] | buffer | adress of the buffet to receive data |
| [in] | nData | number of dataType to receive |
| [in] | dataType | data type |
| [in] | tag | tag of the data |
Implements MPI_CoreToCoreMessage< T >.
|
inlinestatic |
blocking send a data with tag to dstCore
| [in] | env | environment of the destination Core |
| [in] | dstCore | id of the destination core |
| [in] | buffer | adress of the buffet to receive data |
| [in] | nData | number of dataType to receive |
| [in] | dataType | data type |
| [in] | tag | tag of the data |
| [out] | request | : request to get the status of the message |
|
inlineoverridevirtual |
receiving a data with flag to dstCore
| [in] | env | environment of the destination Core |
| [in] | srcCore | id of the source core |
| [in] | data | data to receive |
| [in] | tag | : tag of the data |
Implements MPI_CoreToCoreMessage< T >.
|
inlinestatic |
receive a data with tag from source core
| [in] | env | environment of the source Core |
| [in] | srcCore | id of the source core |
| [out] | data | data to receive |
| [in] | tag | tag of the data |
| [out] | request | : request of the communication to get status |
|
inlinestatic |
blocking receive a data with tag from source core
| [in] | env | environment of the source Core |
| [in] | srcCore | id of the source core |
| [out] | data | data to receive |
| [in] | tag | tag of the data |
| [out] | request | of the commnications |
|
inlinestatic |
blocking receive a data with tag from srcCore
| [in] | env | environment of the source Core |
| [in] | srcCore | id of the source core |
| [out] | buffer | : adress of the buffer to resize ndata of size(T) |
| [in] | nData | number of data of type T to receive |
| [in] | tag | tag of the data |
| [out] | request | request to get the status of the message |
|
inlineoverridevirtual |
none blocking of sending a data with flag to dstCore
| [in] | env | environment of the destination Core |
| [in] | dstCore | id of the destination core |
| [in] | data | data to send |
| [in] | nData | number of data of type T to send |
| [in] | flag | flag of the data |
Implements MPI_CoreToCoreMessage< T >.
|
inlinestatic |
none blocking of sending a data with flag to dstCore
| [in] | env | environment of the destination Core |
| [in] | dstCore | id of the destination core |
| [in] | data | data to send |
| [in] | tag | tag of the message |
| [out] | request | : request of the message |
|
inlinestatic |
none blocking of sending a data with flag to dstCore
| [in] | env | environment of the destination Core |
| [in] | dstCore | id of the destination core |
| [in] | data | data to send |
| [in] | nData | number of data to send |
| [in] | tag | tagof the message |
| [out] | request | : request of the message |
|
inlinestatic |
none blocking of sending a data with flag to dstCore
| [in] | env | environment of the destination Core |
| [in] | dstCore | id of the destination core |
| [in] | data | data to send |
| [in] | nData | number of data of type T to send |
| [in] | tag | tagof the message |
| [out] | request | : request of the message |
|
inlineoverridevirtual |
blocking send a data with tag to dstCore
| [in] | env | environment of the destination Core |
| [in] | dstCore | id of the destination core |
| [in] | buffer | : buffer of the data |
| [in] | nData | number of data of type dataType to send |
| [in] | tag | tag of the data |
Implements MPI_CoreToCoreMessage< T >.
|
inlinestatic |
blocking send a data with tag to dstCore
| [in] | env | environment of the destination Core |
| [in] | dstCore | id of the destination core |
| [in] | buffer | : buffer of the data |
| [in] | nData | number of data of type dataType to send |
| [in] | tag | tag of the data |
|
inlinestatic |
blocking swapping a data with tag to dst Core and receive a data from src core
| [in] | env | environment of the destination Core |
| [in] | dstCore | id of the destination/source core of the send/received data from/to current core |
| [in] | sentData | data to send |
| [in] | nSentData | number of data to send |
| [in] | sentTag | tag of the data |
| [in] | receivedData | data to send |
| [in] | nReceivedData | number of data to send |
| [in] | receivedTag | tag of the data |
| [out] | requests | : requests of the status of the messages |
|
inlinestatic |
receiving a data with flag to dstCore
| [in] | env | environment of the destination Core |
| [in] | dstCore | id of the dst/src core to/from the sent/received data from/to current core |
| [in] | sentData | data to sent |
| [in] | nSentData | number of data to sent |
| [in] | sentDataType | type of data to sent |
| [in] | sentTag | tag of thesent message |
| [in] | receivedData | data to receive |
| [in] | nReceivedData | number of data to receive |
| [in] | receivedDataType | type of data to receive |
| [in] | receivedTag | tag of the received message |
| [out] | requests | : requests for getting the status of the messages |
|
inlineoverridevirtual |
receiving a data with flag to dstCore
| [in] | env | environment of the destination Core |
| [in] | dstCore | id of the dst Core of the sent data |
| [in] | srcCore | id of the src Core of the received data |
| [in] | sentData | data to sent |
| [in] | sentTag | tag of thesent message |
| [in] | receivedData | data to receive |
| [in] | receivedTag | tag of the received message |
Implements MPI_CoreToCoreMessage< T >.
|
inlinestatic |
blocking swapping a data with tag to dst Core and receive a data from src core
| [in] | env | environment of the destination Core |
| [in] | dstCore | id of the destination/source core of the send/received data from/to current core |
| [in] | sentData | data to send |
| [in] | nSentData | number of data to send |
| [in] | sentTag | tag of the data |
| [in] | receivedData | data to send |
| [in] | nReceivedData | number of data to send |
| [in] | receivedTag | tag of the data |
| [out] | requests | : requests of the status of the messages |
|
inlineoverridevirtual |
receiving a data with flag to dstCore
| [in] | env | environment of the destination Core |
| [in] | dstCore | id of the dst Core of the sent data |
| [in] | srcCore | id of the src Core of the received data |
| [in] | sentData | data to sent |
| [in] | sentTag | tag of thesent message |
| [in] | receivedData | data to receive |
| [in] | receivedTag | tag of the received message |
Implements MPI_CoreToCoreMessage< T >.
|
inlinestatic |
blocking swapping a data with tag to dst Core and receive a data from src core
| [in] | env | environment of the destination Core |
| [in] | dstCore | id of the destination core of the send data from current core |
| [in] | srcCore | id of the source core of the received data to current core |
| [in] | sentData | data to send |
| [in] | sentTag | tag of the data |
| [in] | receivedData | data to send |
| [in] | receivedTag | tag of the data |
| [out] | requests | : requests of the status of the messages |
|
inlineoverridevirtual |
receiving a data with flag to dstCore
| [in] | env | environment of the destination Core |
| [in] | dstCore | id of the dst core to the sent data from current core |
| [in] | srcCore | id of the src core from the received data to current core |
| [in] | sentData | data to sent |
| [in] | nSentData | number of data to sent |
| [in] | sentDataType | type of data to sent |
| [in] | sentTag | tag of thesent message |
| [in] | receivedData | data to receive |
| [in] | nReceivedData | number of data to receive |
| [in] | receivedDataType | type of data to receive |
| [in] | receivedTag | tag of the received message |
Implements MPI_CoreToCoreMessage< T >.
|
inlinestatic |
receiving a data with flag to dstCore
| [in] | env | environment of the destination Core |
| [in] | dstCore | id of the dst Core of the sent data |
| [in] | srcCore | id of the src Core of the received data |
| [in] | sentData | data to sent |
| [in] | nSentData | number of data to sent |
| [in] | sentDataType | type of data to sent |
| [in] | sentTag | tag of thesent message |
| [in] | receivedData | data to receive |
| [in] | nReceivedData | number of data to receive |
| [in] | receivedDataType | type of data to receive |
| [in] | receivedTag | tag of the received message |
| [out] | requests | : requests for getting the status of the message |