Informations pour synchroniser les groupes entre sous-domaines. Plus de détails...
#include <arcane/mesh/ItemGroupsSynchronize.h>
Types publics | |
typedef Int32 | IntAggregator |
Type employé pour l'aggrégation des communications de groupes. | |
Fonctions membres publiques | |
ItemGroupsSynchronize (IItemFamily *item_family) | |
Créé une instance pour synchroniser tous les groupes de la famille item_family. | |
ItemGroupsSynchronize (IItemFamily *item_family, ItemGroupCollection groups) | |
Créé une instance pour synchroniser les groupes groups de la famille item_family. | |
void | synchronize () |
Synchronise les groupes. | |
Integer | checkSynchronize () |
Vérifie si les groupes sont synchronisé. | |
Fonctions membres publiques hérités de Arccore::TraceAccessor | |
TraceAccessor (ITraceMng *m) | |
Construit un accesseur via le gestionnaire de trace m. | |
TraceAccessor (const TraceAccessor &rhs) | |
Constructeur par recopie. | |
TraceAccessor & | operator= (const TraceAccessor &rhs) |
Opérateur de recopie. | |
virtual | ~TraceAccessor () |
Libère les ressources. | |
ITraceMng * | traceMng () const |
Gestionnaire de trace. | |
TraceMessage | info () const |
Flot pour un message d'information. | |
TraceMessage | pinfo () const |
Flot pour un message d'information en parallèle. | |
TraceMessage | info (char category) const |
Flot pour un message d'information d'une catégorie donnée. | |
TraceMessage | pinfo (char category) const |
Flot pour un message d'information parallèle d'une catégorie donnée. | |
TraceMessage | info (bool v) const |
Flot pour un message d'information. | |
TraceMessage | warning () const |
Flot pour un message d'avertissement. | |
TraceMessage | pwarning () const |
TraceMessage | error () const |
Flot pour un message d'erreur. | |
TraceMessage | perror () const |
TraceMessage | log () const |
Flot pour un message de log. | |
TraceMessage | plog () const |
Flot pour un message de log. | |
TraceMessage | logdate () const |
Flot pour un message de log précédé de la date. | |
TraceMessage | fatal () const |
Flot pour un message d'erreur fatale. | |
TraceMessage | pfatal () const |
Flot pour un message d'erreur fatale en parallèle. | |
TraceMessageDbg | debug (Trace::eDebugLevel=Trace::Medium) const |
Flot pour un message de debug. | |
Trace::eDebugLevel | configDbgLevel () const |
Niveau debug du fichier de configuration. | |
TraceMessage | info (Int32 verbose_level) const |
Flot pour un message d'information d'un niveau donné | |
TraceMessage | linfo () const |
Flot pour un message d'information avec le niveau d'information local à cette instance. | |
TraceMessage | linfo (Int32 relative_level) const |
Flot pour un message d'information avec le niveau d'information local à cette instance. | |
void | fatalMessage (const StandaloneTraceMessage &o) const |
Attributs publics | |
IItemFamily * | m_item_family |
ItemVariableScalarRefT< IntAggregator > | m_var |
ItemGroupList | m_groups |
Fonctions membres privées | |
void | _setGroups () |
Membres hérités additionnels | |
Fonctions membres protégées hérités de Arccore::TraceAccessor | |
void | _setLocalVerboseLevel (Int32 v) |
Int32 | _localVerboseLevel () const |
Informations pour synchroniser les groupes entre sous-domaines.
Synchroniser un groupe signifie que chaque sous-domaine qui possède un type d'entité envoie les infos des groupes aux autres.
Pour pouvoir utiliser cette classe, il faut être certain que les infos de synchronisation sont à jour (IParallelMng::computeSynchronizeInfos()).
Après avoir créer une instance, il suffit d'appeller la méthode synchronize() pour synchroniser le groupe. Par exemple, pour synchroniser les groupes de faces:
Définition à la ligne 61 du fichier ItemGroupsSynchronize.h.
Type employé pour l'aggrégation des communications de groupes.
Définition à la ligne 92 du fichier ItemGroupsSynchronize.h.
Arcane::mesh::ItemGroupsSynchronize::ItemGroupsSynchronize | ( | IItemFamily * | item_family | ) |
Créé une instance pour synchroniser tous les groupes de la famille item_family.
Définition à la ligne 35 du fichier ItemGroupsSynchronize.cc.
Arcane::mesh::ItemGroupsSynchronize::ItemGroupsSynchronize | ( | IItemFamily * | item_family, |
ItemGroupCollection | groups | ||
) |
Créé une instance pour synchroniser les groupes groups de la famille item_family.
Définition à la ligne 49 du fichier ItemGroupsSynchronize.cc.
Arcane::mesh::ItemGroupsSynchronize::~ItemGroupsSynchronize | ( | ) |
Définition à la ligne 63 du fichier ItemGroupsSynchronize.cc.
|
private |
Définition à la ligne 71 du fichier ItemGroupsSynchronize.cc.
Integer Arcane::mesh::ItemGroupsSynchronize::checkSynchronize | ( | ) |
Vérifie si les groupes sont synchronisé.
le | nombre d'entités qui sont désynchronisées. |
Définition à la ligne 177 du fichier ItemGroupsSynchronize.cc.
Références Arcane::VariableRef::checkIfSync(), ENUMERATE_ITEM, Arccore::TraceAccessor::error(), et Arcane::IItemFamily::groups().
void Arcane::mesh::ItemGroupsSynchronize::synchronize | ( | ) |
Synchronise les groupes.
Définition à la ligne 85 du fichier ItemGroupsSynchronize.cc.
Références Arcane::ItemGroup::addItems(), Arcane::IItemFamily::allItems(), Arcane::arcaneIsCheck(), Arccore::TraceAccessor::debug(), ENUMERATE_ITEM, Arcane::ItemGroupImpl::hasInfoObserver(), Arcane::ItemGroup::internal(), Arcane::IItemFamily::maxLocalId(), Arcane::math::min(), Arcane::ItemGroup::name(), Arcane::ItemGroup::removeItems(), Arcane::ItemGroup::setItems(), et Arcane::ItemGroup::size().
ItemGroupList Arcane::ItemGroupsSynchronize::m_groups |
Définition à la ligne 94 du fichier ItemGroupsSynchronize.h.
IItemFamily* Arcane::ItemGroupsSynchronize::m_item_family |
Définition à la ligne 91 du fichier ItemGroupsSynchronize.h.
ItemVariableScalarRefT<IntAggregator> Arcane::ItemGroupsSynchronize::m_var |
Définition à la ligne 93 du fichier ItemGroupsSynchronize.h.