ifw  0.0.1-dev
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
callbacks.hpp
Go to the documentation of this file.
1 
9 #ifndef {{cookiecutter.module_name|upper}}_CALLBACKS_HPP_
10 #define {{cookiecutter.module_name|upper}}_CALLBACKS_HPP_
11 
12 #include <rad/Dispatcher.hpp>
13 #include <rad/Signal.hpp>
14 #include <rad/MsgReplier.hpp>
15 
16 #include <string>
17 
18 namespace {{cookiecutter.module_name}} {
19 
20 class DataContext;
21 
25 class Callbacks {
26  public:
35  Callbacks(boost::asio::io_service& ios, rad::Dispatcher& dispatcher,
36  rad::MsgReplier& msg_replier, DataContext& data);
37 
46  void Status(const rad::AnyEvent& last_event);
47 
55  void Stop(const rad::AnyEvent& last_event);
56 
65  void Init(const rad::AnyEvent& last_event);
66 
74  void Enable(const rad::AnyEvent& last_event);
75 
83  void Disable(const rad::AnyEvent& last_event);
84 
92  void Reset(const rad::AnyEvent& last_event);
93 
103  void Config(const rad::AnyEvent& last_event);
104 
113  void Exit(const rad::AnyEvent& last_event);
114 
121  void ExitNoReply(const rad::AnyEvent& last_event);
122 
123  Callbacks(const Callbacks&) = delete;
124  Callbacks& operator=(const Callbacks&) = delete;
125 
126  private:
127  boost::asio::io_service& m_io_service;
128  rad::MsgReplier& m_msg_replier;
129  rad::Signal m_signal;
130  DataContext& m_data;
131 };
132 
133 } // namespace {{cookiecutter.module_name}}
134 
135 #endif // {{cookiecutter.module_name|upper}}_CALLBACKS_HPP_
Definition: MsgReplier.hpp:29
Config
Definition: Test{{cookiecutter.device_name}}Config.cpp:44
Definition: Signal.hpp:23
#define cookiecutter
Definition: Dispatcher.hpp:22
Definition: AnyEvent.hpp:55