Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
AlephMultiTest_axl.h
1/*---------------------------------------------------------------------------*/
2/*---------------------------------------------------------------------------*/
3// #WARNING#: This file has been generated automatically. Do not edit.
4// Arcane version 1.0 : 11/18/2024 02:52:13
5/*---------------------------------------------------------------------------*/
6/*---------------------------------------------------------------------------*/
7
8#ifndef ARCANE_CASEOPTION_AXLSTAR_ARCANETEST_ALEPHMULTITEST_H
9#define ARCANE_CASEOPTION_AXLSTAR_ARCANETEST_ALEPHMULTITEST_H
10
11/*---------------------------------------------------------------------------*/
12/*---------------------------------------------------------------------------*/
13
14#include "arcane/utils/String.h"
15
16#include "arcane/CaseOptions.h"
17#include "arcane/CaseOptionsMulti.h"
18#include "arcane/CaseOptionBuildInfo.h"
19#include "arcane/XmlNodeList.h"
20
21/*---------------------------------------------------------------------------*/
22/*---------------------------------------------------------------------------*/
23
24namespace ArcaneTest {
25
26/*---------------------------------------------------------------------------*/
27/*---------------------------------------------------------------------------*/
28
31{
32public:
33
34 /*-------------------------------------------------------------------------*/
35 /*--------------------------- Complex Options -----------------------------*/
36 /*-------------------------------------------------------------------------*/
37
38 /*-------------------------------------------------------------------------*/
39 /*--------------------------- Non Complex Options -------------------------*/
40 /*-------------------------------------------------------------------------*/
41
43 : m_case_options(new Arcane::CaseOptions(cm,"aleph-multi-test"))
44 , deltaT(Arcane::CaseOptionBuildInfo(_configList(),
45 /* name */ "deltaT", _element(),
46 /* default */ "0.001",
47 /* min-occurs */ 1,
48 /* max-occurs */ 1,
49 /* optional */ false))
50 , iterations(Arcane::CaseOptionBuildInfo(_configList(),
51 /* name */ "iterations", _element(),
52 /* default */ "2",
53 /* min-occurs */ 1,
54 /* max-occurs */ 1,
55 /* optional */ false))
56 , iniTemperature(Arcane::CaseOptionBuildInfo(_configList(),
57 /* name */ "ini-temperature", _element(),
58 /* default */ "300",
59 /* min-occurs */ 1,
60 /* max-occurs */ 1,
61 /* optional */ false))
62 , hotTemperature(Arcane::CaseOptionBuildInfo(_configList(),
63 /* name */ "hot-temperature", _element(),
64 /* default */ "700",
65 /* min-occurs */ 1,
66 /* max-occurs */ 1,
67 /* optional */ false))
68 , alephNumberOfSuccessiveSolvers(Arcane::CaseOptionBuildInfo(_configList(),
69 /* name */ "aleph-number-of-successive-solvers", _element(),
70 /* default */ "2",
71 /* min-occurs */ 1,
72 /* max-occurs */ 1,
73 /* optional */ false))
74 , alephNumberOfResolutionsPerSolvers(Arcane::CaseOptionBuildInfo(_configList(),
75 /* name */ "aleph-number-of-resolutions-per-solvers", _element(),
76 /* default */ "0x73",
77 /* min-occurs */ 1,
78 /* max-occurs */ 1,
79 /* optional */ false))
80 , alephUnderlyingSolver(Arcane::CaseOptionBuildInfo(_configList(),
81 /* name */ "aleph-underlying-solver", _element(),
82 /* default */ "0x00",
83 /* min-occurs */ 1,
84 /* max-occurs */ 1,
85 /* optional */ false))
86 , alephNumberOfCores(Arcane::CaseOptionBuildInfo(_configList(),
87 /* name */ "aleph-number-of-cores", _element(),
88 /* default */ "0x10",
89 /* min-occurs */ 1,
90 /* max-occurs */ 1,
91 /* optional */ false))
92 {
93
94 }
95
96public:
97 // Interfaces for main CaseOptions
98
99 Arcane::Real getDeltaT() { return deltaT(); }
100 Arcane::ICaseFunction* getDeltaTFunction() { return deltaT.function(); }
101 Arcane::IStandardFunction* getDeltaTStandardFunction() { return deltaT.standardFunction(); }
102 Arcane::Integer getIterations() { return iterations(); }
103 Arcane::ICaseFunction* getIterationsFunction() { return iterations.function(); }
104 Arcane::IStandardFunction* getIterationsStandardFunction() { return iterations.standardFunction(); }
105 Arcane::Real getIniTemperature() { return iniTemperature(); }
106 Arcane::ICaseFunction* getIniTemperatureFunction() { return iniTemperature.function(); }
107 Arcane::IStandardFunction* getIniTemperatureStandardFunction() { return iniTemperature.standardFunction(); }
108 Arcane::Real getHotTemperature() { return hotTemperature(); }
109 Arcane::ICaseFunction* getHotTemperatureFunction() { return hotTemperature.function(); }
110 Arcane::IStandardFunction* getHotTemperatureStandardFunction() { return hotTemperature.standardFunction(); }
111 Arcane::Integer getAlephNumberOfSuccessiveSolvers() { return alephNumberOfSuccessiveSolvers(); }
112 Arcane::ICaseFunction* getAlephNumberOfSuccessiveSolversFunction() { return alephNumberOfSuccessiveSolvers.function(); }
113 Arcane::IStandardFunction* getAlephNumberOfSuccessiveSolversStandardFunction() { return alephNumberOfSuccessiveSolvers.standardFunction(); }
114 Arcane::Integer getAlephNumberOfResolutionsPerSolvers() { return alephNumberOfResolutionsPerSolvers(); }
115 Arcane::ICaseFunction* getAlephNumberOfResolutionsPerSolversFunction() { return alephNumberOfResolutionsPerSolvers.function(); }
116 Arcane::IStandardFunction* getAlephNumberOfResolutionsPerSolversStandardFunction() { return alephNumberOfResolutionsPerSolvers.standardFunction(); }
117 Arcane::Integer getAlephUnderlyingSolver() { return alephUnderlyingSolver(); }
118 Arcane::ICaseFunction* getAlephUnderlyingSolverFunction() { return alephUnderlyingSolver.function(); }
119 Arcane::IStandardFunction* getAlephUnderlyingSolverStandardFunction() { return alephUnderlyingSolver.standardFunction(); }
120 Arcane::Integer getAlephNumberOfCores() { return alephNumberOfCores(); }
121 Arcane::ICaseFunction* getAlephNumberOfCoresFunction() { return alephNumberOfCores.function(); }
122 Arcane::IStandardFunction* getAlephNumberOfCoresStandardFunction() { return alephNumberOfCores.standardFunction(); }
123
124
125
126 // Interfaces for complex options
127
128
129public:
130
131 Arcane::ICaseOptions* caseOptions() const
132 {
133 return m_case_options.get();
134 }
135
136 Arcane::ICaseOptionList* configList() const
137 {
138 return m_case_options->configList();
139 }
140
141 void setCaseModule(Arcane::IModule* m)
142 {
143 m_case_options->setCaseModule(m);
144 }
145
146 void setCaseServiceInfo(Arcane::IServiceInfo* si)
147 {
148 m_case_options->setCaseServiceInfo(si);
149 }
150
151 void addAlternativeNodeName(const Arcane::String& lang,
152 const Arcane::String& name)
153 {
154 m_case_options->addAlternativeNodeName(lang,name);
155 }
156
157private:
158
159 Arcane::ICaseOptionList* _configList() const { return configList(); }
160 Arcane::XmlNode _element() const { return Arcane::XmlNode(); }
161
162private:
163
164 static Arcane::ICaseOptions* _createCaseOption(Arcane::ICaseMng* cm,Arcane::ICaseOptions* co);
165
167
168public:
169
170
172 Arcane::CaseOptionInteger iterations;
173 Arcane::CaseOptionReal iniTemperature;
174 Arcane::CaseOptionReal hotTemperature;
175 Arcane::CaseOptionInteger alephNumberOfSuccessiveSolvers;
176 Arcane::CaseOptionInteger alephNumberOfResolutionsPerSolvers;
177 Arcane::CaseOptionInteger alephUnderlyingSolver;
178 Arcane::CaseOptionInteger alephNumberOfCores;
179};
180
181/*---------------------------------------------------------------------------*/
182/*---------------------------------------------------------------------------*/
183
184}
185
186/*---------------------------------------------------------------------------*/
187/*---------------------------------------------------------------------------*/
188
189#endif
190
191
192
193/*---------------------------------------------------------------------------*/
194/*---------------------------------------------------------------------------*/
195// #WARNING#: This file has been generated automatically. Do not edit.
196// Arcane version 1.0 : 11/18/2024 02:52:13
197/*---------------------------------------------------------------------------*/
198/*---------------------------------------------------------------------------*/
199
200#ifndef ARCANE_MODULE_AXLSTAR_ARCANETEST_ALEPHMULTITEST_H
201#define ARCANE_MODULE_AXLSTAR_ARCANETEST_ALEPHMULTITEST_H
202
203/*---------------------------------------------------------------------------*/
204/*---------------------------------------------------------------------------*/
205
206#include "arcane/VariableTypes.h"
207#include "arcane/EntryPoint.h"
208#include "arcane/ISubDomain.h"
209#include "arcane/ModuleBuildInfo.h"
210#include "arcane/ModuleFactory.h"
211#include "arcane/ServiceRegisterer.h"
212#include "arcane/BasicModule.h"
213#include "arcane/ServiceInfo.h"
214
215/*---------------------------------------------------------------------------*/
216/*---------------------------------------------------------------------------*/
217
218namespace Arcane
219{
220class ISubDomain;
221class IModule;
222}
223
224/*---------------------------------------------------------------------------*/
225/*---------------------------------------------------------------------------*/
226
227namespace ArcaneTest {
228
229/*---------------------------------------------------------------------------*/
230/*---------------------------------------------------------------------------*/
231
232class CaseOptionsAlephMultiTest;
233
234/*---------------------------------------------------------------------------*/
235/*---------------------------------------------------------------------------*/
236
239 : public Arcane::BasicModule
240{
241public:
242
243 static void fillServiceInfo(Arcane::ServiceInfo* si)
244 {
245 si->setCaseOptionsFileName("AlephMultiTest_arcane_aleph_tests");
246 si->setAxlVersion(1.0);
247 si->setDefaultTagName(Arcane::String("aleph-multi-test"));
248 si->setAxlContent(getAxlContent());
249 }
250
251public:
252
255 , m_options(nullptr)
256 , m_cell_temperature(Arcane::VariableBuildInfo(this, "CellTemperature" ))
257 , m_face_temperature(Arcane::VariableBuildInfo(this, "FaceTemperature" , Arcane::IVariable::PNoDump))
258 {
260 m_options->setCaseModule(this);
261 addEntryPoint(this, "init",
265 addEntryPoint(this, "compute",
266 &ArcaneAlephMultiTestObject::compute,
269 }
270
272 {
273 delete m_options;
274 }
275
276public:
277
279 virtual void init() = 0; // Init
280 virtual void compute() = 0; // Compute
281
284
285private:
286
289
290protected:
291
294 Arcane::VariableFaceReal m_face_temperature;
295
296private:
297 static Arcane::FileContent getAxlContent()
298 {
299 const char* str_content = "";
300 const Arcane::Byte* content = (const Arcane::Byte*)(str_content);
301 Arcane::Span<const Arcane::Byte> bytes(content,0);
302 int file_version = 1;
303 return Arcane::FileContent(bytes,file_version,"");
304 }
305
306};
307
308/*---------------------------------------------------------------------------*/
309/*---------------------------------------------------------------------------*/
310
311#define ARCANE_REGISTER_MODULE_ALEPHMULTITEST(class_name) \
312 ARCANE_REGISTER_AXL_MODULE(class_name,Arcane::ModuleProperty("AlephMultiTest",false))
313
314/*---------------------------------------------------------------------------*/
315/*---------------------------------------------------------------------------*/
316
317}
318
319/*---------------------------------------------------------------------------*/
320/*---------------------------------------------------------------------------*/
321
322#endif
323
Generation de la classe de base du Module.
virtual void init()=0
points d'entrée
CaseOptionsAlephMultiTest * options() const
Options du jeu de données du module.
Arcane::VariableCellReal m_cell_temperature
Variables du module.
CaseOptionsAlephMultiTest * m_options
Options du jeu de données du module.
Module basique.
Definition BasicModule.h:45
Informations pour construire une option de jeu de données.
ICaseFunction * function() const override
Fonction associée à cette option (0 si aucune).
virtual IStandardFunction * standardFunction() const
Fonction standard associée à cette option (0 si aucune).
Classe de base d'une liste d'options du jeu de données.
Definition CaseOptions.h:57
Description et contenu d'un fichier.
Definition FileContent.h:32
Interface d'une fonction du jeu de données.
Interface du gestionnaire de cas.
Definition ICaseMng.h:56
Interface d'une liste d'options du jeu de données.
Interface d'une liste d'options du jeu de données.
static const char *const WComputeLoop
appelé pendant la boucle de calcul
Definition IEntryPoint.h:42
@ PNone
Pas de propriétés.
Definition IEntryPoint.h:66
static const char *const WInit
appelé pendant l'initialisation
Definition IEntryPoint.h:46
Interface d'un module.
Definition IModule.h:39
Interface des informations d'un service ou d'un module.
Interface gérant une fonction standard.
virtual ICaseMng * caseMng()=0
Retourne le gestionnaire du jeu de données.
@ PNoDump
Indique que la variable ne doit pas être sauvegardée.
Definition IVariable.h:72
Informations d'un service.
Definition ServiceInfo.h:46
Informations pour construire un module.
ISubDomain * subDomain() const
Accès au sous-domaine associé
Paramètres nécessaires à la construction d'une variable.
Noeud d'un arbre DOM.
Definition XmlNode.h:51
Encapsulation d'un pointeur avec compteur de référence.
Vue d'un tableau d'éléments de type T.
Definition Span.h:510
Chaîne de caractères unicode.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
unsigned char Byte
Type d'un octet.
Definition UtilsTypes.h:142
void addEntryPoint(ModuleType *module, const char *name, void(ModuleType::*func)(), const String &where=IEntryPoint::WComputeLoop, int property=IEntryPoint::PNone)
Routine template permettant de référencer un point d'entrée dans un module.
Definition EntryPoint.h:166