Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::MessagePassing::MessageRank Class Reference

Rank of a message. More...

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

Collaboration diagram for Arcane::MessagePassing::MessageRank:

Public Member Functions

 MessageRank ()
 Default rank.
 MessageRank (Int32 rank)
Int32 value () const
 Rank value.
void setValue (Int32 rank)
 Sets the rank value.
bool isNull () const
 True if the rank is uninitialized, corresponding to the default rank.
bool isAnySource () const
 True if the rank corresponds to anySourceRank().
bool isProcNull () const
 True if the rank corresponds to procNullRank().
void print (std::ostream &o) const

Static Public Member Functions

static MessageRank anySourceRank ()
 Rank corresponding to MPI_ANY_SOURCE.
static MessageRank procNullRank ()
 Rank corresponding to MPI_PROC_NULL.

Private Attributes

Int32 m_rank

Friends

bool operator== (const MessageRank &a, const MessageRank &b)
bool operator!= (const MessageRank &a, const MessageRank &b)
bool operator< (const MessageRank &a, const MessageRank &b)
std::ostream & operator<< (std::ostream &o, const MessageRank &tag)

Detailed Description

Rank of a message.

The exact type of the rank depends on the implementation. To be as generic as possible, we use the 'Int32' type, which is also the one used by MPI.

There are three special values for the rank:

See also
PointToPointMessageInfo

Definition at line 44 of file MessageRank.h.

Constructor & Destructor Documentation

◆ MessageRank() [1/2]

Arcane::MessagePassing::MessageRank::MessageRank ( )
inline

Default rank.

The meaning of the default rank depends on the message type.

See also
PointToPointMessageInfo.

Definition at line 54 of file MessageRank.h.

Referenced by anySourceRank(), and procNullRank().

Here is the caller graph for this function:

◆ MessageRank() [2/2]

Arcane::MessagePassing::MessageRank::MessageRank ( Int32 rank)
inlineexplicit

Definition at line 58 of file MessageRank.h.

Member Function Documentation

◆ anySourceRank()

MessageRank Arcane::MessagePassing::MessageRank::anySourceRank ( )
inlinestatic

Rank corresponding to MPI_ANY_SOURCE.

Definition at line 91 of file MessageRank.h.

References MessageRank().

Here is the call graph for this function:

◆ isAnySource()

bool Arcane::MessagePassing::MessageRank::isAnySource ( ) const
inline

True if the rank corresponds to anySourceRank().

Definition at line 85 of file MessageRank.h.

◆ isNull()

bool Arcane::MessagePassing::MessageRank::isNull ( ) const
inline

True if the rank is uninitialized, corresponding to the default rank.

Definition at line 82 of file MessageRank.h.

◆ isProcNull()

bool Arcane::MessagePassing::MessageRank::isProcNull ( ) const
inline

True if the rank corresponds to procNullRank().

Definition at line 88 of file MessageRank.h.

◆ print()

void Arcane::MessagePassing::MessageRank::print ( std::ostream & o) const

Definition at line 27 of file MessageRank.cc.

◆ procNullRank()

MessageRank Arcane::MessagePassing::MessageRank::procNullRank ( )
inlinestatic

Rank corresponding to MPI_PROC_NULL.

Definition at line 94 of file MessageRank.h.

References MessageRank().

Here is the call graph for this function:

◆ setValue()

void Arcane::MessagePassing::MessageRank::setValue ( Int32 rank)
inline

Sets the rank value.

Definition at line 79 of file MessageRank.h.

◆ value()

Int32 Arcane::MessagePassing::MessageRank::value ( ) const
inline

Rank value.

Definition at line 76 of file MessageRank.h.

Referenced by Arcane::mesh::FaceUniqueIdBuilder::_exchangeData(), Arcane::mesh::Parallel3EdgeUniqueIdBuilder::_exchangeData(), Arcane::Parallel::VariableParallelOperationBase::applyOperation(), Arcane::mesh::ItemsExchangeInfo2::prepareToSend(), and Arcane::mesh::ItemsExchangeInfo2::removeSentItems().

Here is the caller graph for this function:

◆ operator!=

bool operator!= ( const MessageRank & a,
const MessageRank & b )
friend

Definition at line 66 of file MessageRank.h.

◆ operator<

bool operator< ( const MessageRank & a,
const MessageRank & b )
friend

Definition at line 70 of file MessageRank.h.

◆ operator<<

std::ostream & operator<< ( std::ostream & o,
const MessageRank & tag )
friend

Definition at line 97 of file MessageRank.h.

◆ operator==

bool operator== ( const MessageRank & a,
const MessageRank & b )
friend

Definition at line 62 of file MessageRank.h.

Member Data Documentation

◆ m_rank

Int32 Arcane::MessagePassing::MessageRank::m_rank
private

Definition at line 105 of file MessageRank.h.


The documentation for this class was generated from the following files: