12#ifndef ARCCORE_MESSAGEPASSING_MESSAGETAG_H
13#define ARCCORE_MESSAGEPASSING_MESSAGETAG_H
41class ARCCORE_MESSAGEPASSING_EXPORT MessageTag
44 MessageTag() : m_tag(A_NULL_TAG_VALUE){}
45 explicit MessageTag(
Int32 tag) : m_tag(tag){}
46 friend bool operator==(
const MessageTag& a,
const MessageTag& b)
48 return a.m_tag==b.m_tag;
50 friend bool operator!=(
const MessageTag& a,
const MessageTag& b)
52 return a.m_tag!=b.m_tag;
54 friend bool operator<(
const MessageTag& a,
const MessageTag& b)
56 return a.m_tag<b.m_tag;
58 Int32 value()
const {
return m_tag; }
59 bool isNull()
const {
return m_tag==A_NULL_TAG_VALUE; }
60 void print(std::ostream& o)
const;
61 friend inline std::ostream&
62 operator<<(std::ostream& o,
const MessageTag& tag)
Déclarations générales de la composante 'message_passing'.
static MessageTag defaultTag()
Tag par défaut pour les send/receive sans argument tag.
static constexpr Int32 DEFAULT_TAG_VALUE
Valeur par défaut du tag.
Déclarations des types et méthodes utilisés par les mécanismes d'échange de messages.
std::int32_t Int32
Type entier signé sur 32 bits.