Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
ITimeLoop.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2022 CEA (www.cea.fr) IFPEN (www.ifpenergiesnouvelles.com)
4// See the top-level COPYRIGHT file for details.
5// SPDX-License-Identifier: Apache-2.0
6//-----------------------------------------------------------------------------
7/*---------------------------------------------------------------------------*/
8/* ITimeLoop.h (C) 2000-2014 */
9/* */
10/* Interface d'une boucle en temps. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_ITIMELOOP_H
13#define ARCANE_ITIMELOOP_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/ArcaneTypes.h"
18
19/*---------------------------------------------------------------------------*/
20/*---------------------------------------------------------------------------*/
21
22ARCANE_BEGIN_NAMESPACE
23
24/*---------------------------------------------------------------------------*/
25/*---------------------------------------------------------------------------*/
26
27class IApplication;
28class TimeLoopEntryPointInfo;
29typedef Collection<TimeLoopEntryPointInfo> TimeLoopEntryPointInfoCollection;
30class TimeLoopSingletonServiceInfo;
31typedef Collection<TimeLoopSingletonServiceInfo> TimeLoopSingletonServiceInfoCollection;
32class IConfiguration;
33
34/*---------------------------------------------------------------------------*/
35/*---------------------------------------------------------------------------*/
40class ARCANE_CORE_EXPORT ITimeLoop
41{
42 public:
48 static const char* WComputeLoop;
50 static const char* WBuild;
52 static const char* WInit;
54 static const char* WRestore;
56 static const char* WOnMeshChanged;
58 static const char* WOnMeshRefinement;
60 static const char* WExit;
62
63 public:
64
65 virtual ~ITimeLoop() {}
66
67 public:
68
70 virtual void build() =0;
71
72 public:
73
75 virtual IApplication* application() const =0;
76
77 public:
78
80 virtual String name() const =0;
81
83 virtual String title() const =0;
84
86 virtual void setTitle(const String&) =0;
87
89 virtual String description() const =0;
90
92 virtual void setDescription(const String&) =0;
93
96
99
102
105
108
110 virtual void setEntryPoints(const String& where,const TimeLoopEntryPointInfoCollection&) =0;
111
113 virtual StringCollection userClasses() const =0;
114
116 virtual void setUserClasses(const StringCollection&) =0;
117
120
123
126};
127
128/*---------------------------------------------------------------------------*/
129/*---------------------------------------------------------------------------*/
130
131ARCANE_END_NAMESPACE
132
133/*---------------------------------------------------------------------------*/
134/*---------------------------------------------------------------------------*/
135
136#endif
137
Interface de l'application.
Interface d'une configuration.
Interface d'une boucle en temps.
Definition ITimeLoop.h:41
virtual void setUserClasses(const StringCollection &)=0
Retourne la liste des classes associées à la boucle en temps.
static const char * WRestore
appelé pour restaurer les variables lors d'un retour arrière
Definition ITimeLoop.h:54
virtual StringCollection optionalModulesName() const =0
Liste des noms des modules facultatifs.
virtual void setRequiredModulesName(const StringCollection &)=0
Positionne la liste des des modules obligatoires.
virtual String title() const =0
Titre de la boucle en temps.
virtual IApplication * application() const =0
Application.
virtual TimeLoopEntryPointInfoCollection entryPoints(const String &where) const =0
Liste des noms des points d'entrée pour le point d'appel where.
static const char * WOnMeshChanged
appelé après un changement de maillage
Definition ITimeLoop.h:56
virtual void setTitle(const String &)=0
Positionne le titre de la boucle en temps.
virtual void setSingletonServices(const TimeLoopSingletonServiceInfoCollection &c)=0
Positionne la liste des services singletons.
static const char * WExit
appelé lors de la terminaison du code.
Definition ITimeLoop.h:60
virtual void build()=0
Construit la boucle en temps.
virtual IConfiguration * configuration()=0
Options de configuration.
virtual StringCollection requiredModulesName() const =0
Liste des noms des modules obligatoires.
virtual TimeLoopSingletonServiceInfoCollection singletonServices() const =0
Liste services singletons.
virtual String description() const =0
Description de la boucle en temps.
static const char * WOnMeshRefinement
appelé après un raffinement de maillage
Definition ITimeLoop.h:58
virtual ~ITimeLoop()
Libère les ressources.
Definition ITimeLoop.h:65
virtual void setDescription(const String &)=0
Positionne la description de la boucle en temps.
virtual void setOptionalModulesName(const StringCollection &)=0
Positionne la liste des des modules facultatifs.
static const char * WBuild
appelé lors de la lecture du jeu de données
Definition ITimeLoop.h:50
static const char * WComputeLoop
appelé pendant la boucle de calcul
Definition ITimeLoop.h:48
virtual void setEntryPoints(const String &where, const TimeLoopEntryPointInfoCollection &)=0
Positionne la liste des noms des points d'entrée pour le point d'appel where.
virtual StringCollection userClasses() const =0
Liste des classes utilisateurs associées à la boucle en temps.
static const char * WInit
appelé pendant l'initialisation, l'initialisation d'une reprise ou d'un nouveau cas
Definition ITimeLoop.h:52
virtual String name() const =0
Nom de la boucle en temps.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Definition Lima.cc:120
Chaîne de caractères unicode.