Arcane  v4.1.2.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
ApplicationBuildInfo.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2025 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/* ApplicationBuildInfo.h (C) 2000-2025 */
9/* */
10/* Informations pour construire une instance de IApplication. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_UTILS_APPLICATIONBUILDINFO_H
13#define ARCANE_UTILS_APPLICATIONBUILDINFO_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
18
19/*---------------------------------------------------------------------------*/
20/*---------------------------------------------------------------------------*/
21
22namespace Arcane
23{
25
26/*---------------------------------------------------------------------------*/
27/*---------------------------------------------------------------------------*/
31class ARCANE_CORE_EXPORT ApplicationCoreBuildInfo
32{
33 class CoreImpl;
34
35 public:
36
37 ApplicationCoreBuildInfo();
38 ApplicationCoreBuildInfo(const ApplicationCoreBuildInfo& rhs);
39 ~ApplicationCoreBuildInfo();
40 ApplicationCoreBuildInfo& operator=(const ApplicationCoreBuildInfo& rhs);
41
42 public:
43
44 void setTaskImplementationService(const String& name);
45 void setTaskImplementationServices(const StringList& names);
46 StringList taskImplementationServices() const;
47
48 void setThreadImplementationService(const String& name);
49 void setThreadImplementationServices(const StringList& names);
50 StringList threadImplementationServices() const;
51
52 Int32 nbTaskThread() const;
53 void setNbTaskThread(Integer v);
54
55 protected:
56
57 CoreImpl* m_core = nullptr;
58};
59
60/*---------------------------------------------------------------------------*/
61/*---------------------------------------------------------------------------*/
65class ARCANE_CORE_EXPORT ApplicationBuildInfo
66: public ApplicationCoreBuildInfo
67{
68 class Impl;
69
70 public:
71
72 ApplicationBuildInfo();
73 ApplicationBuildInfo(const ApplicationBuildInfo& rhs);
74 ~ApplicationBuildInfo();
75 ApplicationBuildInfo& operator=(const ApplicationBuildInfo& rhs);
76
77 public:
78
79 void setMessagePassingService(const String& name);
80 String messagePassingService() const;
81
82 Int32 nbSharedMemorySubDomain() const;
83 void setNbSharedMemorySubDomain(Int32 v);
84
85 Int32 nbReplicationSubDomain() const;
86 void setNbReplicationSubDomain(Int32 v);
87
88 Int32 nbProcessusSubDomain() const;
89 void setNbProcessusSubDomain(Int32 v);
90
95 void setConfigFileName(const String& name);
96
107 String configFileName() const;
108
113 void setOutputLevel(Int32 v);
114 Int32 outputLevel() const;
115
120 void setVerbosityLevel(Int32 v);
121 Int32 verbosityLevel() const;
122
123 Int32 minimalVerbosityLevel() const;
124 void setMinimalVerbosityLevel(Int32 v);
125
126 bool isMasterHasOutputFile() const;
127 void setIsMasterHasOutputFile(bool v);
128
136 void setOutputDirectory(const String& name);
137 String outputDirectory() const;
138
139 public:
140
142 void setApplicationName(const String& v);
144 String applicationName() const;
145
147 void setCodeVersion(const VersionInfo& version_info);
149 VersionInfo codeVersion() const;
150
152 void setCodeName(const String& code_name);
154 String codeName() const;
155
158
160 void threadBindingStrategy(const String& v);
161
166
167 public:
168
174 String internalDefaultMessagePassingService() const;
175
176 public:
177
185 void addDynamicLibrary(const String& lib_name);
186
187 public:
188
189 void addParameter(const String& name,const String& value);
197 void parseArguments(const CommandLineArguments& args);
198
199 public:
200
201 ApplicationInfo& _internalApplicationInfo();
202 const ApplicationInfo& _internalApplicationInfo() const;
203
204 public:
205
206 void setDefaultValues();
207 void setDefaultServices();
208
209 private:
210
211 Impl* m_p = nullptr;
212};
213
214/*---------------------------------------------------------------------------*/
215/*---------------------------------------------------------------------------*/
216
217} // End namespace Arcane
218
219/*---------------------------------------------------------------------------*/
220/*---------------------------------------------------------------------------*/
221
222#endif
223
Déclarations des types utilisés dans Arcane.
void setVerbosityLevel(Int32 v)
Positionne le niveau de verbosité des messages des fichiers listings réduits.
void setOutputDirectory(const String &name)
Positionne le répertoire contenant les différentes sorties de la simulation.
VersionInfo codeVersion() const
Numéro de version.
void setOutputLevel(Int32 v)
Positionne le niveau de verbosité des messages sur la sortie standard.
String configFileName() const
Nom du fichier de configuration du code.
void addDynamicLibrary(const String &lib_name)
Ajoute la bibliothèque lib_name à la liste des bibliothèques chargées dynamiquements.
void internalSetDefaultMessagePassingService(const String &name)
Nom du gestionnaire de message par défaut. Ne doit être modifié que par Arcane.
void setCodeName(const String &code_name)
Positionne le nom du code.
String applicationName() const
Nom de l'application.
void parseArguments(const CommandLineArguments &args)
Analyse les arguments de args.
void setApplicationName(const String &v)
Positionne le nom de l'application.
String codeName() const
Retourne le nom du code.
CaseDatasetSource & caseDatasetSource()
Source du jeu de données.
void setConfigFileName(const String &name)
Positionne le fichier de configuration du code.
void setCodeVersion(const VersionInfo &version_info)
Positionne le numéro de version du code.
String threadBindingStrategy() const
Stratégie pour punaiser les threads des tâches.
Informations sur une application.
Source d'un jeu de données d'un cas.
Chaîne de caractères unicode.
Informations sur une version.
Definition VersionInfo.h:46
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
Int32 Integer
Type représentant un entier.
List< String > StringList
Tableau de chaînes de caractères unicode.
Definition UtilsTypes.h:509
std::int32_t Int32
Type entier signé sur 32 bits.