Arcane  4.2.1.0
Developer documentation
Loading...
Searching...
No Matches
HoneyComb3DMeshGenerator_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_HONEYCOMB3DMESHGENERATOR_H
9#define ARCANE_CASEOPTION_AXLSTAR_HONEYCOMB3DMESHGENERATOR_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 CaseOptionsHoneyComb3DMeshGenerator
31{
32public:
33
34 /*-------------------------------------------------------------------------*/
35 /*--------------------------- Complex Options -----------------------------*/
36 /*-------------------------------------------------------------------------*/
37
38 /*-------------------------------------------------------------------------*/
39 /*--------------------------- Non Complex Options -------------------------*/
40 /*-------------------------------------------------------------------------*/
41
42 CaseOptionsHoneyComb3DMeshGenerator(Arcane::ICaseOptions* co)
43 : m_case_options(co)
44 , origin(Arcane::CaseOptionBuildInfo(_configList(),
45 /* name */ "origin", _element(),
46 /* default */ Arcane::String(),
47 /* min-occurs */ 1,
48 /* max-occurs */ 1,
49 /* optional */ false))
50 , pitchSize(Arcane::CaseOptionBuildInfo(_configList(),
51 /* name */ "pitch-size", _element(),
52 /* default */ Arcane::String(),
53 /* min-occurs */ 1,
54 /* max-occurs */ 1,
55 /* optional */ false))
56 , nbLayer(Arcane::CaseOptionBuildInfo(_configList(),
57 /* name */ "nb-layer", _element(),
58 /* default */ Arcane::String(),
59 /* min-occurs */ 1,
60 /* max-occurs */ 1,
61 /* optional */ false))
62 , heights(Arcane::CaseOptionBuildInfo(_configList(),
63 /* name */ "heights", _element(),
64 /* default */ Arcane::String(),
65 /* min-occurs */ 1,
66 /* max-occurs */ 1,
67 /* optional */ false))
68 {
69
70 }
71
72public:
73 // Interfaces for main CaseOptions
74
75 Arcane::Real2 getOrigin() { return origin(); }
76 Arcane::ICaseFunction* getOriginFunction() { return origin.function(); }
77 Arcane::IStandardFunction* getOriginStandardFunction() { return origin.standardFunction(); }
78 Arcane::Real getPitchSize() { return pitchSize(); }
79 Arcane::ICaseFunction* getPitchSizeFunction() { return pitchSize.function(); }
80 Arcane::IStandardFunction* getPitchSizeStandardFunction() { return pitchSize.standardFunction(); }
81 Arcane::Integer getNbLayer() { return nbLayer(); }
82 Arcane::ICaseFunction* getNbLayerFunction() { return nbLayer.function(); }
83 Arcane::IStandardFunction* getNbLayerStandardFunction() { return nbLayer.standardFunction(); }
84 Arcane::RealConstArrayView getHeights() { return heights(); }
85 Arcane::ICaseFunction* getHeightsFunction() { return heights.function(); }
86 Arcane::IStandardFunction* getHeightsStandardFunction() { return heights.standardFunction(); }
87
88
89
90 // Interfaces for complex options
91
92
93public:
94
95 Arcane::ICaseOptions* caseOptions() const
96 {
97 return m_case_options.get();
98 }
99
100 Arcane::ICaseOptionList* configList() const
101 {
102 return m_case_options->configList();
103 }
104
105 void setCaseModule(Arcane::IModule* m)
106 {
107 m_case_options->setCaseModule(m);
108 }
109
110 void setCaseServiceInfo(Arcane::IServiceInfo* si)
111 {
112 m_case_options->setCaseServiceInfo(si);
113 }
114
115 void addAlternativeNodeName(const Arcane::String& lang,
116 const Arcane::String& name)
117 {
118 m_case_options->addAlternativeNodeName(lang,name);
119 }
120
121private:
122
123 Arcane::ICaseOptionList* _configList() const { return configList(); }
124 Arcane::XmlNode _element() const { return Arcane::XmlNode(); }
125
126private:
127
128 static Arcane::ICaseOptions* _createCaseOption(Arcane::ICaseMng* cm,Arcane::ICaseOptions* co);
129
131
132public:
133
134
135 Arcane::CaseOptionReal2 origin;
136 Arcane::CaseOptionReal pitchSize;
137 Arcane::CaseOptionInteger nbLayer;
138 Arcane::CaseOptionRealArray heights;
139};
140
141/*---------------------------------------------------------------------------*/
142/*---------------------------------------------------------------------------*/
143
144ARCANE_END_NAMESPACE
145
146/*---------------------------------------------------------------------------*/
147/*---------------------------------------------------------------------------*/
148
149#endif
150
151
152
153/*---------------------------------------------------------------------------*/
154/*---------------------------------------------------------------------------*/
155// #WARNING#: This file has been generated automatically. Do not edit.
156// Axlstar version 1.0
157/*---------------------------------------------------------------------------*/
158/*---------------------------------------------------------------------------*/
159#ifndef ARCANE_SERVICE_AXLSTAR_HONEYCOMB3DMESHGENERATOR_H
160#define ARCANE_SERVICE_AXLSTAR_HONEYCOMB3DMESHGENERATOR_H
161/*---------------------------------------------------------------------------*/
162/*---------------------------------------------------------------------------*/
163
164#include "arcane/core/VariableTypes.h"
165#include "arcane/core/ServiceInfo.h"
166#include "arcane/core/ISubDomain.h"
167#include "arcane/core/ServiceBuildInfo.h"
169#include "arcane/core/ServiceRegisterer.h"
170#include "arcane/core/BasicService.h"
171
172#ifndef ARCANE_HAS_SPECIFIC_BASIC_SERVICE
173// Code pour les versions de Arcane avant la 3.8 qui ne possèdent pas les
174// classes de base spécifiques pour les services
175namespace Arcane
176{
177using BasicCaseOptionService = BasicService;
178using BasicSubDomainService = BasicService;
179using BasicMeshService = BasicService;
180}
181#endif
182
183/*---------------------------------------------------------------------------*/
184/*---------------------------------------------------------------------------*/
185
186namespace Arcane
187{
188
189/*---------------------------------------------------------------------------*/
190/*---------------------------------------------------------------------------*/
191
192class CaseOptionsHoneyComb3DMeshGenerator;
193
194/*---------------------------------------------------------------------------*/
195/*---------------------------------------------------------------------------*/
196
199 : public Arcane::BasicCaseOptionService
200 , public Arcane::IMeshBuilder
201{
202public:
203 // NOTE GG: attention code dupliqué avec 'ServiceT4CaseAndStrong'. Bien reporter les modifications
204 template <typename ServiceClassType> static void fillServiceInfo(Arcane::ServiceInfo* si)
205 {
206 si->setCaseOptionsFileName("HoneyComb3DMeshGenerator_arcane_std");
207 si->setAxlVersion(0.0);
208 si->setDefaultTagName("honey-comb3-d-mesh-generator");
209 si->setAxlContent(getAxlContent());
212);
213 }
214
215public:
216
219 : Arcane::BasicCaseOptionService(sbi)
220 , m_options(nullptr)
221 {
223 if (co) {
225 }
226
227 }
228
231 {
232 delete m_options;
233 }
234
235
236public:
237
240
241private:
242
245
246protected:
247
249private:
251 {
252 const Arcane::Byte* content = (const Arcane::Byte*)"";
253 Arcane::Span<const Arcane::Byte> bytes(content,0);
254 int file_version = 1;
255 return Arcane::FileContent(bytes,file_version,"");
256 }
257};
258
259/*---------------------------------------------------------------------------*/
260/*---------------------------------------------------------------------------*/
261
262#define ARCANE_REGISTER_SERVICE_HONEYCOMB3DMESHGENERATOR(service_name,class_name) \
263 ARCANE_REGISTER_AXL_SERVICE(class_name,Arcane::ServiceProperty(#service_name,Arcane::ST_CaseOption,\
264 Arcane::SFP_None ))
265
266/*---------------------------------------------------------------------------*/
267/*---------------------------------------------------------------------------*/
268
269} // End namespace Arcane
270
271/*---------------------------------------------------------------------------*/
272/*---------------------------------------------------------------------------*/
273
274#endif
275
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.
CaseOptionsHoneyComb3DMeshGenerator * m_options
Options du jeu de données du service.
static Arcane::FileContent getAxlContent()
Variables du service.
ArcaneHoneyComb3DMeshGeneratorObject(const Arcane::ServiceBuildInfo &sbi)
Constructeur.
CaseOptionsHoneyComb3DMeshGenerator * 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 creation/reading service.
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
Class managing a 2-dimensional real vector.
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 --
Int32 Integer
Type representing an integer.
double Real
Type representing a real number.
unsigned char Byte
Type of a byte.
Definition BaseTypes.h:42
ConstArrayView< Real > RealConstArrayView
C equivalent of a 1D array of reals.
Definition UtilsTypes.h:482