Arcane  4.1.12.0
User documentation
Loading...
Searching...
No Matches
Arcane::IItemFamilyCompactPolicy Class Referenceabstract

Entity compaction policy. More...

#include <arcane/core/IItemFamilyCompactPolicy.h>

Public Member Functions

virtual void beginCompact (ItemFamilyCompactInfos &compact_infos)=0
virtual void compactVariablesAndGroups (const ItemFamilyCompactInfos &compact_infos)=0
virtual void updateInternalReferences (IMeshCompacter *compacter)=0
virtual void endCompact (ItemFamilyCompactInfos &compact_infos)=0
virtual void finalizeCompact (IMeshCompacter *compacter)=0
virtual IItemFamilyfamily () const =0
 Associated family.
virtual void compactConnectivityData ()=0
 Compacts the connectivity data.

Detailed Description

Entity compaction policy.

An instance of this class is associated with each family.

The call pseudo-code for a compaction is as follows:

IMesh* mesh = ...;
IMeshCompacter* compacter = ...;
ItemFamilyCollection families = mesh->itemFamilies();
for( IItemFamily* family : mesh->itemFamilies() )
policies.add( createCompactPolicity(family) );
for( ItemFamilyCompactPolicity* policy : policies)
policy->beginCompact(...);
for( ItemFamilyCompactPolicity* policy : policies)
policy->compactVariablesAndGroups(...);
for( ItemFamilyCompactPolicity* policy : policies)
policy->updateInternalReferences(compacter);
for( ItemFamilyCompactPolicity* policy : policies)
policy->endCompact(...);
void add(ConstReferenceType val)
Adds element val to the end of the array.
virtual IItemFamily * family() const =0
Associated family.
Interface of an entity family.
Definition IItemFamily.h:83
Management of mesh family compaction.
1D data vector with value semantics (STL style).
Collection< IItemFamily * > ItemFamilyCollection
Collection of item families.

Outside of a compaction, it is possible to call compactReferenceData(), which allows compacting the data used to hold connectivity information.

Definition at line 56 of file IItemFamilyCompactPolicy.h.


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