Indirect serialization/deserialization of entity families. More...
#include <arcane/mesh/IndirectItemFamilySerializer.h>
Public Member Functions | |
| IndirectItemFamilySerializer (IItemFamily *family) | |
| void | serializeItems (ISerializer *buf, Int32ConstArrayView local_ids) override |
| Serializes the entities of the family family() into buf. | |
| void | deserializeItems (ISerializer *buf, Int32Array *local_ids) override |
| Deserializes the entities of the family family() from buf. | |
| void | serializeItemRelations (ISerializer *buf, Int32ConstArrayView cells_local_id) override |
| Serializes the relations of the entities of the family family() into buf. | |
| void | deserializeItemRelations (ISerializer *buf, Int32Array *cells_local_id) override |
| Deserializes the relations of the entities of the family family() from buf. | |
| IItemFamily * | family () const override |
| Associated family. | |
| Public Member Functions inherited from Arcane::TraceAccessor | |
| TraceAccessor (ITraceMng *m) | |
| Constructs an accessor via the trace manager m. | |
| TraceAccessor (const TraceAccessor &rhs) | |
| Copy constructor. | |
| TraceAccessor & | operator= (const TraceAccessor &rhs) |
| Copy assignment operator. | |
| virtual | ~TraceAccessor () |
| Frees resources. | |
| ITraceMng * | traceMng () const |
| Trace manager. | |
| TraceMessage | info () const |
| Flow for an information message. | |
| TraceMessage | pinfo () const |
| Flow for a parallel information message. | |
| TraceMessage | info (char category) const |
| Flow for an information message of a given category. | |
| TraceMessage | pinfo (char category) const |
| Flow for a parallel information message of a given category. | |
| TraceMessage | info (bool v) const |
| Flow for an information message. | |
| TraceMessage | warning () const |
| Flow for a warning message. | |
| TraceMessage | pwarning () const |
| TraceMessage | error () const |
| Flow for an error message. | |
| TraceMessage | perror () const |
| TraceMessage | log () const |
| Flow for a log message. | |
| TraceMessage | plog () const |
| Flow for a log message. | |
| TraceMessage | logdate () const |
| Flow for a log message preceded by the date. | |
| TraceMessage | fatal () const |
| Flow for a fatal error message. | |
| TraceMessage | pfatal () const |
| Flow for a parallel fatal error message. | |
| TraceMessageDbg | debug (Trace::eDebugLevel=Trace::Medium) const |
| Flow for a debug message. | |
| Trace::eDebugLevel | configDbgLevel () const |
| Debug level of the configuration file. | |
| TraceMessage | info (Int32 verbose_level) const |
| Flow for an information message of a given level. | |
| TraceMessage | linfo () const |
| Flow for an information message with the local information level of this instance. | |
| TraceMessage | linfo (Int32 relative_level) const |
| Flow for an information message with the local information level of this instance. | |
| void | fatalMessage (const StandaloneTraceMessage &o) const |
Private Attributes | |
| IItemFamily * | m_family |
Additional Inherited Members | |
| Protected Member Functions inherited from Arcane::TraceAccessor | |
| void | _setLocalVerboseLevel (Int32 v) |
| Int32 | _localVerboseLevel () const |
Indirect serialization/deserialization of entity families.
Serialization/deserialization is indirect if it is done indirectly by another family. This is the case, for example, for nodes, edges, and faces because their serialization/deserialization is done via the associated cell family.
The only role of this instance is then to serialize the uniqueId() of the entities and associate the localId() of the new added entities during deserialization.
This also means that the entities that this family depends on must be serialized/deserialized first.
Definition at line 47 of file IndirectItemFamilySerializer.h.
| Arcane::mesh::IndirectItemFamilySerializer::IndirectItemFamilySerializer | ( | IItemFamily * | family | ) |
Definition at line 30 of file IndirectItemFamilySerializer.cc.
|
inlineoverridevirtual |
Deserializes the relations of the entities of the family family() from buf.
If items_lid is not null, it contains the local numbers of the cells whose relations have been deserialized in return.
Implements Arcane::IItemFamilySerializer.
Definition at line 64 of file IndirectItemFamilySerializer.h.
|
overridevirtual |
Deserializes the entities of the family family() from buf.
If items_lid is not null, it contains the local numbers of the deserialized cells in return.
Implements Arcane::IItemFamilySerializer.
Definition at line 71 of file IndirectItemFamilySerializer.cc.
References Arcane::ISerializer::getInt64(), Arcane::ISerializer::getSpan(), and Arcane::Array< T >::resize().
Referenced by serializeItems().
|
overridevirtual |
Associated family.
Implements Arcane::IItemFamilySerializer.
Definition at line 90 of file IndirectItemFamilySerializer.cc.
|
inlineoverridevirtual |
Serializes the relations of the entities of the family family() into buf.
In 'Put' or 'Reserve' mode, items contains the local cell numbers. In 'Get' mode, it calls deserializeItemRelations() and items is unused.
Implements Arcane::IItemFamilySerializer.
Definition at line 59 of file IndirectItemFamilySerializer.h.
|
overridevirtual |
Serializes the entities of the family family() into buf.
In 'Put' or 'Reserve' mode, items contains the local cell numbers. In 'Get' mode, it calls deserializeItems() and items is unused.
Implements Arcane::IItemFamilySerializer.
Definition at line 40 of file IndirectItemFamilySerializer.cc.
References deserializeItems(), Arcane::Int64, Arcane::ISerializer::mode(), Arcane::ISerializer::ModeGet, Arcane::ISerializer::ModePut, Arcane::ISerializer::putInt64(), Arcane::ISerializer::putSpan(), Arcane::ISerializer::reserveInt64(), Arcane::ISerializer::reserveSpan(), Arcane::ConstArrayView< T >::size(), and Arcane::Item::uniqueId().
|
private |
Definition at line 73 of file IndirectItemFamilySerializer.h.