12#ifndef ARCCORE_MESSAGEPASSING_MESSAGERANK_H
13#define ARCCORE_MESSAGEPASSING_MESSAGERANK_H
64 return a.m_rank == b.m_rank;
66 friend bool operator!=(
const MessageRank& a,
const MessageRank& b)
68 return a.m_rank != b.m_rank;
70 friend bool operator<(
const MessageRank& a,
const MessageRank& b)
72 return a.m_rank < b.m_rank;
82 bool isNull()
const {
return m_rank == A_NULL_RANK; }
85 bool isAnySource()
const {
return m_rank == A_ANY_SOURCE_RANK; }
88 bool isProcNull()
const {
return m_rank == A_PROC_NULL_RANK; }
96 void print(std::ostream& o)
const;
97 friend inline std::ostream& operator<<(std::ostream& o,
const MessageRank& tag)
General declarations for the 'message_passing' component.
void setValue(Int32 rank)
Sets the rank value.
static MessageRank procNullRank()
Rank corresponding to MPI_PROC_NULL.
bool isProcNull() const
True if the rank corresponds to procNullRank().
Int32 value() const
Rank value.
static MessageRank anySourceRank()
Rank corresponding to MPI_ANY_SOURCE.
bool isNull() const
True if the rank is uninitialized, corresponding to the default rank.
bool isAnySource() const
True if the rank corresponds to anySourceRank().
MessageRank()
Default rank.
Declarations of types and methods used by message exchange mechanisms.
bool operator<(const Item &item1, const Item &item2)
Compare two entities.
std::int32_t Int32
Signed integer type of 32 bits.