14#include "arccore/message_passing/BasicSerializeMessage.h"
15#include "arccore/base/FatalErrorException.h"
21namespace Arccore::MessagePassing::internal
28_toP2PType(eMessageType mtype)
31 case MT_Send:
return MsgSend;
32 case MT_Recv:
return MsgReceive;
33 case MT_Broadcast:
return MsgSend;
35 ARCCORE_FATAL(
"Unsupported value '{0}'",mtype);
41ISerializeMessage::eMessageType BasicSerializeMessage::
45 case MsgSend:
return MT_Send;
46 case MsgReceive:
return MT_Recv;
48 ARCCORE_FATAL(
"Unsupported value '{0}'",type);
54BasicSerializeMessage::
58: m_orig_rank(orig_rank)
59, m_dest_rank(dest_rank)
61, m_old_message_type(_toMessageType(type))
72BasicSerializeMessage::
83BasicSerializeMessage::
86: m_orig_rank(orig_rank)
89, m_old_message_type(MT_Recv)
90, m_message_type(MsgReceive)
93, m_message_id(message_id)
101BasicSerializeMessage::
111BasicSerializeMessage::
121BasicSerializeMessage::
122~BasicSerializeMessage()
130void BasicSerializeMessage::
151 ARCCORE_FATAL(
"Can not change strategy if isProcessed() is true");
180create(MessageRank source,MessageId message_id)
Gestion des références à une classe C++.
Implémentation basique de 'ISerializer'.
Interface d'un message de sérialisation entre IMessagePassingMng.
eStrategy
Stratégie d'envoi/réception.
MessageSourceInfo sourceInfo() const
Informations sur la source du message;.
MessageTag tag() const
Tag du message.
MessageRank rank() const
Rang de la source.
Message de sérialisation utilisant un BasicSerializer.
bool m_is_send
true si envoie, false si réception
MessageRank destination() const override
Rang du destinataire (si isSend() est vrai) ou de l'envoyeur.
eMessageType m_old_message_type
Type du message (obsolète)
eStrategy strategy() const override
Stratégie utilisée pour les envois/réceptions.
bool m_is_processed
Numéro du message lorsqu'on utilise plusieurs messages.
void setStrategy(eStrategy strategy) override
Positionne la stratégie d'envoi/réception.
Int32 tag() const override
Tag interne du message.
BasicSerializer * m_buffer
Tampon contenant les infos.
MessageRank source() const override
Rang de l'envoyeur du message.
Référence à une instance.
ePointToPointMessageType
Type de message point à point.
auto makeRef(InstanceType *t) -> Ref< InstanceType >
Créé une référence sur un pointeur.