Arcane  v3.15.0.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
ApplicationInfo.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2024 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/* ApplicationInfo.h (C) 2000-2024 */
9/* */
10/* Informations sur une application. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_UTILS_APPLICATIONINFO_H
13#define ARCANE_UTILS_APPLICATIONINFO_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/utils/VersionInfo.h"
18#include "arcane/utils/String.h"
20
21/*---------------------------------------------------------------------------*/
22/*---------------------------------------------------------------------------*/
23
24namespace Arcane
25{
26
27/*---------------------------------------------------------------------------*/
28/*---------------------------------------------------------------------------*/
29
30class ApplicationInfoPrivate;
31class CommandLineArguments;
32
33/*---------------------------------------------------------------------------*/
34/*---------------------------------------------------------------------------*/
38class ARCANE_UTILS_EXPORT ApplicationInfo
39{
40 public:
41
43 ApplicationInfo(int* argc,char*** argv,const String& name,const VersionInfo& version);
44 ApplicationInfo(const StringList& args,const String& name,const VersionInfo& version);
45 ApplicationInfo(const CommandLineArguments& args,const String& name,const VersionInfo& version);
48 ApplicationInfo& operator=(const ApplicationInfo& rhs);
49
50 public:
51
53 const String& applicationName() const;
55 ARCCORE_DEPRECATED_2020("use codeVersion() instead")
56 const VersionInfo& version() const { return codeVersion(); }
58 const VersionInfo& codeVersion() const;
60 const String& dataOsDir() const;
62 const String& dataDir() const;
63
65 ARCCORE_DEPRECATED_2020("use codeVersion().versionMajor() instead")
66 int versionMajor() const;
68 ARCCORE_DEPRECATED_2020("use codeVersion().versionMinor() instead")
69 int versionMinor() const;
71 ARCCORE_DEPRECATED_2020("use codeVersion().versionPatch() instead")
72 int versionPatch() const;
73
75 bool isDebug() const;
76
78 const String& codeName() const;
80 const String& targetFullName() const;
81
82 ARCCORE_DEPRECATED_2019("Use commandLineArguments().commandLineArgc() instead")
83 int* commandLineArgc() const;
84 ARCCORE_DEPRECATED_2019("Use commandLineArguments().commandLineArgv() instead")
85 char*** commandLineArgv() const;
86
88 void args(StringList& args) const;
89
91 const CommandLineArguments& commandLineArguments() const;
92
93 public:
94
102 void addDynamicLibrary(const String& lib_name);
103
105 StringCollection dynamicLibrariesName() const;
106
107 public:
108
110 void setDataOsDir(const String& v);
112 void setDataDir(const String& v);
114 ARCCORE_DEPRECATED_2020("use setCodeVersion() instead")
115 void setVersionInfo(const VersionInfo& version_info)
116 { setCodeVersion(version_info); }
118 void setApplicationName(const String& v);
120 void setCodeVersion(const VersionInfo& version_info);
122 void setCodeName(const String& code_name);
128 void setCommandLineArguments(const CommandLineArguments& args);
130 void setIsDebug(bool v);
131
132 public:
133
135 void setRuntimeConfigFileContent(ByteConstSpan content);
137 ByteConstSpan runtimeConfigFileContent() const;
138
139 public:
140
145 void addParameterLine(const String& line);
146
147 public:
148
149 ARCCORE_DEPRECATED_2019("Use commandLineArguments().commandLineArgc() instead")
150 int* m_argc;
151 ARCCORE_DEPRECATED_2019("Use commandLineArguments().commandLineArgv() instead")
152 char*** m_argv;
153
154 private:
155
157
158 private:
159
160 void _init(const String& name);
161 void _setArgs();
162};
163
164/*---------------------------------------------------------------------------*/
165/*---------------------------------------------------------------------------*/
166
167} // End namespace Arcane
168
169/*---------------------------------------------------------------------------*/
170/*---------------------------------------------------------------------------*/
171
172#endif
173
Déclarations des types utilisés dans Arcane.
Informations sur une application.
ARCCORE_DEPRECATED_2020("use codeVersion().versionMajor() instead") int versionMajor() const
Retourne le numéro de version majeure de l'application.
ARCCORE_DEPRECATED_2019("Use commandLineArguments().commandLineArgc() instead") int *m_argc
Nombre d'arguments de la ligne de commande.
Arguments de la ligne de commande.
Vue typée sur une liste d'entités d'une connectivité.
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Definition Lima.cc:149
Informations sur une version.
Definition VersionInfo.h:46
Chaîne de caractères unicode.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
Span< const std::byte > ByteConstSpan
Vue en lecture seule d'un tableau à une dimension de caractères.
Definition UtilsTypes.h:759