Arcane  4.2.1.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
ArcaneDirectExecution_axl.h
1/*---------------------------------------------------------------------------*/
2/*---------------------------------------------------------------------------*/
3// #WARNING#: This file has been generated automatically. Do not edit.
4// Axlstar version 1.0
5/*---------------------------------------------------------------------------*/
6/*---------------------------------------------------------------------------*/
7
8#ifndef ARCANE_CASEOPTION_AXLSTAR_ARCANE_ARCANEDIRECTEXECUTION_H
9#define ARCANE_CASEOPTION_AXLSTAR_ARCANE_ARCANEDIRECTEXECUTION_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#include "arcane/CaseOptionService.h"
21
22/*---------------------------------------------------------------------------*/
23/*---------------------------------------------------------------------------*/
24
25ARCANE_BEGIN_NAMESPACE
26
27/*---------------------------------------------------------------------------*/
28/*---------------------------------------------------------------------------*/
29
31class CaseOptionsArcaneDirectExecution
32{
33public:
34
35 /*-------------------------------------------------------------------------*/
36 /*--------------------------- Complex Options -----------------------------*/
37 /*-------------------------------------------------------------------------*/
38
39 /*-------------------------------------------------------------------------*/
40 /*--------------------------- Non Complex Options -------------------------*/
41 /*-------------------------------------------------------------------------*/
42
43 CaseOptionsArcaneDirectExecution(Arcane::ICaseMng* cm)
44 : m_case_options(new Arcane::CaseOptions(cm,"arcane-direct-execution"))
45 , writeMesh(Arcane::CaseOptionBuildInfo(_configList(),
46 /* name */ "write-mesh", _element(),
47 /* default */ "false",
48 /* min-occurs */ 1,
49 /* max-occurs */ 1,
50 /* optional */ false))
51 , tool(Arcane::CaseOptionBuildInfo(_configList(),
52 /* name */ "tool", _element(),
53 /* default */ Arcane::String(),
54 /* min-occurs */ 0,
55 /* max-occurs */ -1,
56 /* optional */ false),
57 /* allow-null */ false)
58 {
59
60writeMesh.addAlternativeNodeName(
61 /* language */ Arcane::String("fr"),
62 /* alternative name */ Arcane::String("ecrit-maillage"));
63tool.addAlternativeNodeName(
64 /* language */ Arcane::String("fr"),
65 /* alternative name */ Arcane::String("tool"));
66addAlternativeNodeName(
67 /* language */ Arcane::String("fr"),
68 /* alternative name */ Arcane::String("execution-directe"));
69 }
70
71public:
72 // Interfaces for main CaseOptions
73
74 bool getWriteMesh() { return writeMesh(); }
75 Arcane::ICaseFunction* getWriteMeshFunction() { return writeMesh.function(); }
76 Arcane::IStandardFunction* getWriteMeshStandardFunction() { return writeMesh.standardFunction(); }
77
78
79
81 // Interfaces for complex options
82
83
84public:
85
86 Arcane::ICaseOptions* caseOptions() const
87 {
88 return m_case_options.get();
89 }
90
91 Arcane::ICaseOptionList* configList() const
92 {
93 return m_case_options->configList();
94 }
95
96 void setCaseModule(Arcane::IModule* m)
97 {
98 m_case_options->setCaseModule(m);
99 }
100
101 void setCaseServiceInfo(Arcane::IServiceInfo* si)
102 {
103 m_case_options->setCaseServiceInfo(si);
104 }
105
106 void addAlternativeNodeName(const Arcane::String& lang,
107 const Arcane::String& name)
108 {
109 m_case_options->addAlternativeNodeName(lang,name);
110 }
111
112private:
113
114 Arcane::ICaseOptionList* _configList() const { return configList(); }
115 Arcane::XmlNode _element() const { return Arcane::XmlNode(); }
116
117private:
118
119 static Arcane::ICaseOptions* _createCaseOption(Arcane::ICaseMng* cm,Arcane::ICaseOptions* co);
120
122
123public:
124
125
126 Arcane::CaseOptionBool writeMesh;
128};
129
130/*---------------------------------------------------------------------------*/
131/*---------------------------------------------------------------------------*/
132
133ARCANE_END_NAMESPACE
134
135/*---------------------------------------------------------------------------*/
136/*---------------------------------------------------------------------------*/
137
138#endif
139
140
141
142/*---------------------------------------------------------------------------*/
143/*---------------------------------------------------------------------------*/
144// #WARNING#: This file has been generated automatically. Do not edit.
145// Axlstar version 1.0
146/*---------------------------------------------------------------------------*/
147/*---------------------------------------------------------------------------*/
148#ifndef ARCANE_SERVICE_AXLSTAR_ARCANE_ARCANEDIRECTEXECUTION_H
149#define ARCANE_SERVICE_AXLSTAR_ARCANE_ARCANEDIRECTEXECUTION_H
150/*---------------------------------------------------------------------------*/
151/*---------------------------------------------------------------------------*/
152
153#include "arcane/core/VariableTypes.h"
154#include "arcane/core/ServiceInfo.h"
155#include "arcane/core/ISubDomain.h"
156#include "arcane/core/ServiceBuildInfo.h"
158#include "arcane/core/ServiceRegisterer.h"
159#include "arcane/core/BasicService.h"
160
161#ifndef ARCANE_HAS_SPECIFIC_BASIC_SERVICE
162// Code pour les versions de Arcane avant la 3.8 qui ne possèdent pas les
163// classes de base spécifiques pour les services
164namespace Arcane
165{
166using BasicCaseOptionService = BasicService;
167using BasicSubDomainService = BasicService;
168using BasicMeshService = BasicService;
169}
170#endif
171
172/*---------------------------------------------------------------------------*/
173/*---------------------------------------------------------------------------*/
174
175ARCANE_BEGIN_NAMESPACE
176
177/*---------------------------------------------------------------------------*/
178/*---------------------------------------------------------------------------*/
179
180class CaseOptionsArcaneDirectExecution;
181
182/*---------------------------------------------------------------------------*/
183/*---------------------------------------------------------------------------*/
184
187 : public Arcane::BasicSubDomainService
189{
190public:
191 // NOTE GG: attention code dupliqué avec 'ServiceT4CaseAndStrong'. Bien reporter les modifications
192 template <typename ServiceClassType> static void fillServiceInfo(Arcane::ServiceInfo* si)
193 {
194 si->setCaseOptionsFileName("ArcaneDirectExecution_arcane_std");
195 si->setAxlVersion(1.0);
196 si->setDefaultTagName("arcane-direct-execution");
197 si->setAxlContent(getAxlContent());
198 si->setTagName("execution-directe","fr");
201);
202 }
203
204public:
205
208 : Arcane::BasicSubDomainService(sbi)
209 , m_options(nullptr)
210 {
212
213 }
214
217 {
218 delete m_options;
219 }
220
221
222public:
223
226
227private:
228
231
232protected:
233
235private:
237 {
238 const Arcane::Byte* content = (const Arcane::Byte*)"";
239 Arcane::Span<const Arcane::Byte> bytes(content,0);
240 int file_version = 1;
241 return Arcane::FileContent(bytes,file_version,"");
242 }
243};
244
245/*---------------------------------------------------------------------------*/
246/*---------------------------------------------------------------------------*/
247
248#define ARCANE_REGISTER_SERVICE_ARCANEDIRECTEXECUTION(service_name,class_name) \
249 ARCANE_REGISTER_AXL_SERVICE(class_name,Arcane::ServiceProperty(#service_name,Arcane::ST_SubDomain,\
250 Arcane::SFP_None ))
251
252/*---------------------------------------------------------------------------*/
253/*---------------------------------------------------------------------------*/
254
255ARCANE_END_NAMESPACE
256
257/*---------------------------------------------------------------------------*/
258/*---------------------------------------------------------------------------*/
259
260#endif
261
Ce fichier contient les différentes fabriques de services et macro pour enregistrer les services.
#define ARCANE_SERVICE_INTERFACE(ainterface)
Macro pour déclarer une interface lors de l'enregistrement d'un service.
static Arcane::FileContent getAxlContent()
Variables du service.
ArcaneArcaneDirectExecutionObject(const Arcane::ServiceBuildInfo &sbi)
Constructeur.
CaseOptionsArcaneDirectExecution * m_options
Options du jeu de données du service.
CaseOptionsArcaneDirectExecution * options() const
Options du jeu de données du service.
Classe de base de service lié à un sous-domaine.
Informations pour construire une option de jeu de données.
Option du jeu de données de type liste de services.
Classe de base d'une liste d'options du jeu de données.
Definition CaseOptions.h:57
Vue constante d'un tableau de type T.
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.
Interface d'un service d'exécution direct.
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.
Informations d'un service.
Definition ServiceInfo.h:46
Encapsulation d'un pointeur avec compteur de référence.
static void registerToServiceInfo(ServiceInfo *si, const Interfaces &... args)
Enregistre dans le service les fabriques pour les interfacs Interfaces.
ISubDomain * subDomain() const
Accès au ISubDomain associé.
Structure contenant les informations pour créer un service.
Vue d'un tableau d'éléments de type T.
Definition Span.h:633
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 --
unsigned char Byte
Type d'un octet.
Definition BaseTypes.h:42