ifw-ccf 4.0.0
Loading...
Searching...
No Matches
stdActions.hpp
Go to the documentation of this file.
1
5#ifndef CCFCONTROL_ACTIONSSTD_HPP_
6#define CCFCONTROL_ACTIONSSTD_HPP_
7
8#include <string>
9
10#include <rad/actionGroup.hpp>
11#include <rad/mal/request.hpp>
12#include <rad/signal.hpp>
13#include <rad/smAdapter.hpp>
14
15#include <scxml4cpp/StatusListener.h>
16#include <scxml4cpp/EventListener.h>
17
18#include <ccf/common/base.hpp>
19
20namespace ccf::control {
21
22class DataContext;
23
50class StdActions : public rad::ActionGroup, public scxml4cpp::StatusListener {
51 public:
52
53 StdActions(boost::asio::io_context& ioc,
54 rad::SMAdapter& sm,
55 DataContext& data);
56
57 void notifyStatus(std::list<scxml4cpp::State*>& status);
58
59 void notifyEvent(scxml4cpp::Event* event);
60
61 void Status(scxml4cpp::Context* c);
62
63 void Stop(scxml4cpp::Context* c);
64
65 void Init(scxml4cpp::Context* c);
66
67 void Enable(scxml4cpp::Context* c);
68
69 void Disable(scxml4cpp::Context* c);
70
71 void Reset(scxml4cpp::Context* c);
72
73 void SetLogLevel(scxml4cpp::Context* c);
74
75 void Exit(scxml4cpp::Context* c);
76
77 void GetState(scxml4cpp::Context* c);
78
79 void GetStatus(scxml4cpp::Context* c);
80
81 void GetVersion(scxml4cpp::Context* c);
82
83 void InitDone(scxml4cpp::Context* c);
84
85 void InitFailure(scxml4cpp::Context* c);
86
87 void ExitNoReply(scxml4cpp::Context* c);
88
89 StdActions(const StdActions&) = delete;
90 StdActions& operator=(const StdActions&) = delete;
91
92 private:
93 boost::asio::io_context& m_io_context;
94 rad::SMAdapter& m_sm;
95 rad::Signal m_signal;
96 DataContext& m_data;
97 rad::cii::Request<std::string> m_init_req;
98};
99
100} // namespace ccf::control
101
102#endif // CCFCONTROL_ACTIONSSTD_HPP_
Provides access to the application run-time data.
Definition: dataContext.hpp:18
RAD Action Group for the actions in connection with the "stdif".
Definition: stdActions.hpp:50
void notifyStatus(std::list< scxml4cpp::State * > &status)
Definition: stdActions.cpp:205
void Enable(scxml4cpp::Context *c)
Definition: stdActions.cpp:103
void InitFailure(scxml4cpp::Context *c)
Definition: stdActions.cpp:199
void Status(scxml4cpp::Context *c)
void GetState(scxml4cpp::Context *c)
Definition: stdActions.cpp:170
void GetStatus(scxml4cpp::Context *c)
Definition: stdActions.cpp:61
void SetLogLevel(scxml4cpp::Context *c)
Definition: stdActions.cpp:140
void Disable(scxml4cpp::Context *c)
Definition: stdActions.cpp:115
StdActions & operator=(const StdActions &)=delete
Disable copy constructor.
void Exit(scxml4cpp::Context *c)
Definition: stdActions.cpp:37
void notifyEvent(scxml4cpp::Event *event)
Definition: stdActions.cpp:210
void Stop(scxml4cpp::Context *c)
Definition: stdActions.cpp:75
void Reset(scxml4cpp::Context *c)
Definition: stdActions.cpp:127
void Init(scxml4cpp::Context *c)
Definition: stdActions.cpp:89
void GetVersion(scxml4cpp::Context *c)
Definition: stdActions.cpp:182
StdActions(const StdActions &)=delete
void ExitNoReply(scxml4cpp::Context *c)
Definition: stdActions.cpp:53
void InitDone(scxml4cpp::Context *c)
Definition: stdActions.cpp:194
Definition: acqThread.cpp:10