12#ifndef ARCANE_MESH_MESHCOMPACTER_H
13#define ARCANE_MESH_MESHCOMPACTER_H
17#include "arcane/utils/TraceAccessor.h"
18#include "arcane/utils/List.h"
19#include "arcane/core/IMeshCompacter.h"
20#include "arcane/mesh/MeshGlobal.h"
53class ARCANE_MESH_EXPORT MeshCompacter
57 friend class MeshCompactMng;
61 typedef std::map<IItemFamily*, ItemFamilyCompactInfos*> ItemFamilyCompactInfosMap;
77 void beginCompact()
override;
78 void compactVariablesAndGroups()
override;
79 void updateInternalReferences()
override;
80 void endCompact()
override;
81 void finalizeCompact()
override;
84 bool isSorted()
const override {
return m_is_sorted; }
89 void setSorted(
bool v)
override;
90 void _setCompactVariablesAndGroups(
bool v)
override;
95 ItemFamilyCompactInfosMap m_family_compact_infos_map;
99 bool m_is_compact_variables_and_groups;
104 void _checkPhase(ePhase wanted_phase);
Entity compaction policy.
Interface of an entity family.
Management of mesh family compaction.
ePhase
Indicates the different phases of compaction.
Interface managing execution time statistics.
Information to manage the compaction of entities of a family.
Implementation of a collection of elements in vector form.
TraceAccessor(ITraceMng *m)
Constructs an accessor via the trace manager m.
Implementation of a mesh.
const ItemFamilyCompactInfos * findCompactInfos(IItemFamily *family) const override
Compaction information for the family family.
void doAllActions() override
Executes all compaction actions successively.
IMesh * mesh() const override
Mesh associated with this compacter.
bool isSorted() const override
Indicates whether it wishes to sort the entities in addition to compacting them.
ePhase phase() const override
The exchange phase in which we are located.
-- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature --
Collection< IItemFamily * > ItemFamilyCollection
Collection of item families.