Arcane  v3.16.0.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::MessagePassing::BasicSerializeMessage

Message de sérialisation utilisant un BasicSerializer. Plus de détails...

#include </__w/arcaneframework.github.io/arcaneframework.github.io/framework/arccore/src/message_passing/arccore/message_passing/BasicSerializeMessage.h>

+ Graphe d'héritage de Arcane::MessagePassing::BasicSerializeMessage:
+ Graphe de collaboration de Arcane::MessagePassing::BasicSerializeMessage:

Fonctions membres publiques

BasicSerializeMessageoperator= (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.
 
ISerializerserializer () 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é.
 
BasicSerializerbuffer ()
 
BasicSerializertrueSerializer () const
 
Int32 messageNumber () const
 
void setMessageNumber (Int32 v)
 
void setIsProcessed (bool v)
 
ePointToPointMessageType _internalMessageType () const
 
- Fonctions membres publiques hérités de Arcane::MessagePassing::ISerializeMessage
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< ISerializeMessagecreate (MessageRank source, MessageRank destination, ePointToPointMessageType type)
 
static Ref< ISerializeMessagecreate (MessageRank source, MessageRank destination, MessageTag tag, ePointToPointMessageType type)
 
static Ref< ISerializeMessagecreate (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
 
BasicSerializerm_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

- Types publics hérités de Arcane::MessagePassing::ISerializeMessage
enum  eMessageType { MT_Send , MT_Recv , MT_Broadcast }
 
enum class  eStrategy { Default , OneMessage }
 Stratégie d'envoi/réception. Plus de détails...
 

Description détaillée

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.

Documentation des constructeurs et destructeur

◆ ~BasicSerializeMessage()

Arcane::MessagePassing::internal::BasicSerializeMessage::~BasicSerializeMessage ( )
override

Définition à la ligne 121 du fichier BasicSerializeMessage.cc.

◆ BasicSerializeMessage() [1/5]

Arcane::MessagePassing::internal::BasicSerializeMessage::BasicSerializeMessage ( MessageRank orig_rank,
MessageRank dest_rank,
ePointToPointMessageType mtype )
protected

Définition à la ligne 111 du fichier BasicSerializeMessage.cc.

◆ BasicSerializeMessage() [2/5]

Arcane::MessagePassing::internal::BasicSerializeMessage::BasicSerializeMessage ( MessageRank orig_rank,
MessageRank dest_rank,
MessageTag tag,
ePointToPointMessageType mtype )
protected

Définition à la ligne 101 du fichier BasicSerializeMessage.cc.

◆ BasicSerializeMessage() [3/5]

Arcane::MessagePassing::internal::BasicSerializeMessage::BasicSerializeMessage ( MessageRank orig_rank,
MessageRank dest_rank,
ePointToPointMessageType type,
BasicSerializer * serializer )
protected

Définition à la ligne 72 du fichier BasicSerializeMessage.cc.

◆ BasicSerializeMessage() [4/5]

Arcane::MessagePassing::internal::BasicSerializeMessage::BasicSerializeMessage ( MessageRank orig_rank,
MessageRank dest_rank,
MessageTag tag,
ePointToPointMessageType type,
BasicSerializer * serializer )
protected

Définition à la ligne 54 du fichier BasicSerializeMessage.cc.

◆ BasicSerializeMessage() [5/5]

Arcane::MessagePassing::internal::BasicSerializeMessage::BasicSerializeMessage ( MessageRank orig_rank,
MessageId message_id,
BasicSerializer * serializer )
protected

Définition à la ligne 83 du fichier BasicSerializeMessage.cc.

Documentation des fonctions membres

◆ _init()

void Arcane::MessagePassing::internal::BasicSerializeMessage::_init ( )
private

Définition à la ligne 130 du fichier BasicSerializeMessage.cc.

◆ _internalMessageId()

MessageId Arcane::MessagePassing::internal::BasicSerializeMessage::_internalMessageId ( ) const
inlineoverridevirtual

Identificant du message.

Implémente Arcane::MessagePassing::ISerializeMessage.

Définition à la ligne 107 du fichier BasicSerializeMessage.h.

◆ _internalMessageType()

ePointToPointMessageType Arcane::MessagePassing::internal::BasicSerializeMessage::_internalMessageType ( ) const
inline

Définition à la ligne 119 du fichier BasicSerializeMessage.h.

◆ _toMessageType()

ISerializeMessage::eMessageType Arcane::MessagePassing::internal::BasicSerializeMessage::_toMessageType ( ePointToPointMessageType mtype)
staticprotected

Définition à la ligne 41 du fichier BasicSerializeMessage.cc.

◆ _toP2PType()

ePointToPointMessageType Arcane::MessagePassing::internal::BasicSerializeMessage::_toP2PType ( eMessageType mtype)
staticprotected

Définition à la ligne 27 du fichier BasicSerializeMessage.cc.

◆ buffer()

BasicSerializer & Arcane::MessagePassing::internal::BasicSerializeMessage::buffer ( )
inline

Définition à la ligne 114 du fichier BasicSerializeMessage.h.

◆ create() [1/3]

Ref< ISerializeMessage > Arcane::MessagePassing::internal::BasicSerializeMessage::create ( MessageRank source,
MessageId message_id )
static

Définition à la ligne 179 du fichier BasicSerializeMessage.cc.

◆ create() [2/3]

Ref< ISerializeMessage > Arcane::MessagePassing::internal::BasicSerializeMessage::create ( MessageRank source,
MessageRank destination,
ePointToPointMessageType type )
static

Définition à la ligne 169 du fichier BasicSerializeMessage.cc.

◆ create() [3/3]

Ref< ISerializeMessage > Arcane::MessagePassing::internal::BasicSerializeMessage::create ( MessageRank source,
MessageRank destination,
MessageTag tag,
ePointToPointMessageType type )
static

Définition à la ligne 158 du fichier BasicSerializeMessage.cc.

◆ defaultTag()

static MessageTag Arcane::MessagePassing::internal::BasicSerializeMessage::defaultTag ( )
inlinestatic

Tag par défaut pour les messages de sérialisation.

Définition à la ligne 56 du fichier BasicSerializeMessage.h.

◆ destination()

MessageRank Arcane::MessagePassing::internal::BasicSerializeMessage::destination ( ) const
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.

◆ destRank()

Int32 Arcane::MessagePassing::internal::BasicSerializeMessage::destRank ( ) const
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.

◆ finished()

bool Arcane::MessagePassing::internal::BasicSerializeMessage::finished ( ) const
inlineoverridevirtual

true si le message est terminé

Implémente Arcane::MessagePassing::ISerializeMessage.

Définition à la ligne 101 du fichier BasicSerializeMessage.h.

◆ internalTag()

MessageTag Arcane::MessagePassing::internal::BasicSerializeMessage::internalTag ( ) const
inlineoverridevirtual

Tag interne du message.

Implémente Arcane::MessagePassing::ISerializeMessage.

Définition à la ligne 106 du fichier BasicSerializeMessage.h.

◆ isProcessed()

bool Arcane::MessagePassing::internal::BasicSerializeMessage::isProcessed ( ) const
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.

◆ isSend()

bool Arcane::MessagePassing::internal::BasicSerializeMessage::isSend ( ) const
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.

◆ messageNumber()

Int32 Arcane::MessagePassing::internal::BasicSerializeMessage::messageNumber ( ) const
inline

Définition à la ligne 116 du fichier BasicSerializeMessage.h.

◆ messageType()

eMessageType Arcane::MessagePassing::internal::BasicSerializeMessage::messageType ( ) const
inlineoverridevirtual

Type du message.

Implémente Arcane::MessagePassing::ISerializeMessage.

Définition à la ligne 95 du fichier BasicSerializeMessage.h.

◆ origRank()

Int32 Arcane::MessagePassing::internal::BasicSerializeMessage::origRank ( ) const
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.

◆ serializer()

ISerializer * Arcane::MessagePassing::internal::BasicSerializeMessage::serializer ( )
inlineoverridevirtual

Sérialiseur.

Implémente Arcane::MessagePassing::ISerializeMessage.

Définition à la ligne 100 du fichier BasicSerializeMessage.h.

◆ setFinished()

void Arcane::MessagePassing::internal::BasicSerializeMessage::setFinished ( bool v)
inlineoverridevirtual

Positionne l'état 'fini' du message.

Implémente Arcane::MessagePassing::ISerializeMessage.

Définition à la ligne 102 du fichier BasicSerializeMessage.h.

◆ setInternalTag()

void Arcane::MessagePassing::internal::BasicSerializeMessage::setInternalTag ( MessageTag tag)
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.

◆ setIsProcessed()

void Arcane::MessagePassing::internal::BasicSerializeMessage::setIsProcessed ( bool v)
inline

Définition à la ligne 118 du fichier BasicSerializeMessage.h.

◆ setMessageNumber()

void Arcane::MessagePassing::internal::BasicSerializeMessage::setMessageNumber ( Int32 v)
inline

Définition à la ligne 117 du fichier BasicSerializeMessage.h.

◆ setStrategy()

void Arcane::MessagePassing::internal::BasicSerializeMessage::setStrategy ( eStrategy strategy)
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.

◆ setTag()

void Arcane::MessagePassing::internal::BasicSerializeMessage::setTag ( Int32 tag)
inlineoverridevirtual

Implémente Arcane::MessagePassing::ISerializeMessage.

Définition à la ligne 103 du fichier BasicSerializeMessage.h.

◆ source()

MessageRank Arcane::MessagePassing::internal::BasicSerializeMessage::source ( ) const
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.

◆ strategy()

eStrategy Arcane::MessagePassing::internal::BasicSerializeMessage::strategy ( ) const
inlineoverridevirtual

Stratégie utilisée pour les envois/réceptions.

Implémente Arcane::MessagePassing::ISerializeMessage.

Définition à la ligne 109 du fichier BasicSerializeMessage.h.

◆ tag()

Int32 Arcane::MessagePassing::internal::BasicSerializeMessage::tag ( ) const
inlineoverridevirtual

Tag interne du message.

Implémente Arcane::MessagePassing::ISerializeMessage.

Définition à la ligne 104 du fichier BasicSerializeMessage.h.

◆ trueSerializer()

BasicSerializer * Arcane::MessagePassing::internal::BasicSerializeMessage::trueSerializer ( ) const
inline

Définition à la ligne 115 du fichier BasicSerializeMessage.h.

Documentation des données membres

◆ DEFAULT_SERIALIZE_TAG_VALUE

const Int32 Arcane::MessagePassing::internal::BasicSerializeMessage::DEFAULT_SERIALIZE_TAG_VALUE = 101
static

Définition à la ligne 53 du fichier BasicSerializeMessage.h.

◆ m_buffer

BasicSerializer* Arcane::MessagePassing::internal::BasicSerializeMessage::m_buffer = nullptr
private

Tampon contenant les infos.

Définition à la ligne 135 du fichier BasicSerializeMessage.h.

◆ m_dest_rank

MessageRank Arcane::MessagePassing::internal::BasicSerializeMessage::m_dest_rank
private

Rang du destinataire du message.

Définition à la ligne 129 du fichier BasicSerializeMessage.h.

◆ m_finished

bool Arcane::MessagePassing::internal::BasicSerializeMessage::m_finished = false
private

true si message terminé

Définition à la ligne 136 du fichier BasicSerializeMessage.h.

◆ m_is_processed

bool Arcane::MessagePassing::internal::BasicSerializeMessage::m_is_processed = false
private

Numéro du message lorsqu'on utilise plusieurs messages.

Définition à la ligne 139 du fichier BasicSerializeMessage.h.

◆ m_is_send

bool Arcane::MessagePassing::internal::BasicSerializeMessage::m_is_send
private

true si envoie, false si réception

Définition à la ligne 134 du fichier BasicSerializeMessage.h.

◆ m_message_id

MessageId Arcane::MessagePassing::internal::BasicSerializeMessage::m_message_id
private

MessageId associé (peut être nul)

Définition à la ligne 137 du fichier BasicSerializeMessage.h.

◆ m_message_number

Int32 Arcane::MessagePassing::internal::BasicSerializeMessage::m_message_number = 0
private

Définition à la ligne 138 du fichier BasicSerializeMessage.h.

◆ m_message_type

ePointToPointMessageType Arcane::MessagePassing::internal::BasicSerializeMessage::m_message_type
private

Type du message.

Définition à la ligne 132 du fichier BasicSerializeMessage.h.

◆ m_old_message_type

eMessageType Arcane::MessagePassing::internal::BasicSerializeMessage::m_old_message_type
private

Type du message (obsolète)

Définition à la ligne 131 du fichier BasicSerializeMessage.h.

◆ m_orig_rank

MessageRank Arcane::MessagePassing::internal::BasicSerializeMessage::m_orig_rank
private

Rang de l'expéditeur de la requête.

Définition à la ligne 128 du fichier BasicSerializeMessage.h.

◆ m_strategy

eStrategy Arcane::MessagePassing::internal::BasicSerializeMessage::m_strategy = eStrategy::Default
private

Définition à la ligne 133 du fichier BasicSerializeMessage.h.

◆ m_tag

MessageTag Arcane::MessagePassing::internal::BasicSerializeMessage::m_tag = defaultTag()
private

Définition à la ligne 130 du fichier BasicSerializeMessage.h.


La documentation de cette classe a été générée à partir des fichiers suivants :