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

Message passing manager. More...

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

Inheritance diagram for Arcane::MessagePassing::MessagePassingMng:
Collaboration diagram for Arcane::MessagePassing::MessagePassingMng:

Public Member Functions

 MessagePassingMng (Int32 comm_rank, Int32 comm_size, IDispatchers *d)
Int32 commRank () const override
 Rank of this instance in the communicator.
Int32 commSize () const override
 Number of instances in the communicator.
IDispatchersdispatchers () override
ITimeMetricCollectortimeMetricCollector () const override
 Interface for collecting execution times (can be null).
Communicator communicator () const override
 MPI communicator associated with this instance.
void setTimeMetricCollector (ITimeMetricCollector *c)
void setCommunicator (Communicator c)
Public Member Functions inherited from Arcane::ReferenceCounterImpl
void addReference ()
void removeReference ()
void _internalAddReference ()
bool _internalRemoveReference ()

Private Member Functions

 ARCCORE_DEFINE_REFERENCE_COUNTED_INCLASS_METHODS ()

Private Attributes

Int32 m_comm_rank = A_NULL_RANK
Int32 m_comm_size = A_NULL_RANK
IDispatchersm_dispatchers = nullptr
ITimeMetricCollectorm_time_metric_collector = nullptr
Communicator m_communicator

Detailed Description

Message passing manager.

Instances of these classes must be destroyed via the mpDelete() method.

Definition at line 36 of file MessagePassingMng.h.

Constructor & Destructor Documentation

◆ MessagePassingMng()

Arcane::MessagePassing::MessagePassingMng::MessagePassingMng ( Int32 comm_rank,
Int32 comm_size,
IDispatchers * d )

Definition at line 25 of file MessagePassingMng.cc.

◆ ~MessagePassingMng()

Arcane::MessagePassing::MessagePassingMng::~MessagePassingMng ( )
override

Definition at line 36 of file MessagePassingMng.cc.

Member Function Documentation

◆ commRank()

Int32 Arcane::MessagePassing::MessagePassingMng::commRank ( ) const
inlineoverridevirtual

Rank of this instance in the communicator.

Implements Arcane::MessagePassing::IMessagePassingMng.

Definition at line 50 of file MessagePassingMng.h.

◆ commSize()

Int32 Arcane::MessagePassing::MessagePassingMng::commSize ( ) const
inlineoverridevirtual

Number of instances in the communicator.

Implements Arcane::MessagePassing::IMessagePassingMng.

Definition at line 51 of file MessagePassingMng.h.

◆ communicator()

Communicator Arcane::MessagePassing::MessagePassingMng::communicator ( ) const
overridevirtual

MPI communicator associated with this instance.

The communicator is only valid if the instance is associated with an MPI implementation.

Reimplemented from Arcane::MessagePassing::IMessagePassingMng.

Definition at line 53 of file MessagePassingMng.cc.

◆ dispatchers()

IDispatchers * Arcane::MessagePassing::MessagePassingMng::dispatchers ( )
overridevirtual

Implements Arcane::MessagePassing::IMessagePassingMng.

Definition at line 47 of file MessagePassingMng.cc.

◆ setCommunicator()

void Arcane::MessagePassing::MessagePassingMng::setCommunicator ( Communicator c)

Definition at line 59 of file MessagePassingMng.cc.

◆ setTimeMetricCollector()

void Arcane::MessagePassing::MessagePassingMng::setTimeMetricCollector ( ITimeMetricCollector * c)

Definition at line 71 of file MessagePassingMng.cc.

◆ timeMetricCollector()

ITimeMetricCollector * Arcane::MessagePassing::MessagePassingMng::timeMetricCollector ( ) const
overridevirtual

Interface for collecting execution times (can be null).

Implements Arcane::MessagePassing::IMessagePassingMng.

Definition at line 65 of file MessagePassingMng.cc.

Member Data Documentation

◆ m_comm_rank

Int32 Arcane::MessagePassing::MessagePassingMng::m_comm_rank = A_NULL_RANK
private

Definition at line 63 of file MessagePassingMng.h.

◆ m_comm_size

Int32 Arcane::MessagePassing::MessagePassingMng::m_comm_size = A_NULL_RANK
private

Definition at line 64 of file MessagePassingMng.h.

◆ m_communicator

Communicator Arcane::MessagePassing::MessagePassingMng::m_communicator
private

Definition at line 67 of file MessagePassingMng.h.

◆ m_dispatchers

IDispatchers* Arcane::MessagePassing::MessagePassingMng::m_dispatchers = nullptr
private

Definition at line 65 of file MessagePassingMng.h.

◆ m_time_metric_collector

ITimeMetricCollector* Arcane::MessagePassing::MessagePassingMng::m_time_metric_collector = nullptr
private

Definition at line 66 of file MessagePassingMng.h.


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