14#include "arcane/mesh/ItemGroupsSynchronize.h"
16#include "arcane/utils/ITraceMng.h"
18#include "arcane/ItemEnumerator.h"
19#include "arcane/IMesh.h"
20#include "arcane/IItemFamily.h"
21#include "arcane/VariableBuildInfo.h"
22#include "arcane/ItemPrinter.h"
24#include "arcane/mesh/CommonItemGroupFilterer.h"
63ItemGroupsSynchronize::
64~ItemGroupsSynchronize()
71void ItemGroupsSynchronize::
75 for(
const ItemGroup& group : m_item_family->groups() ){
76 if (!group.internal()->needSynchronization())
94 ARCANE_ASSERT((!group.null()),(
"Null group in ItemGroupsSynchronize"));
153 debug() <<
"Incremental synchronization for the group <" << group.
name() <<
">"
167 debug() <<
"Direct synchronization for the group <" << group.
name() <<
">"
189 error() <<
"Group is not in sync (name=" << group.name()
190 <<
", nb_diff=" <<
nb_diff <<
")";
void clear()
Supprime tous les éléments de la collection.
Interface d'une famille d'entités.
virtual ItemGroupCollection groups() const =0
Liste des groupes de cette famille.
virtual ItemGroup allItems() const =0
Groupe de toutes les entités.
virtual Int32 maxLocalId() const =0
Interface d'une variable.
bool hasInfoObserver() const
Indique si le contenu de ce groupe est observé.
Groupe d'entités de maillage.
ItemGroupImpl * internal() const
Retourne l'implémentation du groupe.
const String & name() const
Nom du groupe.
void removeItems(Int32ConstArrayView items_local_id, bool check_if_present=true)
Supprime des entités.
Integer size() const
Nombre d'éléments du groupe.
void setItems(Int32ConstArrayView items_local_id)
Positionne les entités du groupe.
void addItems(Int32ConstArrayView items_local_id, bool check_if_present=true)
Ajoute des entités.
Integer checkSynchronize()
Vérifie si les groupes sont synchronisé.
ItemGroupsSynchronize(IItemFamily *item_family)
Créé une instance pour synchroniser tous les groupes de la famille item_family.
Int32 IntAggregator
Type employé pour l'aggrégation des communications de groupes.
void synchronize()
Synchronise les groupes.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Paramètres nécessaires à la construction d'une variable.
virtual Integer checkIfSync(int max_print=0)
Vérifie si la variable est bien synchronisée.
Classe d'accès aux traces.
TraceMessage error() const
Flot pour un message d'erreur.
TraceMessageDbg debug(Trace::eDebugLevel=Trace::Medium) const
Flot pour un message de debug.
Vecteur 1D de données avec sémantique par valeur (style STL).
ARCCORE_HOST_DEVICE Real2 min(Real2 a, Real2 b)
Retourne le minimum de deux Real2.
bool arcaneIsCheck()
Vrai si on est en mode vérification.