rad  5.1.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 
68 
78 
91 
101  void SetConfig(scxml4cpp::Context* c);
102 
113 
121 
131  void TrsHealth(scxml4cpp::Context* c);
132 
140 
146  void EnableTrsHealth(const bool enable);
147 
155 
163 
164  ActionsApp(const ActionsApp&) = delete;
165  ActionsApp& operator=(const ActionsApp&) = delete;
166 
167  private:
168  Application& m_appl;
169  ConfigurableActionMgr& m_action_mgr;
170  rad::Signal m_signal;
171  rad::Signal m_sigusr1;
172  rad::TrsHealth m_trs_health;
173  DataContext& m_data;
174 };
175 
176 } // namespace rad
177 
178 #endif // RAD_ACTIONS_STD_HPP
Context header.
Definition: actionsApp.hpp:32
void SaveStateMachine(scxml4cpp::Context *c)
Definition: actionsApp.cpp:351
void Configure(const std::vector< std::string > &keys) override
Definition: actionsApp.cpp:53
void TrsHealth(scxml4cpp::Context *c)
Definition: actionsApp.cpp:287
void GetTrsHealth(scxml4cpp::Context *c)
Definition: actionsApp.cpp:322
ActionsApp(const ActionsApp &)=delete
void EnableTrsHealth(const bool enable)
Definition: actionsApp.cpp:308
ActionsApp & operator=(const ActionsApp &)=delete
Disable copy constructor.
void GetConfig(scxml4cpp::Context *c)
Definition: actionsApp.cpp:139
void LoadConfig(scxml4cpp::Context *c)
Definition: actionsApp.cpp:209
void SaveConfig(scxml4cpp::Context *c)
Definition: actionsApp.cpp:257
void GetStateMachine(scxml4cpp::Context *c)
Definition: actionsApp.cpp:338
void Initialize() override
Definition: actionsApp.cpp:49
ActionsApp(Application &appl, ConfigurableActionMgr &action_mgr, DataContext &data)
Definition: actionsApp.cpp:22
void ExitNoReply(scxml4cpp::Context *c)
Definition: actionsApp.cpp:106
void Redeploy(scxml4cpp::Context *c)
Definition: actionsApp.cpp:113
virtual ~ActionsApp()
Definition: actionsApp.cpp:45
void SetConfig(scxml4cpp::Context *c)
Definition: actionsApp.cpp:180
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:20
Signal class.
Receiver of TRS health status updates.