#include <arcane/impl/DefaultBackwardMng.h>
Fonctions membres publiques | |
DefaultBackwardMng (ITraceMng *trace, ISubDomain *sub_domain) | |
void | init () override |
Initialisation du manager de retour en arrière. | |
void | beginAction () override |
Indique qu'on commence les actions de sauvegarde/restauration sont terminées. | |
void | endAction () override |
Indique que les actions de sauvegarde/restauration sont terminées. | |
void | setSavePeriod (Integer n) override |
Integer | savePeriod () const override |
void | goBackward () override |
Signale qu'on souhaite effectué un retour arrière. | |
bool | isLocked () const override |
Indique si les sauvegardes de retour-arrière sont vérouillées. | |
bool | isBackwardEnabled () const override |
Indique si un retour-arrière est programmé. | |
void | clear () override |
Supprime les ressources associées au retour-arrière. | |
virtual bool | checkAndApplyRestore () override |
Vérifie et applique la restauration si nécessaire. | |
virtual bool | checkAndApplySave (bool is_forced) override |
Vérifie et applique la sauvegarde des variables si nécessaire. Si is_forced est vrai, force la sauvegarde. | |
Types privés | |
enum | eSequence { SEQSave , SEQForceSave , SEQRestore , SEQLock , SEQNothing } |
Fonctions membres privées | |
void | _restore () |
void | _save () |
void | _checkValidAction () |
void | _checkSave (bool is_forced) |
Attributs privés | |
ITraceMng * | m_trace |
ISubDomain * | m_sub_domain |
IVariableFilter * | m_filter |
IDataReaderWriter * | m_data_io |
Real | m_backward_time |
Temps du dernier retour demandé | |
Integer | m_period |
Période entre deux sauvegardes pour le retour-arrière. | |
bool | m_first_save |
First save. | |
bool | m_action_refused |
Actions authorisées ? | |
eSequence | m_sequence |
Séquence. | |
Membres hérités additionnels | |
Types publics hérités de Arcane::IBackwardMng | |
enum | eAction { Save , Restore } |
\Implémentation par défaut d'une stratégie de retour-arrière.
Définition à la ligne 35 du fichier DefaultBackwardMng.h.
Valeurs énumérées | |
---|---|
SEQSave | Sauvegarde. |
SEQForceSave | Sauvegarde en force. |
SEQRestore | Restauration. |
SEQLock | Lock. |
SEQNothing | Nothing. |
Définition à la ligne 40 du fichier DefaultBackwardMng.h.
Arcane::DefaultBackwardMng::DefaultBackwardMng | ( | ITraceMng * | trace, |
ISubDomain * | sub_domain | ||
) |
Définition à la ligne 55 du fichier DefaultBackwardMng.cc.
Arcane::DefaultBackwardMng::~DefaultBackwardMng | ( | ) |
Définition à la ligne 78 du fichier DefaultBackwardMng.cc.
Définition à la ligne 217 du fichier DefaultBackwardMng.cc.
|
private |
Définition à la ligne 118 du fichier DefaultBackwardMng.cc.
|
private |
Définition à la ligne 165 du fichier DefaultBackwardMng.cc.
|
private |
Définition à la ligne 178 du fichier DefaultBackwardMng.cc.
|
overridevirtual |
Indique qu'on commence les actions de sauvegarde/restauration sont terminées.
Implémente Arcane::IBackwardMng.
Définition à la ligne 203 du fichier DefaultBackwardMng.cc.
Références m_action_refused, et Arccore::ITraceMng::pfatal().
|
overridevirtual |
Vérifie et applique la restauration si nécessaire.
true | si une restauration est effectuée. |
Implémente Arcane::IBackwardMng.
Définition à la ligne 128 du fichier DefaultBackwardMng.cc.
Références m_sequence, et SEQRestore.
Vérifie et applique la sauvegarde des variables si nécessaire. Si is_forced est vrai, force la sauvegarde.
true | si une sauvegarde est effectuée. |
Implémente Arcane::IBackwardMng.
Définition à la ligne 142 du fichier DefaultBackwardMng.cc.
Références Arccore::ITraceMng::info(), m_action_refused, m_sequence, SEQForceSave, et SEQSave.
|
overridevirtual |
Supprime les ressources associées au retour-arrière.
Cette méthode est appelé pour désallouer les ressources comme les sauvegardes des variables. Cette méthode est appelée entre autre avant un équilibrage de charge puisqu'il ne sera pas possible de faire un retour-arrière avant cet équilibrage.
Implémente Arcane::IBackwardMng.
Définition à la ligne 89 du fichier DefaultBackwardMng.cc.
|
overridevirtual |
Indique que les actions de sauvegarde/restauration sont terminées.
Implémente Arcane::IBackwardMng.
Définition à la ligne 264 du fichier DefaultBackwardMng.cc.
|
overridevirtual |
Signale qu'on souhaite effectué un retour arrière.
Le retour arrière aura lieu lors de l'appel à checkAndApplyRestore().
En général il ne faut pas appeler directement cette méthode mais plutôt ITimeLoopMng::goBackward().
Depuis l'appel à cette méthode jusqu'à l'action effective du retour-arrière lors de l'appel à checkAndApplyRestore(), isBackwardEnabled() retourne true.
Implémente Arcane::IBackwardMng.
Définition à la ligne 98 du fichier DefaultBackwardMng.cc.
Références Arccore::ITraceMng::info(), m_action_refused, m_sequence, Arccore::ITraceMng::pfatal(), et SEQRestore.
|
inlineoverridevirtual |
Initialisation du manager de retour en arrière.
Implémente Arcane::IBackwardMng.
Définition à la ligne 59 du fichier DefaultBackwardMng.h.
|
inlineoverridevirtual |
Indique si un retour-arrière est programmé.
Implémente Arcane::IBackwardMng.
Définition à la ligne 72 du fichier DefaultBackwardMng.h.
|
inlineoverridevirtual |
Indique si les sauvegardes de retour-arrière sont vérouillées.
isLocked() est vrai s'il n'est pas possible de faire une sauvegarde. C'est le cas par exemple lorsqu'on a effectué à l'itération M un retour arrière vers l'itération N et qu'on n'est pas encore revenu à l'itération M.
Implémente Arcane::IBackwardMng.
Définition à la ligne 70 du fichier DefaultBackwardMng.h.
|
inlineoverridevirtual |
Implémente Arcane::IBackwardMng.
Définition à la ligne 66 du fichier DefaultBackwardMng.h.
|
inlineoverridevirtual |
Implémente Arcane::IBackwardMng.
Définition à la ligne 65 du fichier DefaultBackwardMng.h.
|
private |
Actions authorisées ?
Définition à la ligne 102 du fichier DefaultBackwardMng.h.
Référencé par beginAction(), checkAndApplySave(), et goBackward().
|
private |
Temps du dernier retour demandé
Définition à la ligne 93 du fichier DefaultBackwardMng.h.
|
private |
Définition à la ligne 90 du fichier DefaultBackwardMng.h.
|
private |
Définition à la ligne 89 du fichier DefaultBackwardMng.h.
|
private |
First save.
Définition à la ligne 99 du fichier DefaultBackwardMng.h.
|
private |
Période entre deux sauvegardes pour le retour-arrière.
Définition à la ligne 96 du fichier DefaultBackwardMng.h.
|
private |
Séquence.
Définition à la ligne 105 du fichier DefaultBackwardMng.h.
Référencé par checkAndApplyRestore(), checkAndApplySave(), et goBackward().
|
private |
Définition à la ligne 88 du fichier DefaultBackwardMng.h.
|
private |
Définition à la ligne 87 du fichier DefaultBackwardMng.h.