Interface for a step in the serialization of entity families. More...
#include <arcane/core/IItemFamilySerializeStep.h>
Classes | |
| class | NotifyActionArgs |
Public Types | |
| enum | ePhase { PH_Item , PH_Group , PH_Variable } |
| Serialization phase. More... | |
| enum class | eAction { AC_BeginPrepareSend , AC_EndPrepareSend , AC_BeginReceive , AC_EndReceive } |
| Action during serialization. More... | |
Public Member Functions | |
| virtual void | initialize ()=0 |
| Initializes the instance before the start of exchanges. | |
| virtual void | notifyAction (const NotifyActionArgs &args)=0 |
| Notifies the instance that we are entering a certain phase of the exchange. | |
| virtual void | serialize (const ItemFamilySerializeArgs &args)=0 |
| Serializes into/from buf. | |
| virtual void | finalize ()=0 |
| Performs end-of-exchange processing. | |
| virtual ePhase | phase () const =0 |
| Serialization phase where this instance is involved. | |
| virtual IItemFamily * | family () const =0 |
| Associated family. | |
Interface for a step in the serialization of entity families.
This interface is used by IItemFamilyExchanger to serialize and deserialize information. Serialization is done by message exchange and there is one message per rank with which we communicate.
The call pseudo-code is as follows:
The serialize() method is called for each rank we communicate with.
The step is called during the serialization phase specified by phase() as specified in the IItemFamilyExchanger documentation.
For the specified phase, the call order is as follows:
Definition at line 73 of file IItemFamilySerializeStep.h.
|
strong |
Action during serialization.
| Enumerator | |
|---|---|
| AC_BeginPrepareSend | Start of send preparation. |
| AC_EndPrepareSend | End of send preparation. |
| AC_BeginReceive | Start of data reception. |
| AC_EndReceive | End of data reception. |
Definition at line 85 of file IItemFamilySerializeStep.h.
Serialization phase.
Definition at line 78 of file IItemFamilySerializeStep.h.
|
pure virtual |
Associated family.
Implemented in Arcane::Materials::MeshMaterialExchangeMng::ExchangeCellStep.
|
pure virtual |
Performs end-of-exchange processing.
Implemented in Arcane::Materials::MeshMaterialExchangeMng::ExchangeCellStep.
|
pure virtual |
Initializes the instance before the start of exchanges.
Implemented in Arcane::Materials::MeshMaterialExchangeMng::ExchangeCellStep.
|
pure virtual |
Notifies the instance that we are entering a certain phase of the exchange.
Implemented in Arcane::Materials::MeshMaterialExchangeMng::ExchangeCellStep.
|
pure virtual |
Serialization phase where this instance is involved.
Implemented in Arcane::Materials::MeshMaterialExchangeMng::ExchangeCellStep.
|
pure virtual |
Serializes into/from buf.
args.rank() contains the rank of the subdomain with which we communicate. args.messageIndex() is the message number index and args.nbMessageIndex() is the number of messages that will be sent.
During serialization, these are the local indices of the entities sent to rank rank(). During deserialization, these are the local indices received by rank rank().
Implemented in Arcane::Materials::MeshMaterialExchangeMng::ExchangeCellStep.