Message de sérialisation utilisant un BasicSerializer. Plus de détails...
Fonctions membres publiques | |
BasicSerializeMessage & | operator= (const BasicSerializeMessage &)=delete |
BasicSerializeMessage (const BasicSerializeMessage &)=delete | |
bool | isSend () const override |
true s'il faut envoyer, false s'il faut recevoir | |
eMessageType | messageType () const override |
Type du message. | |
Int32 | destRank () const override |
Rang du destinataire (si isSend() est vrai) ou envoyeur. | |
Int32 | origRank () const override |
Rang de l'envoyeur du message Voir aussi destRank() pour une interprétation suivant la valeur de isSend() | |
MessageRank | destination () const override |
Rang du destinataire (si isSend() est vrai) ou de l'envoyeur. | |
MessageRank | source () const override |
Rang de l'envoyeur du message. | |
ISerializer * | serializer () override |
Sérialiseur. | |
bool | finished () const override |
true si le message est terminé | |
void | setFinished (bool v) override |
Positionne l'état 'fini' du message. | |
void | setTag (Int32 tag) override |
Int32 | tag () const override |
Tag interne du message. | |
void | setInternalTag (MessageTag tag) override |
Positionne un tag interne pour le message. | |
MessageTag | internalTag () const override |
Tag interne du message. | |
MessageId | _internalMessageId () const override |
Identificant du message. | |
void | setStrategy (eStrategy strategy) override |
Positionne la stratégie d'envoi/réception. | |
eStrategy | strategy () const override |
Stratégie utilisée pour les envois/réceptions. | |
bool | isProcessed () const override |
Indique si le message a déjà été traité. | |
BasicSerializer & | buffer () |
BasicSerializer * | trueSerializer () const |
Int32 | messageNumber () const |
void | setMessageNumber (Int32 v) |
void | setIsProcessed (bool v) |
ePointToPointMessageType | _internalMessageType () const |
![]() | |
virtual | ~ISerializeMessage ()=default |
Libère les ressources. | |
Fonctions membres publiques statiques | |
static MessageTag | defaultTag () |
Tag par défaut pour les messages de sérialisation. | |
static Ref< ISerializeMessage > | create (MessageRank source, MessageRank destination, ePointToPointMessageType type) |
static Ref< ISerializeMessage > | create (MessageRank source, MessageRank destination, MessageTag tag, ePointToPointMessageType type) |
static Ref< ISerializeMessage > | create (MessageRank source, MessageId message_id) |
Attributs publics statiques | |
static const Int32 | DEFAULT_SERIALIZE_TAG_VALUE = 101 |
Fonctions membres protégées | |
BasicSerializeMessage (MessageRank orig_rank, MessageRank dest_rank, ePointToPointMessageType mtype) | |
BasicSerializeMessage (MessageRank orig_rank, MessageRank dest_rank, MessageTag tag, ePointToPointMessageType mtype) | |
BasicSerializeMessage (MessageRank orig_rank, MessageRank dest_rank, ePointToPointMessageType type, BasicSerializer *serializer) | |
BasicSerializeMessage (MessageRank orig_rank, MessageRank dest_rank, MessageTag tag, ePointToPointMessageType type, BasicSerializer *serializer) | |
BasicSerializeMessage (MessageRank orig_rank, MessageId message_id, BasicSerializer *serializer) | |
Fonctions membres protégées statiques | |
static ePointToPointMessageType | _toP2PType (eMessageType mtype) |
static eMessageType | _toMessageType (ePointToPointMessageType mtype) |
Fonctions membres privées | |
void | _init () |
Attributs privés | |
MessageRank | m_orig_rank |
Rang de l'expéditeur de la requête. | |
MessageRank | m_dest_rank |
Rang du destinataire du message. | |
MessageTag | m_tag = defaultTag() |
eMessageType | m_old_message_type |
Type du message (obsolète) | |
ePointToPointMessageType | m_message_type |
Type du message. | |
eStrategy | m_strategy = eStrategy::Default |
bool | m_is_send |
true si envoie, false si réception | |
BasicSerializer * | m_buffer = nullptr |
Tampon contenant les infos. | |
bool | m_finished = false |
true si message terminé | |
MessageId | m_message_id |
MessageId associé (peut être nul) | |
Int32 | m_message_number = 0 |
bool | m_is_processed = false |
Numéro du message lorsqu'on utilise plusieurs messages. | |
Membres hérités additionnels | |
![]() | |
enum | eMessageType { MT_Send , MT_Recv , MT_Broadcast } |
enum class | eStrategy { Default , OneMessage } |
Stratégie d'envoi/réception. Plus de détails... | |
Message de sérialisation utilisant un BasicSerializer.
Cette classe est interne à Arccore et ne doit pas être utilisée directement. Si on souhaite créer une instance de ISerializeMessage, il faut passer créer une liste de messages via ISerializeMessageList::createMessage();
Un message consiste en une série d'octets envoyés ou recu d'un rang (source()) à un autre (destination()). Si isSend() est vrai, c'est source() qui envoie des octets à destination(), sinon c'est source() qui recoit des octets de destination(). S'il s'agit d'un message de réception, le serializer() est alloué et remplit automatiquement.
Définition à la ligne 48 du fichier BasicSerializeMessage.h.
|
override |
Définition à la ligne 121 du fichier BasicSerializeMessage.cc.
|
protected |
Définition à la ligne 111 du fichier BasicSerializeMessage.cc.
|
protected |
Définition à la ligne 101 du fichier BasicSerializeMessage.cc.
|
protected |
Définition à la ligne 72 du fichier BasicSerializeMessage.cc.
|
protected |
Définition à la ligne 54 du fichier BasicSerializeMessage.cc.
|
protected |
Définition à la ligne 83 du fichier BasicSerializeMessage.cc.
|
private |
Définition à la ligne 130 du fichier BasicSerializeMessage.cc.
|
inlineoverridevirtual |
Identificant du message.
Implémente Arcane::MessagePassing::ISerializeMessage.
Définition à la ligne 107 du fichier BasicSerializeMessage.h.
Références m_message_id.
|
inline |
Définition à la ligne 119 du fichier BasicSerializeMessage.h.
|
staticprotected |
Définition à la ligne 41 du fichier BasicSerializeMessage.cc.
|
staticprotected |
Définition à la ligne 27 du fichier BasicSerializeMessage.cc.
|
inline |
Définition à la ligne 114 du fichier BasicSerializeMessage.h.
|
static |
Définition à la ligne 179 du fichier BasicSerializeMessage.cc.
|
static |
Définition à la ligne 169 du fichier BasicSerializeMessage.cc.
|
static |
Définition à la ligne 158 du fichier BasicSerializeMessage.cc.
|
inlinestatic |
Tag par défaut pour les messages de sérialisation.
Définition à la ligne 56 du fichier BasicSerializeMessage.h.
Référencé par Arcane::MpiParallelMng::sendSerializer().
|
inlineoverridevirtual |
Rang du destinataire (si isSend() est vrai) ou de l'envoyeur.
Dans le cas d'une réception, le rang peut valoir nul pour indiquer qu'on souhaite recevoir de n'importe qui. rang en spécifiant A_NULL_RANK.
Implémente Arcane::MessagePassing::ISerializeMessage.
Définition à la ligne 98 du fichier BasicSerializeMessage.h.
Références m_dest_rank.
|
inlineoverridevirtual |
Rang du destinataire (si isSend() est vrai) ou envoyeur.
Dans le cas d'une réception, il est possible de spécifier n'importe quel rang en spécifiant A_NULL_RANK.
Implémente Arcane::MessagePassing::ISerializeMessage.
Définition à la ligne 96 du fichier BasicSerializeMessage.h.
Références m_dest_rank.
|
inlineoverridevirtual |
true si le message est terminé
Implémente Arcane::MessagePassing::ISerializeMessage.
Définition à la ligne 101 du fichier BasicSerializeMessage.h.
Références m_finished.
|
inlineoverridevirtual |
Tag interne du message.
Implémente Arcane::MessagePassing::ISerializeMessage.
Définition à la ligne 106 du fichier BasicSerializeMessage.h.
|
inlineoverridevirtual |
Indique si le message a déjà été traité.
Si le message a déjà été traité, il n'est pas possible de changer certaines caractéristiques (comme la stratégie ou le tag)
Implémente Arcane::MessagePassing::ISerializeMessage.
Définition à la ligne 110 du fichier BasicSerializeMessage.h.
Références m_is_processed.
|
inlineoverridevirtual |
true s'il faut envoyer, false s'il faut recevoir
Implémente Arcane::MessagePassing::ISerializeMessage.
Définition à la ligne 94 du fichier BasicSerializeMessage.h.
Références m_is_send.
|
inline |
Définition à la ligne 116 du fichier BasicSerializeMessage.h.
|
inlineoverridevirtual |
Type du message.
Implémente Arcane::MessagePassing::ISerializeMessage.
Définition à la ligne 95 du fichier BasicSerializeMessage.h.
Références m_old_message_type.
|
inlineoverridevirtual |
Rang de l'envoyeur du message Voir aussi destRank() pour une interprétation suivant la valeur de isSend()
Implémente Arcane::MessagePassing::ISerializeMessage.
Définition à la ligne 97 du fichier BasicSerializeMessage.h.
Références m_orig_rank.
|
inlineoverridevirtual |
Sérialiseur.
Implémente Arcane::MessagePassing::ISerializeMessage.
Définition à la ligne 100 du fichier BasicSerializeMessage.h.
Références m_buffer.
|
inlineoverridevirtual |
Positionne l'état 'fini' du message.
Implémente Arcane::MessagePassing::ISerializeMessage.
Définition à la ligne 102 du fichier BasicSerializeMessage.h.
Références m_finished.
|
inlineoverridevirtual |
Positionne un tag interne pour le message.
Ce tag est utile s'il faut envoyer/recevoir plusieurs messages à un même couple origin/destination.
Cette méthode est interne à Arccore.
Implémente Arcane::MessagePassing::ISerializeMessage.
Définition à la ligne 105 du fichier BasicSerializeMessage.h.
Références tag().
|
inline |
Définition à la ligne 118 du fichier BasicSerializeMessage.h.
|
inline |
Définition à la ligne 117 du fichier BasicSerializeMessage.h.
|
overridevirtual |
Positionne la stratégie d'envoi/réception.
La stratégie utilisée doit être la même pour le message envoyé et le message de réception sinon le comportement est indéfini.
Implémente Arcane::MessagePassing::ISerializeMessage.
Définition à la ligne 147 du fichier BasicSerializeMessage.cc.
Références m_is_processed, et strategy().
|
inlineoverridevirtual |
Implémente Arcane::MessagePassing::ISerializeMessage.
Définition à la ligne 103 du fichier BasicSerializeMessage.h.
Références tag().
|
inlineoverridevirtual |
Rang de l'envoyeur du message.
Voir aussi destination() pour une interprétation suivant la valeur de isSend()
Implémente Arcane::MessagePassing::ISerializeMessage.
Définition à la ligne 99 du fichier BasicSerializeMessage.h.
Références m_orig_rank.
|
inlineoverridevirtual |
Stratégie utilisée pour les envois/réceptions.
Implémente Arcane::MessagePassing::ISerializeMessage.
Définition à la ligne 109 du fichier BasicSerializeMessage.h.
Référencé par setStrategy().
|
inlineoverridevirtual |
Tag interne du message.
Implémente Arcane::MessagePassing::ISerializeMessage.
Définition à la ligne 104 du fichier BasicSerializeMessage.h.
Référencé par setInternalTag(), et setTag().
|
inline |
Définition à la ligne 115 du fichier BasicSerializeMessage.h.
|
static |
Définition à la ligne 53 du fichier BasicSerializeMessage.h.
|
private |
Tampon contenant les infos.
Définition à la ligne 135 du fichier BasicSerializeMessage.h.
Référencé par serializer().
|
private |
Rang du destinataire du message.
Définition à la ligne 129 du fichier BasicSerializeMessage.h.
Référencé par destination(), et destRank().
|
private |
true
si message terminé
Définition à la ligne 136 du fichier BasicSerializeMessage.h.
Référencé par finished(), et setFinished().
|
private |
Numéro du message lorsqu'on utilise plusieurs messages.
Définition à la ligne 139 du fichier BasicSerializeMessage.h.
Référencé par isProcessed(), et setStrategy().
|
private |
true
si envoie, false
si réception
Définition à la ligne 134 du fichier BasicSerializeMessage.h.
Référencé par isSend().
|
private |
MessageId associé (peut être nul)
Définition à la ligne 137 du fichier BasicSerializeMessage.h.
Référencé par _internalMessageId().
|
private |
Définition à la ligne 138 du fichier BasicSerializeMessage.h.
|
private |
Type du message.
Définition à la ligne 132 du fichier BasicSerializeMessage.h.
|
private |
Type du message (obsolète)
Définition à la ligne 131 du fichier BasicSerializeMessage.h.
Référencé par messageType().
|
private |
Rang de l'expéditeur de la requête.
Définition à la ligne 128 du fichier BasicSerializeMessage.h.
Référencé par origRank(), et source().
|
private |
Définition à la ligne 133 du fichier BasicSerializeMessage.h.
|
private |
Définition à la ligne 130 du fichier BasicSerializeMessage.h.