Arcane  4.2.1.0
Developer documentation
Loading...
Searching...
No Matches
Hdf5MpiReaderWriter_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_HDF5MPIREADERWRITER_H
9#define ARCANE_CASEOPTION_AXLSTAR_HDF5MPIREADERWRITER_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 CaseOptionsHdf5MpiReaderWriter
31{
32public:
33
34 /*-------------------------------------------------------------------------*/
35 /*--------------------------- Complex Options -----------------------------*/
36 /*-------------------------------------------------------------------------*/
37
38 /*-------------------------------------------------------------------------*/
39 /*--------------------------- Non Complex Options -------------------------*/
40 /*-------------------------------------------------------------------------*/
41
42 CaseOptionsHdf5MpiReaderWriter(Arcane::ICaseOptions* co)
43 : m_case_options(co)
44 , filesetSize(Arcane::CaseOptionBuildInfo(_configList(),
45 /* name */ "fileset-size", _element(),
46 /* default */ "1",
47 /* min-occurs */ 1,
48 /* max-occurs */ 1,
49 /* optional */ false))
50 {
51
52filesetSize.addAlternativeNodeName(
53 /* language */ Arcane::String("fr"),
54 /* alternative name */ Arcane::String("nombre-fichier-par-groupe"));
55addAlternativeNodeName(
56 /* language */ Arcane::String("fr"),
57 /* alternative name */ Arcane::String("arcane-hdf5-mpi-checkpoint2"));
58 }
59
60public:
61 // Interfaces for main CaseOptions
62
63 Arcane::Integer getFilesetSize() { return filesetSize(); }
64 Arcane::ICaseFunction* getFilesetSizeFunction() { return filesetSize.function(); }
65 Arcane::IStandardFunction* getFilesetSizeStandardFunction() { return filesetSize.standardFunction(); }
66
67
68
69 // Interfaces for complex options
70
71
72public:
73
74 Arcane::ICaseOptions* caseOptions() const
75 {
76 return m_case_options.get();
77 }
78
79 Arcane::ICaseOptionList* configList() const
80 {
81 return m_case_options->configList();
82 }
83
84 void setCaseModule(Arcane::IModule* m)
85 {
86 m_case_options->setCaseModule(m);
87 }
88
89 void setCaseServiceInfo(Arcane::IServiceInfo* si)
90 {
91 m_case_options->setCaseServiceInfo(si);
92 }
93
94 void addAlternativeNodeName(const Arcane::String& lang,
95 const Arcane::String& name)
96 {
97 m_case_options->addAlternativeNodeName(lang,name);
98 }
99
100private:
101
102 Arcane::ICaseOptionList* _configList() const { return configList(); }
103 Arcane::XmlNode _element() const { return Arcane::XmlNode(); }
104
105private:
106
107 static Arcane::ICaseOptions* _createCaseOption(Arcane::ICaseMng* cm,Arcane::ICaseOptions* co);
108
110
111public:
112
113
114 Arcane::CaseOptionInteger filesetSize;
115};
116
117/*---------------------------------------------------------------------------*/
118/*---------------------------------------------------------------------------*/
119
120ARCANE_END_NAMESPACE
121
122/*---------------------------------------------------------------------------*/
123/*---------------------------------------------------------------------------*/
124
125#endif
126
127
128
129/*---------------------------------------------------------------------------*/
130/*---------------------------------------------------------------------------*/
131// #WARNING#: This file has been generated automatically. Do not edit.
132// Axlstar version 1.0
133/*---------------------------------------------------------------------------*/
134/*---------------------------------------------------------------------------*/
135#ifndef ARCANE_SERVICE_AXLSTAR_HDF5MPIREADERWRITER_H
136#define ARCANE_SERVICE_AXLSTAR_HDF5MPIREADERWRITER_H
137/*---------------------------------------------------------------------------*/
138/*---------------------------------------------------------------------------*/
139
140#include "arcane/core/VariableTypes.h"
141#include "arcane/core/ServiceInfo.h"
142#include "arcane/core/ISubDomain.h"
143#include "arcane/core/ServiceBuildInfo.h"
145#include "arcane/core/ServiceRegisterer.h"
146#include "arcane/core/BasicService.h"
147
148#ifndef ARCANE_HAS_SPECIFIC_BASIC_SERVICE
149// Code pour les versions de Arcane avant la 3.8 qui ne possèdent pas les
150// classes de base spécifiques pour les services
151namespace Arcane
152{
153using BasicCaseOptionService = BasicService;
154using BasicSubDomainService = BasicService;
155using BasicMeshService = BasicService;
156}
157#endif
158
159/*---------------------------------------------------------------------------*/
160/*---------------------------------------------------------------------------*/
161
162namespace Arcane
163{
164
165/*---------------------------------------------------------------------------*/
166/*---------------------------------------------------------------------------*/
167
168class CaseOptionsHdf5MpiReaderWriter;
169
170/*---------------------------------------------------------------------------*/
171/*---------------------------------------------------------------------------*/
172
175 : public CheckpointService
176{
177public:
178 // NOTE GG: attention code dupliqué avec 'ServiceT4CaseAndStrong'. Bien reporter les modifications
179 template <typename ServiceClassType> static void fillServiceInfo(Arcane::ServiceInfo* si)
180 {
181 si->setCaseOptionsFileName("Hdf5MpiReaderWriter_arcane_hdf5");
182 si->setAxlVersion(0.0);
183 si->setDefaultTagName("hdf5-mpi-reader-writer");
184 si->setAxlContent(getAxlContent());
185 si->setTagName("arcane-hdf5-mpi-checkpoint2","fr");
188);
189 }
190
191public:
192
195 : CheckpointService(sbi)
196 , m_options(nullptr)
197 {
199 if (co) {
201 }
202
203 }
204
207 {
208 delete m_options;
209 }
210
211
212public:
213
216
217private:
218
221
222protected:
223
225private:
227 {
228 const Arcane::Byte* content = (const Arcane::Byte*)"";
229 Arcane::Span<const Arcane::Byte> bytes(content,0);
230 int file_version = 1;
231 return Arcane::FileContent(bytes,file_version,"");
232 }
233};
234
235/*---------------------------------------------------------------------------*/
236/*---------------------------------------------------------------------------*/
237
238#define ARCANE_REGISTER_SERVICE_HDF5MPIREADERWRITER(service_name,class_name) \
239 ARCANE_REGISTER_AXL_SERVICE(class_name,Arcane::ServiceProperty(#service_name,Arcane::ST_CaseOption,\
240 Arcane::SFP_None ))
241
242/*---------------------------------------------------------------------------*/
243/*---------------------------------------------------------------------------*/
244
245} // End namespace Arcane
246
247/*---------------------------------------------------------------------------*/
248/*---------------------------------------------------------------------------*/
249
250#endif
251
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.
ArcaneHdf5MpiReaderWriterObject(const Arcane::ServiceBuildInfo &sbi)
Constructeur.
CaseOptionsHdf5MpiReaderWriter * m_options
Options du jeu de données du service.
CaseOptionsHdf5MpiReaderWriter * 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 the checkpoint/recovery write 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
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.
unsigned char Byte
Type of a byte.
Definition BaseTypes.h:42