rad  2.0.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Exmalif.hpp
Go to the documentation of this file.
1 // GENERATED, DO NOT MANUALLY MODIFY
2 // generator core v1.10
3 // specific generator: C++ Agnostic Interface .hpp Generator v0.92
4 // source: /home/jenkins/workspace/ICS-daily-and-weekly/ifw-rad-daily/rad/cpp/_examples/exmalif/src/exmalif.xml
5 
6 #pragma once
7 
8 #include <chrono>
9 #include <memory>
10 #include <stdexcept>
11 #include <string>
12 
13 
14 #include <mal/utility/future.hpp>
15 #include <mal/rr/RrEntity.hpp>
16 #include <mal/rr/Ami.hpp>
17 #include <mal/rr/ClientRrEntity.hpp>
18 #include <mal/ps/DataEntity.hpp>
19 #include <mal/Mal.hpp>
20 #include <mal/IcdTypes.hpp>
21 #include <mal/utility/shared_vector.hpp>
22 
23 
24 namespace exmalif {
25 
26 
27 // generated
28 class TelPosition : public ::elt::mal::ps::DataEntity<TelPosition> {
29  public:
30  static constexpr const char* TYPE_ID = "TelPosition";
31 
32 
33  virtual float getRa() const = 0;
34  virtual void setRa(float ra) = 0;
35 
36  virtual float getDec() const = 0;
37  virtual void setDec(float dec) = 0;
38  virtual ~TelPosition() = default;
39 
41  setRa(other.getRa());
42  setDec(other.getDec());
43  return *this;
44  }
45 };
46 
47 
48 // generated
49 class AxesPosition : public ::elt::mal::ps::DataEntity<AxesPosition> {
50  public:
51  static constexpr const char* TYPE_ID = "AxesPosition";
52 
53 
54  virtual float getAlt() const = 0;
55  virtual void setAlt(float alt) = 0;
56 
57  virtual float getAz() const = 0;
58  virtual void setAz(float az) = 0;
59  virtual ~AxesPosition() = default;
60 
62  setAlt(other.getAlt());
63  setAz(other.getAz());
64  return *this;
65  }
66 };
67 
68 
69 // generated
70 class LogInfo : public ::elt::mal::ps::DataEntity<LogInfo> {
71  public:
72  static constexpr const char* TYPE_ID = "LogInfo";
73 
74 
75  virtual std::string getLevel() const = 0;
76  virtual void setLevel(const std::string& level) = 0;
77 
78  virtual std::string getLogger() const = 0;
79  virtual void setLogger(const std::string& logger) = 0;
80  virtual ~LogInfo() = default;
81 
83  setLevel(other.getLevel());
84  setLogger(other.getLogger());
85  return *this;
86  }
87 };
88 
89 // generated
90 class ExceptionErr : public std::exception {
91  public:
92  ExceptionErr(const std::string& _desc, int32_t _code):
93  desc(_desc), code(_code) {}
94 
95  virtual std::string getDesc() const {
96  return desc;
97  }
98 
99  virtual int32_t getCode() const {
100  return code;
101  }
102 
103 
104  virtual const char* what() const noexcept {
105  return "::exmalif::ExceptionErr";
106  };
107 
108  virtual ~ExceptionErr() = default;
109 
110  protected:
111  ExceptionErr() = default;
112  std::string desc;
113  int32_t code;
114 };
115 
116 
117 
118 class StdCmds : public virtual ::elt::mal::rr::RrEntity {
119  public:
120  virtual std::string Stop() = 0;
121  virtual std::string Init() = 0;
122  virtual std::string Reset() = 0;
123  virtual std::string Enable() = 0;
124  virtual std::string Disable() = 0;
125  virtual std::string Status() = 0;
126  virtual std::string Config() = 0;
127  virtual std::string Exit() = 0;
128  virtual std::string SetLogLevel(const std::shared_ptr<::exmalif::LogInfo>& info) = 0;
129  virtual std::string Preset(const std::shared_ptr<::exmalif::TelPosition>& pos) = 0;
130  virtual std::string Move(const std::shared_ptr<::exmalif::AxesPosition>& pos) = 0;
131  virtual std::shared_ptr<::elt::mal::rr::Ami<std::string>> GetPresetProgress() = 0;
132 
133  static int typeHash() {
134  return -1534276328;
135  }
136 
137  virtual ~StdCmds() = default;
138 };
139 
140 class AsyncStdCmds : public virtual ::elt::mal::rr::RrEntity {
141  public:
142  virtual ::elt::mal::future<std::string> Stop() = 0;
143  virtual ::elt::mal::future<std::string> Init() = 0;
144  virtual ::elt::mal::future<std::string> Reset() = 0;
145  virtual ::elt::mal::future<std::string> Enable() = 0;
146  virtual ::elt::mal::future<std::string> Disable() = 0;
147  virtual ::elt::mal::future<std::string> Status() = 0;
148  virtual ::elt::mal::future<std::string> Config() = 0;
149  virtual ::elt::mal::future<std::string> Exit() = 0;
150  virtual ::elt::mal::future<std::string> SetLogLevel(const std::shared_ptr<::exmalif::LogInfo>& info) = 0;
151  virtual ::elt::mal::future<std::string> Preset(const std::shared_ptr<::exmalif::TelPosition>& pos) = 0;
152  virtual ::elt::mal::future<std::string> Move(const std::shared_ptr<::exmalif::AxesPosition>& pos) = 0;
153  virtual std::shared_ptr<::elt::mal::rr::Ami<std::string>> GetPresetProgress() = 0;
154 
155  static int typeHash() {
156  return -1534276328;
157  }
158 
159  virtual ~AsyncStdCmds() = default;
160 };
161 
162 class StdCmdsSync :
163  public virtual ::exmalif::StdCmds,
164  public virtual ::elt::mal::rr::ClientRrEntity {
165  //virtual StdCmdsSync timeout(std::chrono::milliseconds timeoutDuration) = 0;
166 };
167 
169  public virtual AsyncStdCmds,
170  public virtual ::elt::mal::rr::ClientRrEntity {
171 };
172 
174  public virtual AsyncStdCmds {
175  public:
177  const std::shared_ptr<StdCmds> &entity)
178  : m_entity(entity) {}
179 
180  virtual ::elt::mal::future<std::string> Stop() {
181  ::elt::mal::promise<std::string> p;
182 
183 
184  p.set_value(m_entity->Stop());
185 
186 
187  return p.get_future();
188  }
189 
190  virtual ::elt::mal::future<std::string> Init() {
191  ::elt::mal::promise<std::string> p;
192 
193 
194  p.set_value(m_entity->Init());
195 
196 
197  return p.get_future();
198  }
199 
200  virtual ::elt::mal::future<std::string> Reset() {
201  ::elt::mal::promise<std::string> p;
202 
203 
204  p.set_value(m_entity->Reset());
205 
206 
207  return p.get_future();
208  }
209 
210  virtual ::elt::mal::future<std::string> Enable() {
211  ::elt::mal::promise<std::string> p;
212 
213 
214  p.set_value(m_entity->Enable());
215 
216 
217  return p.get_future();
218  }
219 
220  virtual ::elt::mal::future<std::string> Disable() {
221  ::elt::mal::promise<std::string> p;
222 
223 
224  p.set_value(m_entity->Disable());
225 
226 
227  return p.get_future();
228  }
229 
230  virtual ::elt::mal::future<std::string> Status() {
231  ::elt::mal::promise<std::string> p;
232 
233 
234  p.set_value(m_entity->Status());
235 
236 
237  return p.get_future();
238  }
239 
240  virtual ::elt::mal::future<std::string> Config() {
241  ::elt::mal::promise<std::string> p;
242 
243 
244  p.set_value(m_entity->Config());
245 
246 
247  return p.get_future();
248  }
249 
250  virtual ::elt::mal::future<std::string> Exit() {
251  ::elt::mal::promise<std::string> p;
252 
253 
254  p.set_value(m_entity->Exit());
255 
256 
257  return p.get_future();
258  }
259 
260  virtual ::elt::mal::future<std::string> SetLogLevel(const std::shared_ptr<::exmalif::LogInfo>& info) {
261  ::elt::mal::promise<std::string> p;
262 
263  try {
264 
265  p.set_value(m_entity->SetLogLevel(info));
266 
267  } catch(::exmalif::ExceptionErr& exceptionerr) {
268  p.set_exception(exceptionerr);
269  }
270 
271  return p.get_future();
272  }
273 
274  virtual ::elt::mal::future<std::string> Preset(const std::shared_ptr<::exmalif::TelPosition>& pos) {
275  ::elt::mal::promise<std::string> p;
276 
277 
278  p.set_value(m_entity->Preset(pos));
279 
280 
281  return p.get_future();
282  }
283 
284  virtual ::elt::mal::future<std::string> Move(const std::shared_ptr<::exmalif::AxesPosition>& pos) {
285  ::elt::mal::promise<std::string> p;
286 
287  try {
288 
289  p.set_value(m_entity->Move(pos));
290 
291  } catch(::exmalif::ExceptionErr& exceptionerr) {
292  p.set_exception(exceptionerr);
293  }
294 
295  return p.get_future();
296  }
297 
298  virtual std::shared_ptr<::elt::mal::rr::Ami<std::string>> GetPresetProgress() {
299  return m_entity->GetPresetProgress();
300  }
301 
302  virtual ~AsyncStdCmdsImplWrapper() = default;
303 
304  private:
305  std::shared_ptr<StdCmds> m_entity;
306 };
307 
308 
309 } // exmalif
310 
311 namespace elt {
312 namespace mal {
313 
314 template <>
315 struct MalTypeTraits<::exmalif::TelPosition> {
316  static const char* libraryName;
317  static const char* name;
318 };
319 
320 template <>
321 struct MalTypeTraits<::exmalif::AxesPosition> {
322  static const char* libraryName;
323  static const char* name;
324 };
325 
326 template <>
327 struct MalTypeTraits<::exmalif::LogInfo> {
328  static const char* libraryName;
329  static const char* name;
330 };
331 
332 template <>
333 struct MalTypeTraits<::exmalif::StdCmds, true> {
334  static const char* libraryName;
335  static const char* name;
336 };
337 
338 template <>
339 struct MalTypeTraits<::exmalif::StdCmdsSync, true> {
340  static const char* libraryName;
341  static const char* name;
342 };
343 
344 template <>
345 struct MalTypeTraits<::exmalif::StdCmdsAsync, true> {
346  static const char* libraryName;
347  static const char* name;
348 };
349 
350 template <>
351 struct MalTypeTraits<::exmalif::AsyncStdCmds, false> {
352  static const char* libraryName;
353  static const char* name;
354 };
355 } // namespace mal
356 } // namespace elt
Definition: Exmalif.hpp:118
static const char * libraryName
Definition: Exmalif.hpp:316
Definition: Exmalif.hpp:28
static int typeHash()
Definition: Exmalif.hpp:133
virtual ~StdCmds()=default
virtual ::elt::mal::future< std::string > Init()
Definition: Exmalif.hpp:190
virtual ::elt::mal::future< std::string > Move(const std::shared_ptr<::exmalif::AxesPosition > &pos)
Definition: Exmalif.hpp:284
virtual ::elt::mal::future< std::string > SetLogLevel(const std::shared_ptr<::exmalif::LogInfo > &info)=0
virtual std::string Status()=0
virtual ::elt::mal::future< std::string > Disable()
Definition: Exmalif.hpp:220
static constexpr const char * TYPE_ID
Definition: Exmalif.hpp:51
virtual std::shared_ptr<::elt::mal::rr::Ami< std::string > > GetPresetProgress()=0
required string logger
Definition: exmalif.proto:25
virtual int32_t getCode() const
Definition: Exmalif.hpp:99
Definition: Exmalif.hpp:140
virtual std::shared_ptr<::elt::mal::rr::Ami< std::string > > GetPresetProgress()=0
virtual const char * what() const noexcept
Definition: Exmalif.hpp:104
virtual ::elt::mal::future< std::string > Enable()=0
virtual std::string Config()=0
virtual std::string getDesc() const
Definition: Exmalif.hpp:95
virtual ::elt::mal::future< std::string > Move(const std::shared_ptr<::exmalif::AxesPosition > &pos)=0
Definition: Exmalif.hpp:173
Definition: Exmalif.hpp:90
virtual ::elt::mal::future< std::string > Config()=0
virtual std::string Preset(const std::shared_ptr<::exmalif::TelPosition > &pos)=0
Definition: Exmalif.hpp:49
::exmalif::TelPosition & operator=(const ::exmalif::TelPosition &other)
Definition: Exmalif.hpp:40
virtual ~LogInfo()=default
virtual std::string SetLogLevel(const std::shared_ptr<::exmalif::LogInfo > &info)=0
virtual ::elt::mal::future< std::string > SetLogLevel(const std::shared_ptr<::exmalif::LogInfo > &info)
Definition: Exmalif.hpp:260
static constexpr const char * TYPE_ID
Definition: Exmalif.hpp:72
virtual float getAz() const =0
static const char * name
Definition: Exmalif.hpp:347
ExceptionErr(const std::string &_desc, int32_t _code)
Definition: Exmalif.hpp:92
virtual ::elt::mal::future< std::string > Config()
Definition: Exmalif.hpp:240
virtual ::elt::mal::future< std::string > Disable()=0
static constexpr const char * TYPE_ID
Definition: Exmalif.hpp:30
AsyncStdCmdsImplWrapper(const std::shared_ptr< StdCmds > &entity)
Definition: Exmalif.hpp:176
int32_t code
Definition: Exmalif.hpp:113
required float dec
Definition: exmalif.proto:15
virtual ::elt::mal::future< std::string > Reset()
Definition: Exmalif.hpp:200
Definition: Exmalif.hpp:162
virtual float getDec() const =0
virtual std::string Stop()=0
virtual ::elt::mal::future< std::string > Exit()=0
virtual std::string getLevel() const =0
static const char * name
Definition: Exmalif.hpp:335
virtual void setAlt(float alt)=0
static const char * libraryName
Definition: Exmalif.hpp:334
::exmalif::LogInfo & operator=(const ::exmalif::LogInfo &other)
Definition: Exmalif.hpp:82
required float az
Definition: exmalif.proto:20
std::string desc
Definition: Exmalif.hpp:112
message AxesPosition
Definition: exmalif.proto:18
virtual std::string Disable()=0
Definition: Exmalif.hpp:70
virtual ~TelPosition()=default
static const char * libraryName
Definition: Exmalif.hpp:340
virtual float getAlt() const =0
static int typeHash()
Definition: Exmalif.hpp:155
virtual ::elt::mal::future< std::string > Preset(const std::shared_ptr<::exmalif::TelPosition > &pos)=0
static const char * libraryName
Definition: Exmalif.hpp:328
virtual std::shared_ptr<::elt::mal::rr::Ami< std::string > > GetPresetProgress()
Definition: Exmalif.hpp:298
virtual ~ExceptionErr()=default
virtual std::string getLogger() const =0
package generated zpb exmalif
Definition: exmalif.proto:11
virtual ::elt::mal::future< std::string > Enable()
Definition: Exmalif.hpp:210
static const char * name
Definition: Exmalif.hpp:323
static const char * name
Definition: Exmalif.hpp:341
virtual void setLevel(const std::string &level)=0
message LogInfo
Definition: exmalif.proto:23
virtual ::elt::mal::future< std::string > Stop()
Definition: Exmalif.hpp:180
static const char * name
Definition: Exmalif.hpp:353
static const char * libraryName
Definition: Exmalif.hpp:346
virtual std::string Exit()=0
virtual ::elt::mal::future< std::string > Reset()=0
virtual std::string Enable()=0
virtual void setLogger(const std::string &logger)=0
virtual ::elt::mal::future< std::string > Status()=0
message TelPosition
Definition: exmalif.proto:13
virtual void setRa(float ra)=0
virtual ::elt::mal::future< std::string > Preset(const std::shared_ptr<::exmalif::TelPosition > &pos)
Definition: Exmalif.hpp:274
virtual float getRa() const =0
static const char * name
Definition: Exmalif.hpp:317
virtual ~AsyncStdCmds()=default
virtual void setDec(float dec)=0
virtual ::elt::mal::future< std::string > Status()
Definition: Exmalif.hpp:230
virtual std::string Reset()=0
static const char * name
Definition: Exmalif.hpp:329
virtual ::elt::mal::future< std::string > Stop()=0
::exmalif::AxesPosition & operator=(const ::exmalif::AxesPosition &other)
Definition: Exmalif.hpp:61
virtual std::string Move(const std::shared_ptr<::exmalif::AxesPosition > &pos)=0
virtual ~AxesPosition()=default
virtual void setAz(float az)=0
virtual ::elt::mal::future< std::string > Init()=0
static const char * libraryName
Definition: Exmalif.hpp:352
virtual ~AsyncStdCmdsImplWrapper()=default
virtual ::elt::mal::future< std::string > Exit()
Definition: Exmalif.hpp:250
Definition: Exmalif.hpp:168
static const char * libraryName
Definition: Exmalif.hpp:322
virtual std::string Init()=0