ifw-fcf  4.1.0-pre2
actionsStd.hpp
Go to the documentation of this file.
1 
9 #ifndef FCF_FCF_DEVMGR_COMMON_ACTION_STD_HPP_
10 #define FCF_FCF_DEVMGR_COMMON_ACTION_STD_HPP_
11 
12 #include <utils/bat/logger.hpp>
13 #include <rad/actionGroup.hpp>
14 #include <rad/assert.hpp>
15 #include <rad/signal.hpp>
16 #include <rad/smAdapter.hpp>
17 
18 #include <scxml4cpp/EventListener.h>
19 #include <scxml4cpp/StatusListener.h>
20 #include <mal/Mal.hpp>
21 #include <string>
22 
23 namespace mal = ::elt::mal;
24 
25 namespace fcf::devmgr::common {
26 
27 class DataContext;
28 class DeviceFacade;
54 class ActionsStd : public rad::ActionGroup,
55  public scxml4cpp::StatusListener,
56  public scxml4cpp::EventListener {
57  public:
66  ActionsStd(boost::asio::io_service& ios, mal::Mal& mal, rad::SMAdapter& sm, DataContext& data,
67  DeviceFacade& device_facade);
68 
76  void notifyEvent(scxml4cpp::Event* e);
77 
84  void notifyStatus(std::list<scxml4cpp::State*>& status);
85 
90  void GetStatus(scxml4cpp::Context* c);
91 
96  void GetVersion(scxml4cpp::Context* c);
97 
106  void GetState(scxml4cpp::Context* c);
107 
116  void DevStatus(scxml4cpp::Context* c);
117 
126  void DevNames(scxml4cpp::Context* c);
127 
136  void DevInfo(scxml4cpp::Context* c);
137 
146  void DevConfig(scxml4cpp::Context* c);
147 
155  void Stop(scxml4cpp::Context* c);
156 
165  void Init(scxml4cpp::Context* c);
166 
174  void Enable(scxml4cpp::Context* c);
175 
183  void Disable(scxml4cpp::Context* c);
184 
192  void Reset(scxml4cpp::Context* c);
193 
203  void Config(scxml4cpp::Context* c);
204 
211  void GetConfig(scxml4cpp::Context* c);
212 
221  void SetLogLevel(scxml4cpp::Context* c);
222 
231  void Exit(scxml4cpp::Context* c);
232 
240  void ExitNoReply(scxml4cpp::Context* c);
241 
250  void Simulate(scxml4cpp::Context* c);
251 
260  void StopSim(scxml4cpp::Context* c);
261 
273  void Ignore(scxml4cpp::Context* c);
274 
282  void StopIgn(scxml4cpp::Context* c);
283 
291  void HwReset(scxml4cpp::Context* c);
292 
300  void HwInit(scxml4cpp::Context* c);
301 
309  void HwEnable(scxml4cpp::Context* c);
310 
318  void HwDisable(scxml4cpp::Context* c);
319 
326  void StartDaq(scxml4cpp::Context* c);
327 
334  void StopDaq(scxml4cpp::Context* c);
335 
342  void AbortDaq(scxml4cpp::Context* c);
343 
350  void GetDaqStatus(scxml4cpp::Context* c);
351 
352  ActionsStd(const ActionsStd&) = delete;
353  ActionsStd& operator=(const ActionsStd&) = delete;
354 
355  private:
356  boost::asio::io_service& m_io_service;
357  mal::Mal& m_mal;
358  rad::SMAdapter& m_sm;
359  rad::Signal m_signal;
360  DataContext& m_data;
361  DeviceFacade& m_device_facade;
362  std::string m_status;
363  std::string m_state;
364  std::string m_substate;
365  log4cplus::Logger m_logger;
366 
367 };
368 
369 } // namespace fcf::devmgr::common
370 
371 #endif // FCF_FCF_DEVMGR_COMMON_ACTION_STD_HPP_
fcf::devmgr::common::ActionsStd::Simulate
void Simulate(scxml4cpp::Context *c)
Implementation of the Simulate action.
Definition: actionsStd.cpp:429
fcf::devmgr::common::ActionsStd::GetStatus
void GetStatus(scxml4cpp::Context *c)
ActionsStd.
Definition: actionsStd.cpp:245
fcf::devmgr::common::ActionsStd::Enable
void Enable(scxml4cpp::Context *c)
Definition: actionsStd.cpp:328
fcf::devmgr::common::ActionsStd::Ignore
void Ignore(scxml4cpp::Context *c)
Implementation of the Ignore action.
Definition: actionsStd.cpp:469
fcf::devmgr::common::ActionsStd
Definition: actionsStd.hpp:56
fcf::devmgr::common::ActionsStd::StopIgn
void StopIgn(scxml4cpp::Context *c)
Definition: actionsStd.cpp:489
fcf::devmgr::common::ActionsStd::DevNames
void DevNames(scxml4cpp::Context *c)
Definition: actionsStd.cpp:585
fcf::devmgr::common::ActionsStd::Exit
void Exit(scxml4cpp::Context *c)
Definition: actionsStd.cpp:215
fcf::devmgr::common::ActionsStd::HwEnable
void HwEnable(scxml4cpp::Context *c)
Definition: actionsStd.cpp:528
fcf::devmgr::common::ActionsStd::Init
void Init(scxml4cpp::Context *c)
Definition: actionsStd.cpp:317
fcf::devmgr::common::ActionsStd::ActionsStd
ActionsStd(boost::asio::io_service &ios, mal::Mal &mal, rad::SMAdapter &sm, DataContext &data, DeviceFacade &device_facade)
Definition: actionsStd.cpp:26
fcf::devmgr::common::ActionsStd::GetDaqStatus
void GetDaqStatus(scxml4cpp::Context *c)
Definition: actionsStd.cpp:706
fcf::devmgr::common::ActionsStd::ExitNoReply
void ExitNoReply(scxml4cpp::Context *c)
Definition: actionsStd.cpp:227
fcf::devmgr::common
Definition: actionMgr.cpp:29
fcf::devmgr::common::ActionsStd::DevConfig
void DevConfig(scxml4cpp::Context *c)
Definition: actionsStd.cpp:617
fcf::devmgr::motor::Signal
Signal
Definition: motorConfig.hpp:128
fcf::devmgr::common::ActionsStd::GetVersion
void GetVersion(scxml4cpp::Context *c)
Get server version.
Definition: actionsStd.cpp:272
fcf::devmgr::common::ActionsStd::GetState
void GetState(scxml4cpp::Context *c)
Definition: actionsStd.cpp:233
fcf::devmgr::common::ActionsStd::Reset
void Reset(scxml4cpp::Context *c)
Definition: actionsStd.cpp:350
fcf::devmgr::common::ActionsStd::StartDaq
void StartDaq(scxml4cpp::Context *c)
Definition: actionsStd.cpp:636
fcf::devmgr::common::ActionsStd::SetLogLevel
void SetLogLevel(scxml4cpp::Context *c)
Definition: actionsStd.cpp:401
fcf::devmgr::common::DeviceFacade
Definition: deviceFacade.hpp:53
fcf::devmgr::common::ActionsStd::GetConfig
void GetConfig(scxml4cpp::Context *c)
Definition: actionsStd.cpp:380
fcf::devmgr::common::ActionsStd::Config
void Config(scxml4cpp::Context *c)
Definition: actionsStd.cpp:368
fcf::devmgr::common::DataContext
Definition: dataContext.hpp:90
fcf::devmgr::common::ActionsStd::AbortDaq
void AbortDaq(scxml4cpp::Context *c)
Definition: actionsStd.cpp:683
fcf::devmgr::common::ActionsStd::Disable
void Disable(scxml4cpp::Context *c)
Definition: actionsStd.cpp:339
fcf::devmgr::common::ActionsStd::DevStatus
void DevStatus(scxml4cpp::Context *c)
Definition: actionsStd.cpp:285
fcf::devmgr::common::ActionsStd::DevInfo
void DevInfo(scxml4cpp::Context *c)
Definition: actionsStd.cpp:601
fcf::devmgr::common::ActionsStd::ActionsStd
ActionsStd(const ActionsStd &)=delete
fcf::devmgr::common::ActionsStd::notifyEvent
void notifyEvent(scxml4cpp::Event *e)
Definition: actionsStd.cpp:84
fcf::devmgr::common::ActionsStd::HwReset
void HwReset(scxml4cpp::Context *c)
Definition: actionsStd.cpp:566
fcf::devmgr::common::ActionsStd::HwInit
void HwInit(scxml4cpp::Context *c)
Definition: actionsStd.cpp:509
fcf::devmgr::common::ActionsStd::operator=
ActionsStd & operator=(const ActionsStd &)=delete
Disable copy constructor.
fcf::devmgr::common::ActionsStd::StopSim
void StopSim(scxml4cpp::Context *c)
Implementation of the StopSim action.
Definition: actionsStd.cpp:449
fcf::devmgr::common::ActionsStd::Stop
void Stop(scxml4cpp::Context *c)
Definition: actionsStd.cpp:306
fcf::devmgr::common::ActionsStd::HwDisable
void HwDisable(scxml4cpp::Context *c)
Definition: actionsStd.cpp:547
fcf::devmgr::common::ActionsStd::notifyStatus
void notifyStatus(std::list< scxml4cpp::State * > &status)
Definition: actionsStd.cpp:43
fcf::devmgr::common::ActionsStd::StopDaq
void StopDaq(scxml4cpp::Context *c)
Definition: actionsStd.cpp:658