14#include "arcane/utils/ArcanePrecomp.h"
16#include "arcane/utils/List.h"
17#include "arcane/utils/String.h"
19#include "arcane/TimeLoop.h"
20#include "arcane/TimeLoopEntryPointInfo.h"
21#include "arcane/TimeLoopSingletonServiceInfo.h"
22#include "arcane/Configuration.h"
23#include "arcane/IApplication.h"
35const char* ITimeLoop::WComputeLoop =
"compute-loop";
36const char* ITimeLoop::WBuild =
"build";
37const char* ITimeLoop::WInit =
"init";
38const char* ITimeLoop::WRestore =
"restore";
39const char* ITimeLoop::WOnMeshChanged =
"on-mesh-changed";
40const char* ITimeLoop::WOnMeshRefinement =
"on-mesh-refinement";
41const char* ITimeLoop::WExit =
"exit";
46typedef List<TimeLoopEntryPointInfo> TimeLoopEntryPointInfoList;
58 typedef std::map<String,List< TimeLoopEntryPointInfo > > EntryPointInfoMap;
75 EntryPointInfoMap m_entry_points;
95TimeLoopPrivate(IApplication* app,
const String& name)
107TimeLoop(IApplication* app,
const String& name)
108: m_p(new TimeLoopPrivate(app,name))
154 TimeLoopPrivate::EntryPointInfoMap::const_iterator
it = m_p->m_entry_points.find(where);
155 if (
it==m_p->m_entry_points.end()){
170 m_p->m_entry_points.insert(TimeLoopPrivate::EntryPointInfoMap::value_type(where,
entry_points));
212 return m_p->m_is_old;
216setOldFormat(
bool is_old)
218 m_p->m_is_old = is_old;
242 return m_p->m_optional_modules_name;
257 return m_p->m_singleton_services;
266 m_p->m_singleton_services.clone(
c);
275 return m_p->m_configuration;
Interface de l'application.
virtual IConfigurationMng * configurationMng() const =0
Gestionnaire des configurations d'exécution.
Interface d'une configuration.
Interface d'une boucle en temps.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
void clone(const Collection< T > &base)
Clone la collection base.
String m_description
Description.
StringList m_required_modules_name
Vrai si boucle en temps au vieux format.
IApplication * m_application
Application.
String m_name
Nom informatique.
StringList m_user_classes
Liste des classes utilisateurs.
virtual void setEntryPoints(const String &where, const TimeLoopEntryPointInfoCollection &calls)
Positionne la liste des noms des points d'entrée pour le point d'appel where.
virtual String title() const
Titre de la boucle en temps.
virtual String description() const
Description de la boucle en temps.
virtual void setDescription(const String &description)
Positionne la description de la boucle en temps.
virtual void setTitle(const String &title)
Positionne le titre de la boucle en temps.
virtual StringCollection userClasses() const
Liste des classes utilisateurs associées à la boucle en temps.
virtual TimeLoopEntryPointInfoCollection entryPoints(const String &where) const
Liste des noms des points d'entrée pour le point d'appel where.
virtual void setSingletonServices(const TimeLoopSingletonServiceInfoCollection &c)
Positionne la liste des services singletons.
virtual void setOptionalModulesName(const StringCollection &names)
Positionne la liste des des modules facultatifs.
virtual String name() const
Nom de la boucle en temps.
virtual void setRequiredModulesName(const StringCollection &names)
Positionne la liste des des modules obligatoires.
virtual IConfiguration * configuration()
Options de configuration.
virtual StringCollection optionalModulesName() const
Liste des noms des modules facultatifs.
virtual void build()
Construit la boucle en temps.
virtual void setUserClasses(const StringCollection &user_classes)
Retourne la liste des classes associées à la boucle en temps.
virtual TimeLoopSingletonServiceInfoCollection singletonServices() const
Liste services singletons.
virtual IApplication * application() const
Application.
virtual StringCollection requiredModulesName() const
Liste des noms des modules obligatoires.
Chaîne de caractères unicode.