ifw-fcf 8.0.2
 
Loading...
Searching...
No Matches
actionsStd.hpp
Go to the documentation of this file.
1
7
8#ifndef FCF_FCF_DEVMGR_COMMON_ACTION_STD_HPP_
9#define FCF_FCF_DEVMGR_COMMON_ACTION_STD_HPP_
10
11#include <ifw/core/utils/bat/logger.hpp>
12#include <rad/actionGroup.hpp>
13#include <rad/assert.hpp>
14#include <rad/signal.hpp>
15#include <rad/smAdapter.hpp>
16
17#include <scxml4cpp/EventListener.h>
18#include <scxml4cpp/StatusListener.h>
19#include <mal/Mal.hpp>
20#include <string>
21
22namespace mal = ::elt::mal;
23
25
26class DataContext;
27class DeviceFacade;
53class ActionsStd : public rad::ActionGroup,
54 public scxml4cpp::StatusListener,
55 public scxml4cpp::EventListener {
56 public:
65 ActionsStd(boost::asio::io_service& ios, mal::Mal& mal, rad::SMAdapter& sm, DataContext& data,
66 DeviceFacade& device_facade);
67
75 void notifyEvent(scxml4cpp::Event* e);
76
83 void notifyStatus(std::list<scxml4cpp::State*>& status);
84
89 void GetStatus(scxml4cpp::Context* c);
90
95 void GetVersion(scxml4cpp::Context* c);
96
105 void GetState(scxml4cpp::Context* c);
106
115 void DevStatus(scxml4cpp::Context* c);
116
125 void DevNames(scxml4cpp::Context* c);
126
135 void DevInfo(scxml4cpp::Context* c);
136
145 void DevConfig(scxml4cpp::Context* c);
146
154 void Stop(scxml4cpp::Context* c);
155
164 void Init(scxml4cpp::Context* c);
165
173 void Enable(scxml4cpp::Context* c);
174
182 void Disable(scxml4cpp::Context* c);
183
191 void Reset(scxml4cpp::Context* c);
192
202 void Config(scxml4cpp::Context* c);
203
210 void GetConfig(scxml4cpp::Context* c);
211
220 void SetLogLevel(scxml4cpp::Context* c);
221
227 void GetLogLevel(scxml4cpp::Context* c);
228
237 void Exit(scxml4cpp::Context* c);
238
246 void ExitNoReply(scxml4cpp::Context* c);
247
256 void Simulate(scxml4cpp::Context* c);
257
266 void StopSim(scxml4cpp::Context* c);
267
279 void Ignore(scxml4cpp::Context* c);
280
288 void StopIgn(scxml4cpp::Context* c);
289
297 void HwReset(scxml4cpp::Context* c);
298
306 void HwInit(scxml4cpp::Context* c);
307
315 void HwEnable(scxml4cpp::Context* c);
316
324 void HwDisable(scxml4cpp::Context* c);
325
332 void Open(scxml4cpp::Context* c);
339 void Close(scxml4cpp::Context* c);
346 void OpenAt(scxml4cpp::Context* c);
353 void SwitchOn(scxml4cpp::Context* c);
360 void SwitchOff(scxml4cpp::Context* c);
367 void MoveAbs(scxml4cpp::Context* c);
368
375 void MoveAxes(scxml4cpp::Context* c);
376
383 void MoveByName(scxml4cpp::Context* c);
384
391 void MoveByPosUser(scxml4cpp::Context* c);
392
399 void StartTrack(scxml4cpp::Context* c);
406 void StopTrack(scxml4cpp::Context* c);
413 void TrackOffset(scxml4cpp::Context* c);
420 void SetTipTilt(scxml4cpp::Context* c);
421
428 void StartCtrl(scxml4cpp::Context* c);
435 void StopCtrl(scxml4cpp::Context* c);
436
443 void SetTrajectory(scxml4cpp::Context* c);
444
451 void SetCustom(scxml4cpp::Context* c);
458 void StartDaq(scxml4cpp::Context* c);
459
466 void StopDaq(scxml4cpp::Context* c);
467
474 void AbortDaq(scxml4cpp::Context* c);
475
482 void GetDaqStatus(scxml4cpp::Context* c);
483
490
491 void Error(scxml4cpp::Context* c);
492
493 ActionsStd(const ActionsStd&) = delete;
494 ActionsStd& operator=(const ActionsStd&) = delete;
495
496 private:
497 boost::asio::io_service& m_io_service;
498 mal::Mal& m_mal;
499 rad::SMAdapter& m_sm;
500 rad::Signal m_signal;
501 DataContext& m_data;
502 DeviceFacade& m_device_facade;
503 std::string m_status;
504 std::string m_state;
505 std::string m_substate;
506 log4cplus::Logger m_logger;
507
508};
509
510} // namespace ifw::fcf::devmgr::common
511
512#endif // FCF_FCF_DEVMGR_COMMON_ACTION_STD_HPP_
void MoveByName(scxml4cpp::Context *c)
Definition actionsStd.cpp:1033
void SwitchOff(scxml4cpp::Context *c)
Definition actionsStd.cpp:907
void DevInfo(scxml4cpp::Context *c)
Definition actionsStd.cpp:707
void Ignore(scxml4cpp::Context *c)
Implementation of the Ignore action.
Definition actionsStd.cpp:575
void StartCtrl(scxml4cpp::Context *c)
Definition actionsStd.cpp:1293
void SwitchOn(scxml4cpp::Context *c)
Definition actionsStd.cpp:872
void SetTipTilt(scxml4cpp::Context *c)
Definition actionsStd.cpp:1258
void HwReset(scxml4cpp::Context *c)
Definition actionsStd.cpp:672
void StartDaq(scxml4cpp::Context *c)
Definition actionsStd.cpp:1449
void Reset(scxml4cpp::Context *c)
Definition actionsStd.cpp:418
void SetTrajectory(scxml4cpp::Context *c)
Definition actionsStd.cpp:1377
void StopCtrl(scxml4cpp::Context *c)
Definition actionsStd.cpp:1335
void ExitNoReply(scxml4cpp::Context *c)
Definition actionsStd.cpp:294
void StopSim(scxml4cpp::Context *c)
Implementation of the StopSim action.
Definition actionsStd.cpp:555
void MoveAbs(scxml4cpp::Context *c)
Definition actionsStd.cpp:941
void DevNames(scxml4cpp::Context *c)
Definition actionsStd.cpp:691
void GetState(scxml4cpp::Context *c)
Definition actionsStd.cpp:301
void MoveAxes(scxml4cpp::Context *c)
Definition actionsStd.cpp:976
void notifyStatus(std::list< scxml4cpp::State * > &status)
Definition actionsStd.cpp:63
void OpenAt(scxml4cpp::Context *c)
Definition actionsStd.cpp:831
void Disable(scxml4cpp::Context *c)
Definition actionsStd.cpp:407
void Enable(scxml4cpp::Context *c)
Definition actionsStd.cpp:396
void StopDaq(scxml4cpp::Context *c)
Definition actionsStd.cpp:1471
void DevConfig(scxml4cpp::Context *c)
Definition actionsStd.cpp:723
void StopTrack(scxml4cpp::Context *c)
Definition actionsStd.cpp:1171
void AbortDaq(scxml4cpp::Context *c)
Definition actionsStd.cpp:1496
void GetLogLevel(scxml4cpp::Context *c)
Definition actionsStd.cpp:497
void Open(scxml4cpp::Context *c)
Definition actionsStd.cpp:741
void SetCustom(scxml4cpp::Context *c)
Definition actionsStd.cpp:1417
void notifyEvent(scxml4cpp::Event *e)
Definition actionsStd.cpp:104
void DevStatus(scxml4cpp::Context *c)
Definition actionsStd.cpp:353
void GetDaqStatus(scxml4cpp::Context *c)
Definition actionsStd.cpp:1519
void GetConfig(scxml4cpp::Context *c)
Definition actionsStd.cpp:448
void Config(scxml4cpp::Context *c)
Definition actionsStd.cpp:436
void TrackOffset(scxml4cpp::Context *c)
Definition actionsStd.cpp:1223
ActionsStd(const ActionsStd &)=delete
void StartTrack(scxml4cpp::Context *c)
Definition actionsStd.cpp:1108
void MoveByPosUser(scxml4cpp::Context *c)
Definition actionsStd.cpp:1067
void Close(scxml4cpp::Context *c)
Definition actionsStd.cpp:781
void GetStatus(scxml4cpp::Context *c)
ActionsStd.
Definition actionsStd.cpp:313
void Init(scxml4cpp::Context *c)
Definition actionsStd.cpp:385
void Error(scxml4cpp::Context *c)
Definition actionsStd.cpp:1548
void GetVersion(scxml4cpp::Context *c)
Get server version.
Definition actionsStd.cpp:340
void Simulate(scxml4cpp::Context *c)
Implementation of the Simulate action.
Definition actionsStd.cpp:535
ActionsStd(boost::asio::io_service &ios, mal::Mal &mal, rad::SMAdapter &sm, DataContext &data, DeviceFacade &device_facade)
Definition actionsStd.cpp:46
void StopIgn(scxml4cpp::Context *c)
Definition actionsStd.cpp:595
void HwEnable(scxml4cpp::Context *c)
Definition actionsStd.cpp:634
void Exit(scxml4cpp::Context *c)
Definition actionsStd.cpp:280
void SetLogLevel(scxml4cpp::Context *c)
Definition actionsStd.cpp:469
void Stop(scxml4cpp::Context *c)
Definition actionsStd.cpp:374
void HwInit(scxml4cpp::Context *c)
Definition actionsStd.cpp:615
ActionsStd & operator=(const ActionsStd &)=delete
Disable copy constructor.
void HwDisable(scxml4cpp::Context *c)
Definition actionsStd.cpp:653
Definition dataContext.hpp:86
Definition deviceFacade.hpp:59
ActionMgr class source file.
Definition actionMgr.cpp:28