rad  5.2.0
actionsApp.hpp
Go to the documentation of this file.
1 
9 #ifndef RAD_ACTIONS_APP_HPP
10 #define RAD_ACTIONS_APP_HPP
11 
13 #include <rad/signal.hpp>
14 #include <rad/trsHealth.hpp>
15 
16 #include <scxml4cpp/Context.h>
17 
18 #include <vector>
19 #include <string>
20 
21 namespace rad {
22 
23 class Application;
24 class DataContext;
25 class ConfigurableActionMgr;
26 
33  public:
43  ActionsApp(Application& appl, ConfigurableActionMgr& action_mgr, DataContext& data);
44 
45  virtual ~ActionsApp();
46 
51  void Initialize() override;
52 
59  void Configure(const std::vector<std::string>& keys) override;
60 
67  virtual void ExitNoReply(scxml4cpp::Context* c);
68 
77  virtual void Redeploy(scxml4cpp::Context* c);
78 
90  virtual void GetConfig(scxml4cpp::Context* c);
91 
101  virtual void SetConfig(scxml4cpp::Context* c);
102 
112  virtual void LoadConfig(scxml4cpp::Context* c);
113 
120  virtual void SaveConfig(scxml4cpp::Context* c);
121 
131  virtual void TrsHealth(scxml4cpp::Context* c);
132 
139  virtual void GetTrsHealth(scxml4cpp::Context* c);
140 
151  virtual void EnableTrsHealth(const bool enable);
152 
159  virtual void GetStateMachine(scxml4cpp::Context* c);
160 
167  virtual void SaveStateMachine(scxml4cpp::Context* c);
168 
169  ActionsApp(const ActionsApp&) = delete;
170  ActionsApp& operator=(const ActionsApp&) = delete;
171 
172  private:
173  Application& m_appl;
174  ConfigurableActionMgr& m_action_mgr;
175  rad::Signal m_signal;
176  rad::Signal m_sigusr1;
177  rad::TrsHealth m_trs_health;
178  DataContext& m_data;
179 };
180 
181 } // namespace rad
182 
183 #endif // RAD_ACTIONS_STD_HPP
Context header.
Definition: actionsApp.hpp:32
virtual void SaveStateMachine(scxml4cpp::Context *c)
Definition: actionsApp.cpp:369
void Configure(const std::vector< std::string > &keys) override
Definition: actionsApp.cpp:55
virtual void TrsHealth(scxml4cpp::Context *c)
Definition: actionsApp.cpp:289
virtual void GetTrsHealth(scxml4cpp::Context *c)
Definition: actionsApp.cpp:340
ActionsApp(const ActionsApp &)=delete
virtual void EnableTrsHealth(const bool enable)
Definition: actionsApp.cpp:312
ActionsApp & operator=(const ActionsApp &)=delete
Disable copy constructor.
virtual void GetConfig(scxml4cpp::Context *c)
Definition: actionsApp.cpp:141
virtual void LoadConfig(scxml4cpp::Context *c)
Definition: actionsApp.cpp:211
virtual void SaveConfig(scxml4cpp::Context *c)
Definition: actionsApp.cpp:259
virtual void GetStateMachine(scxml4cpp::Context *c)
Definition: actionsApp.cpp:356
void Initialize() override
Definition: actionsApp.cpp:51
ActionsApp(Application &appl, ConfigurableActionMgr &action_mgr, DataContext &data)
Definition: actionsApp.cpp:24
virtual void ExitNoReply(scxml4cpp::Context *c)
Definition: actionsApp.cpp:108
virtual void Redeploy(scxml4cpp::Context *c)
Definition: actionsApp.cpp:115
virtual ~ActionsApp()
Definition: actionsApp.cpp:47
virtual void SetConfig(scxml4cpp::Context *c)
Definition: actionsApp.cpp:182
Definition: application.hpp:48
Definition: configurableActionGroup.hpp:23
Definition: configurableActionMgr.hpp:30
Definition: dataContext.hpp:22
Definition: signal.hpp:22
Adapter for ptpmond's TRS Health status to the state machine.
Definition: trsHealth.hpp:40
Definition: Context.h:58
ConfigurableActionGroup class header file.
Definition: actionsApp.cpp:22
Signal class.
Receiver of TRS health status updates.