Arcane  4.2.1.0
Developer documentation
Loading...
Searching...
No Matches
MeshPartitionerTesterService_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_MESHPARTITIONERTESTERSERVICE_H
9#define ARCANE_CASEOPTION_AXLSTAR_MESHPARTITIONERTESTERSERVICE_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
24ARCANE_BEGIN_NAMESPACE
25
26/*---------------------------------------------------------------------------*/
27/*---------------------------------------------------------------------------*/
28
30class CaseOptionsMeshPartitionerTesterService
31{
32public:
33
34 /*-------------------------------------------------------------------------*/
35 /*--------------------------- Complex Options -----------------------------*/
36 /*-------------------------------------------------------------------------*/
37
38 /*-------------------------------------------------------------------------*/
39 /*--------------------------- Non Complex Options -------------------------*/
40 /*-------------------------------------------------------------------------*/
41
42 CaseOptionsMeshPartitionerTesterService(Arcane::ICaseOptions* co)
43 : m_case_options(co)
44 , subRankDivider(Arcane::CaseOptionBuildInfo(_configList(),
45 /* name */ "sub-rank-divider", _element(),
46 /* default */ "0",
47 /* min-occurs */ 1,
48 /* max-occurs */ 1,
49 /* optional */ false))
50 {
51
52 }
53
54public:
55 // Interfaces for main CaseOptions
56
57 Arcane::Int32 getSubRankDivider() { return subRankDivider(); }
58 Arcane::ICaseFunction* getSubRankDividerFunction() { return subRankDivider.function(); }
59 Arcane::IStandardFunction* getSubRankDividerStandardFunction() { return subRankDivider.standardFunction(); }
60
61
62
63 // Interfaces for complex options
64
65
66public:
67
68 Arcane::ICaseOptions* caseOptions() const
69 {
70 return m_case_options.get();
71 }
72
73 Arcane::ICaseOptionList* configList() const
74 {
75 return m_case_options->configList();
76 }
77
78 void setCaseModule(Arcane::IModule* m)
79 {
80 m_case_options->setCaseModule(m);
81 }
82
83 void setCaseServiceInfo(Arcane::IServiceInfo* si)
84 {
85 m_case_options->setCaseServiceInfo(si);
86 }
87
88 void addAlternativeNodeName(const Arcane::String& lang,
89 const Arcane::String& name)
90 {
91 m_case_options->addAlternativeNodeName(lang,name);
92 }
93
94private:
95
96 Arcane::ICaseOptionList* _configList() const { return configList(); }
97 Arcane::XmlNode _element() const { return Arcane::XmlNode(); }
98
99private:
100
101 static Arcane::ICaseOptions* _createCaseOption(Arcane::ICaseMng* cm,Arcane::ICaseOptions* co);
102
104
105public:
106
107
108 Arcane::CaseOptionInt32 subRankDivider;
109};
110
111/*---------------------------------------------------------------------------*/
112/*---------------------------------------------------------------------------*/
113
114ARCANE_END_NAMESPACE
115
116/*---------------------------------------------------------------------------*/
117/*---------------------------------------------------------------------------*/
118
119#endif
120
121
122
123/*---------------------------------------------------------------------------*/
124/*---------------------------------------------------------------------------*/
125// #WARNING#: This file has been generated automatically. Do not edit.
126// Axlstar version 1.0
127/*---------------------------------------------------------------------------*/
128/*---------------------------------------------------------------------------*/
129#ifndef ARCANE_SERVICE_AXLSTAR_MESHPARTITIONERTESTERSERVICE_H
130#define ARCANE_SERVICE_AXLSTAR_MESHPARTITIONERTESTERSERVICE_H
131/*---------------------------------------------------------------------------*/
132/*---------------------------------------------------------------------------*/
133
134#include "arcane/core/VariableTypes.h"
135#include "arcane/core/ServiceInfo.h"
136#include "arcane/core/ISubDomain.h"
137#include "arcane/core/ServiceBuildInfo.h"
139#include "arcane/core/ServiceRegisterer.h"
140#include "arcane/core/BasicService.h"
141
142#ifndef ARCANE_HAS_SPECIFIC_BASIC_SERVICE
143// Code pour les versions de Arcane avant la 3.8 qui ne possèdent pas les
144// classes de base spécifiques pour les services
145namespace Arcane
146{
147using BasicCaseOptionService = BasicService;
148using BasicSubDomainService = BasicService;
149using BasicMeshService = BasicService;
150}
151#endif
152
153/*---------------------------------------------------------------------------*/
154/*---------------------------------------------------------------------------*/
155
156namespace Arcane
157{
158
159/*---------------------------------------------------------------------------*/
160/*---------------------------------------------------------------------------*/
161
162class CaseOptionsMeshPartitionerTesterService;
163
164/*---------------------------------------------------------------------------*/
165/*---------------------------------------------------------------------------*/
166
169 : public Arcane::BasicCaseOptionService
170{
171public:
172 // NOTE GG: attention code dupliqué avec 'ServiceT4CaseAndStrong'. Bien reporter les modifications
173 template <typename ServiceClassType> static void fillServiceInfo(Arcane::ServiceInfo* si)
174 {
175 si->setCaseOptionsFileName("MeshPartitionerTesterService_arcane_impl");
176 si->setAxlVersion(0.0);
177 si->setDefaultTagName("mesh-partitioner-tester-service");
178 si->setAxlContent(getAxlContent());
182);
183 }
184
185public:
186
189 : Arcane::BasicCaseOptionService(sbi)
190 , m_options(nullptr)
191 {
193 if (co) {
195 }
196
197 }
198
201 {
202 delete m_options;
203 }
204
205
206public:
207
210
211private:
212
215
216protected:
217
219private:
221 {
222 const Arcane::Byte* content = (const Arcane::Byte*)"";
223 Arcane::Span<const Arcane::Byte> bytes(content,0);
224 int file_version = 1;
225 return Arcane::FileContent(bytes,file_version,"");
226 }
227};
228
229/*---------------------------------------------------------------------------*/
230/*---------------------------------------------------------------------------*/
231
232#define ARCANE_REGISTER_SERVICE_MESHPARTITIONERTESTERSERVICE(service_name,class_name) \
233 ARCANE_REGISTER_AXL_SERVICE(class_name,Arcane::ServiceProperty(#service_name,Arcane::ST_CaseOption,\
234 Arcane::SFP_None ))
235
236/*---------------------------------------------------------------------------*/
237/*---------------------------------------------------------------------------*/
238
239} // End namespace Arcane
240
241/*---------------------------------------------------------------------------*/
242/*---------------------------------------------------------------------------*/
243
244#endif
245
This file contains the various service factories and macros for registering services.
#define ARCANE_SERVICE_INTERFACE(ainterface)
Macro to declare an interface when registering a service.
static Arcane::FileContent getAxlContent()
Variables du service.
ArcaneMeshPartitionerTesterServiceObject(const Arcane::ServiceBuildInfo &sbi)
Constructeur.
CaseOptionsMeshPartitionerTesterService * m_options
Options du jeu de données du service.
CaseOptionsMeshPartitionerTesterService * options() const
Options du jeu de données du service.
Base class of a service linked to a subdomain.
Information for building a dataset option.
Description and content of a file.
Definition FileContent.h:33
Interface of a dataset function.
Case manager interface.
Definition ICaseMng.h:57
Interface for a data set options list.
Interface for a list of data set options.
Interface of a mesh partitioner.
Interface of a mesh partitioner.
Interface of a module.
Definition IModule.h:40
Interface for service or module information.
Interface managing a standard function.
Information about a service.
Definition ServiceInfo.h:51
Encapsulation of a pointer with a reference counter.
static void registerToServiceInfo(ServiceInfo *si, const Interfaces &... args)
Registers the factories for the Interfaces interfaces in the service.
ICaseOptions * caseOptions() const
Access to the associated ICaseOptions.
Structure containing the information to create a service.
View of an array of elements of type T.
Definition Span.h:633
Node of a DOM tree.
Definition XmlNode.h:51
-- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature --
unsigned char Byte
Type of a byte.
Definition BaseTypes.h:42
std::int32_t Int32
Signed integer type of 32 bits.