13#ifndef ARCANE_IMPL_INTERNAL_VARIABLESYNCHRONIZERMNG_H
14#define ARCANE_IMPL_INTERNAL_VARIABLESYNCHRONIZERMNG_H
18#include "arcane/utils/TraceAccessor.h"
21#include "arcane/core/IVariableSynchronizerMng.h"
22#include "arcane/core/internal/IVariableSynchronizerMngInternal.h"
38class ARCANE_IMPL_EXPORT VariableSynchronizerMng
45 ~VariableSynchronizerMng();
57 explicit InternalApi(VariableSynchronizerMng* vms);
67 void dumpStats(std::ostream& ostr)
const;
71 VariableSynchronizerMng* m_synchronizer_mng =
nullptr;
72 std::unique_ptr<BufferList> m_buffer_list;
85 return m_on_synchronized;
92 void dumpStats(std::ostream& ostr)
const override;
93 void flushPendingStats()
override;
95 bool isDoingStats()
const {
return m_is_doing_stats || m_synchronize_compare_level > 0; }
99 IVariableMng* m_variable_mng =
nullptr;
100 IParallelMng* m_parallel_mng =
nullptr;
101 InternalApi m_internal_api{
this };
102 EventObservable<const VariableSynchronizerEventArgs&> m_on_synchronized;
103 VariableSynchronizerStats* m_stats =
nullptr;
104 Int32 m_synchronize_compare_level = 0;
105 bool m_is_doing_stats =
false;
Fichier contenant les mécanismes de gestion des évènements.
Classe de base d'un handler d'évènement.
Interface d'un allocateur pour la mémoire.
Interface du gestionnaire de parallélisme pour un sous-domaine.
Interface du gestionnaire de variables.
API interne à Arcane de IVariableSynchronizerMng.
Interface du gestionnaire de synchronisation des variables.
Gestion d'un buffer mémoire.
Référence à une instance.
TraceAccessor(ITraceMng *m)
Construit un accesseur via le gestionnaire de trace m.
Gère un pool de buffer associé à un allocateur.
void setSynchronizationCompareLevel(Int32 v) final
Positionne le niveau de comparaison entre les valeurs avant et après synchronisations.
bool isSynchronizationComparisonEnabled() const final
Indique si on effectue les comparaisons des valeurs avant et après synchronisation.
EventObservable< const VariableSynchronizerEventArgs & > & onSynchronized() override
Évènement envoyé en début et fin de synchronisation.
Int32 synchronizationCompareLevel() const final
Niveau de comparaison des valeurs avant et après synchronisation.
IParallelMng * parallelMng() const override
Gestionnaire de parallélisme associé
Statistiques de synchronisation.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
std::int32_t Int32
Type entier signé sur 32 bits.