Arcane  v3.16.0.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
IApplication.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/* IApplication.h (C) 2000-2022 */
9/* */
10/* Interface de l'application. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_IAPPLICATION_H
13#define ARCANE_IAPPLICATION_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/ArcaneTypes.h"
18#include "arcane/IBase.h"
19
20/*---------------------------------------------------------------------------*/
21/*---------------------------------------------------------------------------*/
22
23namespace Arcane
24{
25
26/*---------------------------------------------------------------------------*/
27/*---------------------------------------------------------------------------*/
28
29class ApplicationInfo;
30class IMainFactory;
31class IArcaneMain;
32class IRessourceMng;
33class IIOMng;
34class XmlNode;
35class ICodeService;
36class IParallelMng;
38class ISession;
39class IDataFactory;
41class ITraceMngPolicy;
45
46/*---------------------------------------------------------------------------*/
47/*---------------------------------------------------------------------------*/
55class ARCANE_CORE_EXPORT IApplication
56: public IBase
57{
58 public:
59
62
65
67 virtual IIOMng* ioMng() =0;
68
71
73 ARCCORE_DEPRECATED_2021("Use dataFactoryMng() instead")
75
77 virtual IDataFactoryMng* dataFactoryMng() const =0;
78
80 virtual const ApplicationInfo& applicationInfo() const =0;
81
83 virtual const ApplicationBuildInfo& applicationBuildInfo() const =0;
84
87
90
92 virtual String versionStr() const =0;
93
95 virtual String mainVersionStr() const =0;
96
98 virtual String majorAndMinorVersionStr() const =0;
99
101 virtual String targetinfoStr() const =0;
102
104 virtual String codeName() const =0;
105
107 virtual String applicationName() const =0;
108
110 virtual String userName() const =0;
111
112 /*
113 * \brief Contenu du fichier Xml de configuration du code.
114 */
115 virtual ByteConstSpan configBuffer() const =0;
116
117 /*
118 * \brief Contenu du fichier Xml de configuration utilisateur
119 */
120 virtual ByteConstSpan userConfigBuffer() const =0;
121
123 virtual String userConfigPath() const =0;
124
126 virtual void addSession(ISession* session) =0;
127
129 virtual void removeSession(ISession* session) =0;
130
133
135 virtual IMainFactory* mainFactory() const =0;
136
139
142
147 virtual Ref<ICodeService> getCodeService(const String& file_name) =0;
148
150 virtual bool hasGarbageCollector() const =0;
151
154
157
170 const String& file_suffix) =0;
171};
172
173/*---------------------------------------------------------------------------*/
174/*---------------------------------------------------------------------------*/
175
176} // End namespace Arcane
177
178/*---------------------------------------------------------------------------*/
179/*---------------------------------------------------------------------------*/
180
181#endif
Informations pour construire une instance de IApplication.
Informations sur une application.
Informations pour l'initialisation du runtime '.Net'.
Interface de l'application.
virtual void addSession(ISession *session)=0
Ajoute la session session.
virtual SessionCollection sessions()=0
Liste des sessions.
virtual ITraceMngPolicy * getTraceMngPolicy()=0
Politique de configuration d'un gestionnaire de trace.
virtual IMainFactory * mainFactory() const =0
Manufacture principale.
virtual IPhysicalUnitSystemService * getPhysicalUnitSystemService()=0
Service gérant les systèmes d'unités physiques.
virtual IIOMng * ioMng()=0
Gestionnaire des entrées/sorties.
virtual ModuleFactoryInfoCollection moduleFactoryInfos()=0
Liste des informations sur les fabriques des modules.
virtual String mainVersionStr() const =0
Numéro de version principal (sans la béta) de l'application.
virtual String applicationName() const =0
Nom de l'application.
virtual IDataFactory * dataFactory()=0
Fabrique de donnée.
virtual const ApplicationBuildInfo & applicationBuildInfo() const =0
Informations sur les paramètres de construction de l'instance.
virtual IConfigurationMng * configurationMng() const =0
Gestionnaire des configurations d'exécution.
virtual void removeSession(ISession *session)=0
Supprime la session session.
virtual Ref< ICodeService > getCodeService(const String &file_name)=0
Retourne le chargeur de cas correspondant au fichier donné par file_name.
virtual bool hasGarbageCollector() const =0
Indique que certains objets sont gérés via un ramasse miette.
virtual String majorAndMinorVersionStr() const =0
Numéro de version majeur et mineure sous la forme M.m.
virtual ServiceFactory2Collection serviceFactories2()=0
Liste des fabriques de service.
virtual const AcceleratorRuntimeInitialisationInfo & acceleratorRuntimeInitialisationInfo() const =0
Informations d'initialisation du runtime pour les accélérateurs.
virtual IDataFactoryMng * dataFactoryMng() const =0
Fabrique de donnée.
virtual IParallelSuperMng * parallelSuperMng()=0
Gestionnaire superviseur du parallélisme.
virtual String userName() const =0
Nom de l'utilisateur.
virtual ITraceMng * createAndInitializeTraceMng(ITraceMng *parent_trace, const String &file_suffix)=0
Créé et initialise une instance de ITraceMng.
virtual const ApplicationInfo & applicationInfo() const =0
Informations sur l'exécutable.
virtual String versionStr() const =0
Numéro de version de l'application.
virtual IParallelSuperMng * sequentialParallelSuperMng()=0
Gestionnaire un superviseur séquentiel du parallélisme.
virtual String targetinfoStr() const =0
Informations sur les options de compilation de l'application.
virtual String codeName() const =0
Nom du code.
virtual const DotNetRuntimeInitialisationInfo & dotnetRuntimeInitialisationInfo() const =0
Informations d'initialisation du runtime '.Net'.
virtual String userConfigPath() const =0
Chemin du répertoire des configurations utilisateur.
Interface de la classe de gestion du code.
Definition IArcaneMain.h:54
Interface de la classe de base des objets principaux arcane.
Definition IBase.h:38
Interface d'un chargeur de cas.
Gestionnaire de configuration.
Interface du gestionnaire de fabrique d'une donnée.
Interface d'une fabrique d'une donnée.
Interface du gestionnaire des entrées sorties.
Definition IIOMng.h:42
Manufacture des classes d'Arcane.
Interface du gestionnaire de parallélisme pour un sous-domaine.
Classe abstraite du superviseur de parallélisme.
Interface d'un service gérant un système d'unité.
Interface d'un gestionnaire de ressource.
Interface d'une session d'exécution d'un cas.
Definition ISession.h:44
Interface du gestionnaire de configuration d'un gestionnnaire de trace.
Interface du gestionnaire de traces.
Référence à une instance.
Chaîne de caractères unicode.
Noeud d'un arbre DOM.
Definition XmlNode.h:51
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
Collection< Internal::IServiceFactory2 * > ServiceFactory2Collection
Collection de fabriques de service.
Collection< IModuleFactoryInfo * > ModuleFactoryInfoCollection
Collection d'informations sur les fabriques de module.
Collection< ISession * > SessionCollection
Collection de sessions.