rad  5.1.0
actionsPreset.hpp
Go to the documentation of this file.
1 
9 #ifndef SERVER_ACTION_PRESET_HPP_
10 #define SERVER_ACTION_PRESET_HPP_
11 
12 #include <events.rad.hpp>
13 
14 #include <rad/actionGroup.hpp>
15 #include <rad/msgReplier.hpp>
16 #include <rad/smAdapter.hpp>
17 #include <rad/smRequestor.hpp>
18 #include <rad/topicSub.hpp>
19 
20 #include <scxml4cpp/Context.h>
21 
22 namespace server {
23 
24 class DataContext;
25 
30  public:
31  ActionsPreset(boost::asio::io_context& ios, rad::SMAdapter& sm, rad::MsgReplier& msg_replier,
32  DataContext& data_ctx);
33 
34  virtual ~ActionsPreset();
35 
36  void Start(scxml4cpp::Context* c);
37  void Stop(scxml4cpp::Context* c);
38  void Done(scxml4cpp::Context* c);
39  void Timeout(scxml4cpp::Context* c);
40  void Monitor(scxml4cpp::Context* c);
41 
42  ActionsPreset(const ActionsPreset&) = delete;
44 
45  private:
46  boost::asio::io_context& m_ios;
47  rad::SMAdapter& m_sm;
49  rad::MsgReplier& m_msg_replier;
51  rad::TopicSub m_subscriber;
52  DataContext& m_data_ctx;
53  int m_monitoring_msg_counter;
54 };
55 
56 } // namespace server
57 
58 #endif // SERVER_ACTION_PRESET_HPP_
Context header.
ActionGroup class header file.
Definition: actionGroup.hpp:20
Definition: msgReplier.hpp:28
Definition: smAdapter.hpp:60
Definition: topicSub.hpp:28
Definition: Context.h:58
Definition: actionsPreset.hpp:29
void Timeout(scxml4cpp::Context *c)
Definition: actionsPreset.cpp:161
void Done(scxml4cpp::Context *c)
Definition: actionsPreset.cpp:148
void Monitor(scxml4cpp::Context *c)
Definition: actionsPreset.cpp:176
virtual ~ActionsPreset()
Definition: actionsPreset.cpp:59
void Start(scxml4cpp::Context *c)
Definition: actionsPreset.cpp:73
ActionsPreset & operator=(const ActionsPreset &)=delete
Disable copy constructor.
ActionsPreset(const ActionsPreset &)=delete
ActionsPreset(boost::asio::io_context &ios, rad::SMAdapter &sm, rad::MsgReplier &msg_replier, DataContext &data_ctx)
Definition: actionsPreset.cpp:34
void Stop(scxml4cpp::Context *c)
Definition: actionsPreset.cpp:118
Definition: dataContext.hpp:21
MsgReplier class header file.
Definition: actionMgr.cpp:25
SMAdapter class header file.
SMRequestor.hpp public header file.
TopicSubRaw class header file.