Arcane  v3.14.10.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-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/* ApplicationInfo.h (C) 2000-2020 */
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#include "arcane/utils/PropertyDeclarations.h"
21
22/*---------------------------------------------------------------------------*/
23/*---------------------------------------------------------------------------*/
24
25namespace Arcane
26{
27
28/*---------------------------------------------------------------------------*/
29/*---------------------------------------------------------------------------*/
30
31class ApplicationInfoPrivate;
32class CommandLineArguments;
33
34/*---------------------------------------------------------------------------*/
35/*---------------------------------------------------------------------------*/
39class ARCANE_UTILS_EXPORT ApplicationInfo
40{
41 ARCANE_DECLARE_PROPERTY_CLASS(ApplicationInfo);
42 public:
43
45 ApplicationInfo(int* argc,char*** argv,const String& name,const VersionInfo& version);
46 ApplicationInfo(const StringList& args,const String& name,const VersionInfo& version);
47 ApplicationInfo(const CommandLineArguments& args,const String& name,const VersionInfo& version);
50 ApplicationInfo& operator=(const ApplicationInfo& rhs);
51
52 public:
53
55 const String& applicationName() const;
57 ARCCORE_DEPRECATED_2020("use codeVersion() instead")
58 const VersionInfo& version() const { return codeVersion(); }
60 const VersionInfo& codeVersion() const;
62 const String& dataOsDir() const;
64 const String& dataDir() const;
65
67 ARCCORE_DEPRECATED_2020("use codeVersion().versionMajor() instead")
68 int versionMajor() const;
70 ARCCORE_DEPRECATED_2020("use codeVersion().versionMinor() instead")
71 int versionMinor() const;
73 ARCCORE_DEPRECATED_2020("use codeVersion().versionPatch() instead")
74 int versionPatch() const;
75
77 bool isDebug() const;
78
80 const String& codeName() const;
82 const String& targetFullName() const;
83
84 ARCCORE_DEPRECATED_2019("Use commandLineArguments().commandLineArgc() instead")
85 int* commandLineArgc() const;
86 ARCCORE_DEPRECATED_2019("Use commandLineArguments().commandLineArgv() instead")
87 char*** commandLineArgv() const;
88
90 void args(StringList& args) const;
91
93 const CommandLineArguments& commandLineArguments() const;
94
95 public:
96
104 void addDynamicLibrary(const String& lib_name);
105
107 StringCollection dynamicLibrariesName() const;
108
109 public:
110
112 void setDataOsDir(const String& v);
114 void setDataDir(const String& v);
116 ARCCORE_DEPRECATED_2020("use setCodeVersion() instead")
117 void setVersionInfo(const VersionInfo& version_info)
118 { setCodeVersion(version_info); }
120 void setApplicationName(const String& v);
122 void setCodeVersion(const VersionInfo& version_info);
124 void setCodeName(const String& code_name);
130 void setCommandLineArguments(const CommandLineArguments& args);
132 void setIsDebug(bool v);
133
134 public:
135
137 void setRuntimeConfigFileContent(ByteConstSpan content);
139 ByteConstSpan runtimeConfigFileContent() const;
140
141 public:
142
147 void addParameterLine(const String& line);
148
149 public:
150
151 ARCCORE_DEPRECATED_2019("Use commandLineArguments().commandLineArgc() instead")
152 int* m_argc;
153 ARCCORE_DEPRECATED_2019("Use commandLineArguments().commandLineArgv() instead")
154 char*** m_argv;
155
156 private:
157
159
160 private:
161
162 void _init(const String& name);
163 void _setArgs();
164};
165
166/*---------------------------------------------------------------------------*/
167/*---------------------------------------------------------------------------*/
168
169} // End namespace Arcane
170
171/*---------------------------------------------------------------------------*/
172/*---------------------------------------------------------------------------*/
173
174#endif
175
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:120
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:706