Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arccore::MessagePassing::PointToPointMessageInfo

Informations pour envoyer/recevoir un message point à point. Plus de détails...

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

+ Graphe de collaboration de Arccore::MessagePassing::PointToPointMessageInfo:

Types publics

enum class  Type { T_RankTag , T_MessageId , T_Null }
 

Fonctions membres publiques

 PointToPointMessageInfo ()
 Message nul.
 
 PointToPointMessageInfo (MessageRank dest_rank)
 Message bloquant avec tag par défaut et ayant pour destination rank.
 
 PointToPointMessageInfo (MessageRank dest_rank, eBlockingType blocking_type)
 Message avec tag par défaut, ayant destination dest_rank et mode bloquant blocking_type.
 
 PointToPointMessageInfo (MessageRank dest_rank, MessageTag tag)
 Message bloquant avec tag tag et ayant pour destination rank.
 
 PointToPointMessageInfo (MessageRank dest_rank, MessageTag tag, eBlockingType blocking_type)
 Message avec tag tag, ayant pour destination dest_rank et mode bloquant blocking_type.
 
 PointToPointMessageInfo (MessageId message_id)
 Message bloquant associé à message_id.
 
 PointToPointMessageInfo (MessageId message_id, eBlockingType blocking_type)
 Message associé à message_id avec le mode bloquant blocking_type.
 
 PointToPointMessageInfo (MessageRank emiter_rank, MessageRank dest_rank, eBlockingType blocking_type)
 Message avec tag par défaut et ayant pour source emiter_rank, destination dest_rank et mode bloquant blocking_type.
 
 PointToPointMessageInfo (MessageRank emiter_rank, MessageRank dest_rank, MessageTag tag)
 Message bloquant avec tag tag, ayant pour source emiter_rank, et ayant pour destination rank.
 
 PointToPointMessageInfo (MessageRank emiter_rank, MessageRank dest_rank)
 Message bloquant avec tag par défaut et ayant pour source emiter_rank et destination dest_rank.
 
 PointToPointMessageInfo (MessageRank emiter_rank, MessageRank dest_rank, MessageTag tag, eBlockingType blocking_type)
 Message avec tag tag, ayant pour source emiter_rank, pour destination dest_rank et mode bloquant blocking_type.
 
PointToPointMessageInfosetBlocking (bool is_blocking)
 
bool isBlocking () const
 Indique si le message est bloquant.
 
bool isMessageId () const
 Vrai si l'instance a été créée avec un MessageId. Dans ce cas messageId() est valide.
 
bool isRankTag () const
 Vrai si l'instance a été créée avec un couple (rank,tag). Dans ce cas rank() et tag() sont valides.
 
MessageId messageId () const
 Identifiant du message.
 
void setMessageId (const MessageId &message_id)
 Positionne l'identifiant du message et change le type du message.
 
void setRankTag (MessageRank rank, MessageTag tag)
 Positionne le rang destination et le tag du message et change le type du message.
 
MessageRank destinationRank () const
 Rang de la destination du message.
 
void setDestinationRank (MessageRank rank)
 Positionne le rang de la destination du message.
 
MessageRank emiterRank () const
 Rang de l'émetteur du message.
 
void setEmiterRank (MessageRank rank)
 Positionne le rang de l'émetteur du message.
 
MessageTag tag () const
 Tag du message.
 
void setTag (MessageTag tag)
 Positionne le tag du message.
 
void print (std::ostream &o) const
 Affiche le message.
 
bool isValid () const
 
MessageRank sourceRank () const
 Rang d'origine du message.
 
void setSourceRank (MessageRank rank)
 Positionne le rang d'origine du message.
 

Fonctions membres privées

void _setInfosFromMessageId ()
 

Attributs privés

MessageRank m_emiter_rank
 
MessageRank m_destination_rank
 
MessageTag m_tag = MessageTag::defaultTag()
 
MessageId m_message_id
 
bool m_is_blocking = true
 
Type m_type = Type::T_Null
 

Amis

std::ostream & operator<< (std::ostream &o, const PointToPointMessageInfo &pmessage)
 

Description détaillée

Informations pour envoyer/recevoir un message point à point.

Il existe deux manières de construire une instance de cette classe:

  1. en donnant un couple (rang destinataire,tag). Le tag est optionnel et s'il n'est pas spécifié, sa valeur sera celle de MessageTag::defaultTag().
  2. via un MessageId obtenu lors d'un appel à mpProbe(). Dans ce dernier cas, l'instance ne peut alors être utilisée qu'en réception via mpReceive().

Il est possible de spécifier si le message sera bloquant lors de la construction ou via l'appel à setBlocking(). Par défaut un message est créé en mode bloquant.

L'émetteur (emiterRank()) du message est l'émetteur et la destination (destinationRank() le récepteur. Pour un message d'envoi (mpSend()), destinationRank() est donc le rang de celui qui va recevoir le message. Pour un message de réception (mpReceive()), destinationRank() est le rang de celui dont on souhaite recevoir le message ou A_NULL_RANK si on souhaite recevoir de n'importe qui.

Note
L'émetteur est en général positionnée par l'implémentation de IMessagePassingMng car il correspond au rang de celui qui poste le message. L'utilisateur n'a donc jamais besoin de le spécifier.

Définition à la ligne 51 du fichier PointToPointMessageInfo.h.

Documentation des énumérations membres

◆ Type

enum class Arccore::MessagePassing::PointToPointMessageInfo::Type
strong

Définition à la ligne 55 du fichier PointToPointMessageInfo.h.

Documentation des constructeurs et destructeur

◆ PointToPointMessageInfo() [1/11]

Arccore::MessagePassing::PointToPointMessageInfo::PointToPointMessageInfo ( )
inline

Message nul.

Définition à la ligne 65 du fichier PointToPointMessageInfo.h.

◆ PointToPointMessageInfo() [2/11]

Arccore::MessagePassing::PointToPointMessageInfo::PointToPointMessageInfo ( MessageRank  dest_rank)
inlineexplicit

Message bloquant avec tag par défaut et ayant pour destination rank.

Définition à la ligne 68 du fichier PointToPointMessageInfo.h.

◆ PointToPointMessageInfo() [3/11]

Arccore::MessagePassing::PointToPointMessageInfo::PointToPointMessageInfo ( MessageRank  dest_rank,
eBlockingType  blocking_type 
)
inline

Message avec tag par défaut, ayant destination dest_rank et mode bloquant blocking_type.

Définition à la ligne 74 du fichier PointToPointMessageInfo.h.

◆ PointToPointMessageInfo() [4/11]

Arccore::MessagePassing::PointToPointMessageInfo::PointToPointMessageInfo ( MessageRank  dest_rank,
MessageTag  tag 
)
inline

Message bloquant avec tag tag et ayant pour destination rank.

Définition à la ligne 81 du fichier PointToPointMessageInfo.h.

◆ PointToPointMessageInfo() [5/11]

Arccore::MessagePassing::PointToPointMessageInfo::PointToPointMessageInfo ( MessageRank  dest_rank,
MessageTag  tag,
eBlockingType  blocking_type 
)
inline

Message avec tag tag, ayant pour destination dest_rank et mode bloquant blocking_type.

Définition à la ligne 88 du fichier PointToPointMessageInfo.h.

◆ PointToPointMessageInfo() [6/11]

Arccore::MessagePassing::PointToPointMessageInfo::PointToPointMessageInfo ( MessageId  message_id)
inlineexplicit

Message bloquant associé à message_id.

Définition à la ligne 96 du fichier PointToPointMessageInfo.h.

◆ PointToPointMessageInfo() [7/11]

Arccore::MessagePassing::PointToPointMessageInfo::PointToPointMessageInfo ( MessageId  message_id,
eBlockingType  blocking_type 
)
inline

Message associé à message_id avec le mode bloquant blocking_type.

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

◆ PointToPointMessageInfo() [8/11]

Arccore::MessagePassing::PointToPointMessageInfo::PointToPointMessageInfo ( MessageRank  emiter_rank,
MessageRank  dest_rank,
eBlockingType  blocking_type 
)
inline

Message avec tag par défaut et ayant pour source emiter_rank, destination dest_rank et mode bloquant blocking_type.

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

◆ PointToPointMessageInfo() [9/11]

Arccore::MessagePassing::PointToPointMessageInfo::PointToPointMessageInfo ( MessageRank  emiter_rank,
MessageRank  dest_rank,
MessageTag  tag 
)
inline

Message bloquant avec tag tag, ayant pour source emiter_rank, et ayant pour destination rank.

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

◆ PointToPointMessageInfo() [10/11]

Arccore::MessagePassing::PointToPointMessageInfo::PointToPointMessageInfo ( MessageRank  emiter_rank,
MessageRank  dest_rank 
)
inline

Message bloquant avec tag par défaut et ayant pour source emiter_rank et destination dest_rank.

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

◆ PointToPointMessageInfo() [11/11]

Arccore::MessagePassing::PointToPointMessageInfo::PointToPointMessageInfo ( MessageRank  emiter_rank,
MessageRank  dest_rank,
MessageTag  tag,
eBlockingType  blocking_type 
)
inline

Message avec tag tag, ayant pour source emiter_rank, pour destination dest_rank et mode bloquant blocking_type.

Définition à la ligne 150 du fichier PointToPointMessageInfo.h.

Documentation des fonctions membres

◆ _setInfosFromMessageId()

void Arccore::MessagePassing::PointToPointMessageInfo::_setInfosFromMessageId ( )
inlineprivate

Définition à la ligne 257 du fichier PointToPointMessageInfo.h.

◆ destinationRank()

MessageRank Arccore::MessagePassing::PointToPointMessageInfo::destinationRank ( ) const
inline

Rang de la destination du message.

Définition à la ligne 190 du fichier PointToPointMessageInfo.h.

Référencé par Arccore::MessagePassing::Mpi::MpiSerializeDispatcher::receiveSerializer().

◆ emiterRank()

MessageRank Arccore::MessagePassing::PointToPointMessageInfo::emiterRank ( ) const
inline

Rang de l'émetteur du message.

Définition à la ligne 201 du fichier PointToPointMessageInfo.h.

◆ isBlocking()

bool Arccore::MessagePassing::PointToPointMessageInfo::isBlocking ( ) const
inline

Indique si le message est bloquant.

Définition à la ligne 166 du fichier PointToPointMessageInfo.h.

Référencé par Arccore::MessagePassing::Mpi::MpiSerializeDispatcher::receiveSerializer().

◆ isMessageId()

bool Arccore::MessagePassing::PointToPointMessageInfo::isMessageId ( ) const
inline

Vrai si l'instance a été créée avec un MessageId. Dans ce cas messageId() est valide.

Définition à la ligne 168 du fichier PointToPointMessageInfo.h.

Référencé par Arccore::MessagePassing::Mpi::MpiSerializeDispatcher::receiveSerializer().

◆ isRankTag()

bool Arccore::MessagePassing::PointToPointMessageInfo::isRankTag ( ) const
inline

Vrai si l'instance a été créée avec un couple (rank,tag). Dans ce cas rank() et tag() sont valides.

Définition à la ligne 170 du fichier PointToPointMessageInfo.h.

Référencé par Arccore::MessagePassing::Mpi::MpiSerializeDispatcher::receiveSerializer().

◆ isValid()

bool Arccore::MessagePassing::PointToPointMessageInfo::isValid ( ) const
inline

Définition à la ligne 227 du fichier PointToPointMessageInfo.h.

◆ messageId()

MessageId Arccore::MessagePassing::PointToPointMessageInfo::messageId ( ) const
inline

Identifiant du message.

Définition à la ligne 172 du fichier PointToPointMessageInfo.h.

Référencé par Arccore::MessagePassing::Mpi::MpiSerializeDispatcher::receiveSerializer().

◆ print()

void Arccore::MessagePassing::PointToPointMessageInfo::print ( std::ostream &  o) const

Affiche le message.

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

◆ setBlocking()

PointToPointMessageInfo & Arccore::MessagePassing::PointToPointMessageInfo::setBlocking ( bool  is_blocking)
inline

Définition à la ligne 160 du fichier PointToPointMessageInfo.h.

◆ setDestinationRank()

void Arccore::MessagePassing::PointToPointMessageInfo::setDestinationRank ( MessageRank  rank)
inline

Positionne le rang de la destination du message.

Définition à la ligne 192 du fichier PointToPointMessageInfo.h.

Références Arccore::MessagePassing::MessageSourceInfo::setRank().

◆ setEmiterRank()

void Arccore::MessagePassing::PointToPointMessageInfo::setEmiterRank ( MessageRank  rank)
inline

Positionne le rang de l'émetteur du message.

Définition à la ligne 203 du fichier PointToPointMessageInfo.h.

◆ setMessageId()

void Arccore::MessagePassing::PointToPointMessageInfo::setMessageId ( const MessageId message_id)
inline

Positionne l'identifiant du message et change le type du message.

Définition à la ligne 174 du fichier PointToPointMessageInfo.h.

◆ setRankTag()

void Arccore::MessagePassing::PointToPointMessageInfo::setRankTag ( MessageRank  rank,
MessageTag  tag 
)
inline

Positionne le rang destination et le tag du message et change le type du message.

Définition à la ligne 181 du fichier PointToPointMessageInfo.h.

◆ setSourceRank()

void Arccore::MessagePassing::PointToPointMessageInfo::setSourceRank ( MessageRank  rank)
inline

Positionne le rang d'origine du message.

Définition à la ligne 246 du fichier PointToPointMessageInfo.h.

◆ setTag()

void Arccore::MessagePassing::PointToPointMessageInfo::setTag ( MessageTag  tag)
inline

Positionne le tag du message.

Définition à la ligne 208 du fichier PointToPointMessageInfo.h.

Références Arccore::MessagePassing::MessageSourceInfo::setTag().

◆ sourceRank()

MessageRank Arccore::MessagePassing::PointToPointMessageInfo::sourceRank ( ) const
inline

Rang d'origine du message.

Définition à la ligne 242 du fichier PointToPointMessageInfo.h.

◆ tag()

MessageTag Arccore::MessagePassing::PointToPointMessageInfo::tag ( ) const
inline

Tag du message.

Définition à la ligne 206 du fichier PointToPointMessageInfo.h.

Référencé par Arccore::MessagePassing::Mpi::MpiSerializeDispatcher::receiveSerializer().

Documentation des fonctions amies et associées

◆ operator<<

std::ostream & operator<< ( std::ostream &  o,
const PointToPointMessageInfo pmessage 
)
friend

Définition à la ligne 218 du fichier PointToPointMessageInfo.h.

Documentation des données membres

◆ m_destination_rank

MessageRank Arccore::MessagePassing::PointToPointMessageInfo::m_destination_rank
private

Définition à la ligne 251 du fichier PointToPointMessageInfo.h.

◆ m_emiter_rank

MessageRank Arccore::MessagePassing::PointToPointMessageInfo::m_emiter_rank
private

Définition à la ligne 250 du fichier PointToPointMessageInfo.h.

◆ m_is_blocking

bool Arccore::MessagePassing::PointToPointMessageInfo::m_is_blocking = true
private

Définition à la ligne 254 du fichier PointToPointMessageInfo.h.

◆ m_message_id

MessageId Arccore::MessagePassing::PointToPointMessageInfo::m_message_id
private

Définition à la ligne 253 du fichier PointToPointMessageInfo.h.

◆ m_tag

MessageTag Arccore::MessagePassing::PointToPointMessageInfo::m_tag = MessageTag::defaultTag()
private

Définition à la ligne 252 du fichier PointToPointMessageInfo.h.

◆ m_type

Type Arccore::MessagePassing::PointToPointMessageInfo::m_type = Type::T_Null
private

Définition à la ligne 255 du fichier PointToPointMessageInfo.h.


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