Arcane  4.2.1.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
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
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.
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.
Classe de base de service lié à un sous-domaine.
Description et contenu d'un fichier.
Definition FileContent.h:32
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 partitionneur de maillage.
Interface d'un partitionneur de maillage.
Interface d'un module.
Definition IModule.h:39
Interface des informations d'un service ou d'un module.
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.
ICaseOptions * caseOptions() const
Accès au ICaseOptions 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