Arcane  4.2.1.0
Developer documentation
Loading...
Searching...
No Matches
SplitSDMeshPartitioner_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_SPLITSDMESHPARTITIONER_H
9#define ARCANE_CASEOPTION_AXLSTAR_SPLITSDMESHPARTITIONER_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 CaseOptionsSplitSDMeshPartitioner
31{
32public:
33
34 /*-------------------------------------------------------------------------*/
35 /*--------------------------- Complex Options -----------------------------*/
36 /*-------------------------------------------------------------------------*/
37
38 /*-------------------------------------------------------------------------*/
39 /*--------------------------- Non Complex Options -------------------------*/
40 /*-------------------------------------------------------------------------*/
41
42 CaseOptionsSplitSDMeshPartitioner(Arcane::ICaseOptions* co)
43 : m_case_options(co)
44 {
45
46addAlternativeNodeName(
47 /* language */ Arcane::String("fr"),
48 /* alternative name */ Arcane::String("metis"));
49 }
50
51public:
52 // Interfaces for main CaseOptions
53
54
55
56
57 // Interfaces for complex options
58
59
60public:
61
62 Arcane::ICaseOptions* caseOptions() const
63 {
64 return m_case_options.get();
65 }
66
67 Arcane::ICaseOptionList* configList() const
68 {
69 return m_case_options->configList();
70 }
71
72 void setCaseModule(Arcane::IModule* m)
73 {
74 m_case_options->setCaseModule(m);
75 }
76
77 void setCaseServiceInfo(Arcane::IServiceInfo* si)
78 {
79 m_case_options->setCaseServiceInfo(si);
80 }
81
82 void addAlternativeNodeName(const Arcane::String& lang,
83 const Arcane::String& name)
84 {
85 m_case_options->addAlternativeNodeName(lang,name);
86 }
87
88private:
89
90 Arcane::ICaseOptionList* _configList() const { return configList(); }
91 Arcane::XmlNode _element() const { return Arcane::XmlNode(); }
92
93private:
94
95 static Arcane::ICaseOptions* _createCaseOption(Arcane::ICaseMng* cm,Arcane::ICaseOptions* co);
96
98
99public:
100
101
102};
103
104/*---------------------------------------------------------------------------*/
105/*---------------------------------------------------------------------------*/
106
107ARCANE_END_NAMESPACE
108
109/*---------------------------------------------------------------------------*/
110/*---------------------------------------------------------------------------*/
111
112#endif
113
114
115
116/*---------------------------------------------------------------------------*/
117/*---------------------------------------------------------------------------*/
118// #WARNING#: This file has been generated automatically. Do not edit.
119// Axlstar version 1.0
120/*---------------------------------------------------------------------------*/
121/*---------------------------------------------------------------------------*/
122#ifndef ARCANE_SERVICE_AXLSTAR_SPLITSDMESHPARTITIONER_H
123#define ARCANE_SERVICE_AXLSTAR_SPLITSDMESHPARTITIONER_H
124/*---------------------------------------------------------------------------*/
125/*---------------------------------------------------------------------------*/
126
127#include "arcane/core/VariableTypes.h"
128#include "arcane/core/ServiceInfo.h"
129#include "arcane/core/ISubDomain.h"
130#include "arcane/core/ServiceBuildInfo.h"
132#include "arcane/core/ServiceRegisterer.h"
133#include "arcane/core/BasicService.h"
134
135#ifndef ARCANE_HAS_SPECIFIC_BASIC_SERVICE
136// Code pour les versions de Arcane avant la 3.8 qui ne possèdent pas les
137// classes de base spécifiques pour les services
138namespace Arcane
139{
140using BasicCaseOptionService = BasicService;
141using BasicSubDomainService = BasicService;
142using BasicMeshService = BasicService;
143}
144#endif
145
146/*---------------------------------------------------------------------------*/
147/*---------------------------------------------------------------------------*/
148
149namespace Arcane
150{
151
152/*---------------------------------------------------------------------------*/
153/*---------------------------------------------------------------------------*/
154
155class CaseOptionsSplitSDMeshPartitioner;
156
157/*---------------------------------------------------------------------------*/
158/*---------------------------------------------------------------------------*/
159
162 : public MeshPartitionerBase
163{
164public:
165 // NOTE GG: attention code dupliqué avec 'ServiceT4CaseAndStrong'. Bien reporter les modifications
166 template <typename ServiceClassType> static void fillServiceInfo(Arcane::ServiceInfo* si)
167 {
168 si->setCaseOptionsFileName("SplitSDMeshPartitioner_arcane_std");
169 si->setAxlVersion(0.0);
170 si->setDefaultTagName("split-s-d-mesh-partitioner");
171 si->setAxlContent(getAxlContent());
172 si->setTagName("metis","fr");
176);
177 }
178
179public:
180
183 : MeshPartitionerBase(sbi)
184 , m_options(nullptr)
185 {
187 if (co) {
189 }
190
191 }
192
195 {
196 delete m_options;
197 }
198
199
200public:
201
204
205private:
206
209
210protected:
211
213private:
215 {
216 const Arcane::Byte* content = (const Arcane::Byte*)"";
217 Arcane::Span<const Arcane::Byte> bytes(content,0);
218 int file_version = 1;
219 return Arcane::FileContent(bytes,file_version,"");
220 }
221};
222
223/*---------------------------------------------------------------------------*/
224/*---------------------------------------------------------------------------*/
225
226#define ARCANE_REGISTER_SERVICE_SPLITSDMESHPARTITIONER(service_name,class_name) \
227 ARCANE_REGISTER_AXL_SERVICE(class_name,Arcane::ServiceProperty(#service_name,Arcane::ST_CaseOption,\
228 Arcane::SFP_None ))
229
230/*---------------------------------------------------------------------------*/
231/*---------------------------------------------------------------------------*/
232
233} // End namespace Arcane
234
235/*---------------------------------------------------------------------------*/
236/*---------------------------------------------------------------------------*/
237
238#endif
239
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.
ArcaneSplitSDMeshPartitionerObject(const Arcane::ServiceBuildInfo &sbi)
Constructeur.
CaseOptionsSplitSDMeshPartitioner * options() const
Options du jeu de données du service.
static Arcane::FileContent getAxlContent()
Variables du service.
CaseOptionsSplitSDMeshPartitioner * m_options
Options du jeu de données du service.
Base class of a service linked to a subdomain.
Description and content of a file.
Definition FileContent.h:33
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.
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