12#ifndef ARCCORE_MESSAGEPASSING_INTERNAL_SERIALIZEMESSAGEMESSAGELIST_H
13#define ARCCORE_MESSAGEPASSING_INTERNAL_SERIALIZEMESSAGEMESSAGELIST_H
17#include "arccore/message_passing/ISerializeMessageList.h"
19#include "arccore/message_passing/PointToPointMessageInfo.h"
21#include "arccore/trace/internal/TimeMetric.h"
22#include "arccore/collections/Array.h"
27namespace Arcane::MessagePassing::internal
40class ARCCORE_MESSAGEPASSING_EXPORT SerializeMessageList
49 ProbeInfo() =
default;
51 : m_serialize_message(sm)
52 , m_message_info(message_info)
59 bool m_is_probe_done =
false;
74 void setAllowAnyRankReceive(
bool v) { m_allow_any_rank_receive = v; }
79 SerializeMessageContainer m_messages_to_process;
81 SerializeMessageContainer m_messages_serialize;
82 SerializeMessageContainer m_remaining_serialize_messages;
84 bool m_allow_any_rank_receive =
true;
Management of references to a C++ class.
Interface of the message passing manager.
Interface for a serialization message list.
Interface for a serialization message between IMessagePassingMng.
Information for sending/receiving a point-to-point message.
Serializing message using a BasicSerializer.
void processPendingMessages() override
Sends the messages in the list that have not yet been sent.
Ref< ISerializeMessage > createAndAddMessage(MessageRank destination, ePointToPointMessageType type) override
Creates and adds a serialization message.
void addMessage(ISerializeMessage *msg) override
Adds a message to the list.
Integer waitMessages(eWaitType wait_type) override
Waits until the messages have finished execution.
Reference to an instance.
1D data vector with value semantics (STL style).
ePointToPointMessageType
Point-to-point message type.
Int32 Integer
Type representing an integer.