ifw-fcf 8.0.2
 
Loading...
Searching...
No Matches
appCmdsImpl.hpp
Go to the documentation of this file.
1
7
8#ifndef FCF_DEVMGR_COMMON_APP_CMDS_IMPL_HPP_
9#define FCF_DEVMGR_COMMON_APP_CMDS_IMPL_HPP_
10
11#include "ifw/fcf/devmgr/common/events.rad.hpp"
12
13#include <ifw/core/utils/bat/logger.hpp>
14#include <rad/exceptions.hpp>
15#include <rad/smAdapter.hpp>
16
18
19class AppCmdsImpl : public fcfif::AsyncAppCmds {
20public:
21 AppCmdsImpl(rad::SMAdapter& sm) : mSM(sm), m_logger(ifw::core::utils::bat::GetAppLogger()) {
22 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
23 }
24
25 virtual ~AppCmdsImpl() {
26 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
27 }
28
29 virtual elt::mal::future<std::string> DevStatus(const std::vector<std::string>& devices) override {
30 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
31 Events::DevStatus* ev = new Events::DevStatus(devices);
32 mSM.PostEvent(rad::UniqueEvent(ev));
33 return ev->GetPayload().GetReplyFuture();
34 }
35
36 virtual elt::mal::future<std::string> Config() override {
37 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
38 Events::Config* ev = new Events::Config();
39 mSM.PostEvent(rad::UniqueEvent(ev));
40 return ev->GetPayload().GetReplyFuture();
41 }
42
43 virtual elt::mal::future<std::string> GetConfig() override {
44 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
45
46 Events::GetConfig* ev = new Events::GetConfig();
47 mSM.PostEvent(rad::UniqueEvent(ev));
48 return ev->GetPayload().GetReplyFuture();
49 }
50
51 virtual elt::mal::future<std::string> Simulate(const std::vector<std::string>& devices) override {
52 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
53 Events::Simulate* ev = new Events::Simulate(devices);
54 mSM.PostEvent(rad::UniqueEvent(ev));
55 return ev->GetPayload().GetReplyFuture();
56 }
57
58 virtual elt::mal::future<std::string> StopSim(const std::vector<std::string>& devices) override {
59 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
60 Events::StopSim* ev = new Events::StopSim(devices);
61 mSM.PostEvent(rad::UniqueEvent(ev));
62 return ev->GetPayload().GetReplyFuture();
63 }
64
65 virtual elt::mal::future<std::string> Ignore(const std::vector<std::string>& devices) override {
66 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
67 Events::Ignore* ev = new Events::Ignore(devices);
68 mSM.PostEvent(rad::UniqueEvent(ev));
69 return ev->GetPayload().GetReplyFuture();
70 }
71
72 virtual elt::mal::future<std::string> StopIgn(const std::vector<std::string>& devices) override {
73 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
74 Events::StopIgn* ev = new Events::StopIgn(devices);
75 mSM.PostEvent(rad::UniqueEvent(ev));
76 return ev->GetPayload().GetReplyFuture();
77 }
78
79 virtual elt::mal::future<std::string> HwInit(const std::vector<std::string>& devices) override {
80 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
81 Events::HwInit* ev = new Events::HwInit(devices);
82 mSM.PostEvent(rad::UniqueEvent(ev));
83 return ev->GetPayload().GetReplyFuture();
84 }
85
86 virtual elt::mal::future<std::string> HwEnable(const std::vector<std::string>& devices) override {
87 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
88 Events::HwEnable* ev = new Events::HwEnable(devices);
89 mSM.PostEvent(rad::UniqueEvent(ev));
90 return ev->GetPayload().GetReplyFuture();
91 }
92
93 virtual elt::mal::future<std::string> HwDisable(const std::vector<std::string>& devices) override {
94 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
95 Events::HwDisable* ev = new Events::HwDisable(devices);
96 mSM.PostEvent(rad::UniqueEvent(ev));
97 return ev->GetPayload().GetReplyFuture();
98 }
99
100 virtual elt::mal::future<std::string> HwReset(const std::vector<std::string>& devices) override {
101 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
102 Events::HwReset* ev = new Events::HwReset(devices);
103 mSM.PostEvent(rad::UniqueEvent(ev));
104 return ev->GetPayload().GetReplyFuture();
105 }
106
107 virtual elt::mal::future<std::string> Setup(const std::vector<std::shared_ptr<fcfif::SetupElem>>& buffer) override {
108 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
109 Events::Setup* ev = new Events::Setup(buffer);
110 mSM.PostEvent(rad::UniqueEvent(ev));
111 return ev->GetPayload().GetReplyFuture();
112 }
113
114 virtual elt::mal::future<std::string> Recover() override {
115 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
116 Events::Recover* ev = new Events::Recover();
117 mSM.PostEvent(rad::UniqueEvent(ev));
118 return ev->GetPayload().GetReplyFuture();
119 }
120
121 virtual elt::mal::future<std::string> DevNames() override {
122 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
123 Events::DevNames* ev = new Events::DevNames();
124 mSM.PostEvent(rad::UniqueEvent(ev));
125 return ev->GetPayload().GetReplyFuture();
126 }
127
128
129 virtual elt::mal::future<std::string> DevInfo() override {
130 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
131 Events::DevInfo* ev = new Events::DevInfo();
132 mSM.PostEvent(rad::UniqueEvent(ev));
133 return ev->GetPayload().GetReplyFuture();
134 }
135
136 virtual elt::mal::future<std::string> DevConfig(const std::string& devname) override {
137 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
138 Events::DevConfig* ev = new Events::DevConfig(devname);
139 mSM.PostEvent(rad::UniqueEvent(ev));
140 return ev->GetPayload().GetReplyFuture();
141 }
142
143 virtual elt::mal::future<std::string> Open(const std::string& devname) override {
144 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
145 Events::Open* ev = new Events::Open(devname);
146 mSM.PostEvent(rad::UniqueEvent(ev));
147 return ev->GetPayload().GetReplyFuture();
148 }
149
150 virtual elt::mal::future<std::string> Close(const std::string& devname) override {
151 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
152 Events::Close* ev = new Events::Close(devname);
153 mSM.PostEvent(rad::UniqueEvent(ev));
154 return ev->GetPayload().GetReplyFuture();
155 }
156
157 virtual elt::mal::future<std::string> OpenAt(const std::shared_ptr<fcfif::OpenAtParams>& params) override {
158 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
159 Events::OpenAt* ev = new Events::OpenAt(params->clone());
160 mSM.PostEvent(rad::UniqueEvent(ev));
161 return ev->GetPayload().GetReplyFuture();
162 }
163
164 virtual elt::mal::future<std::string> SwitchOn(const std::shared_ptr<fcfif::SwitchOnParams>& params) override {
165 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
166 Events::SwitchOn* ev = new Events::SwitchOn(params->clone());
167 mSM.PostEvent(rad::UniqueEvent(ev));
168 return ev->GetPayload().GetReplyFuture();
169 }
170
171 virtual elt::mal::future<std::string> SwitchOff(const std::string& devname) override {
172 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
173 Events::SwitchOff* ev = new Events::SwitchOff(devname);
174 mSM.PostEvent(rad::UniqueEvent(ev));
175 return ev->GetPayload().GetReplyFuture();
176 }
177
178 virtual elt::mal::future<std::string> MoveAbs(const std::shared_ptr<fcfif::MoveAbsParams>& params) override {
179 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
180 Events::MoveAbs* ev = new Events::MoveAbs(params->clone());
181 mSM.PostEvent(rad::UniqueEvent(ev));
182 return ev->GetPayload().GetReplyFuture();
183 }
184
185 virtual elt::mal::future<std::string> MoveAxes(const std::shared_ptr<fcfif::MoveAxesParams>& params) override {
186 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
187 Events::MoveAxes* ev = new Events::MoveAxes(params->clone());
188 mSM.PostEvent(rad::UniqueEvent(ev));
189 return ev->GetPayload().GetReplyFuture();
190 }
191
192 virtual elt::mal::future<std::string> MoveByName(const std::shared_ptr<fcfif::MoveByNameParams>& params) override {
193 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
194 Events::MoveByName* ev = new Events::MoveByName(params->clone());
195 mSM.PostEvent(rad::UniqueEvent(ev));
196 return ev->GetPayload().GetReplyFuture();
197 }
198
199 virtual elt::mal::future<std::string> MoveByPosUser(const std::shared_ptr<fcfif::MoveAbsParams>& params) override {
200 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
201 Events::MoveByPosUser* ev = new Events::MoveByPosUser(params->clone());
202 mSM.PostEvent(rad::UniqueEvent(ev));
203 return ev->GetPayload().GetReplyFuture();
204 }
205
206 virtual elt::mal::future<std::string> StartTrack(const std::shared_ptr<fcfif::StartTrackParams>& params) override {
207 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
208 Events::StartTrack* ev = new Events::StartTrack(params->clone());
209 mSM.PostEvent(rad::UniqueEvent(ev));
210 return ev->GetPayload().GetReplyFuture();
211 }
212
213 virtual elt::mal::future<std::string> StopTrack(const std::string& devname) override {
214 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
215 Events::StopTrack* ev = new Events::StopTrack(devname);
216 mSM.PostEvent(rad::UniqueEvent(ev));
217 return ev->GetPayload().GetReplyFuture();
218 }
219
220 virtual elt::mal::future<std::string> TrackOffset(const std::shared_ptr<fcfif::TrackOffsetParams>& params) override {
221 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
222 Events::TrackOffset* ev = new Events::TrackOffset(params->clone());
223 mSM.PostEvent(rad::UniqueEvent(ev));
224 return ev->GetPayload().GetReplyFuture();
225 }
226
227 virtual elt::mal::future<std::string> SetTipTilt(const std::shared_ptr<fcfif::SetTipTiltParams>& params) override {
228 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
229 Events::SetTipTilt* ev = new Events::SetTipTilt(params->clone());
230 mSM.PostEvent(rad::UniqueEvent(ev));
231 return ev->GetPayload().GetReplyFuture();
232 }
233
234 virtual elt::mal::future<std::string> StartCtrl(const std::string& devname) override {
235 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
236 Events::StartCtrl* ev = new Events::StartCtrl(devname);
237 mSM.PostEvent(rad::UniqueEvent(ev));
238 return ev->GetPayload().GetReplyFuture();
239 }
240
241 virtual elt::mal::future<std::string> StopCtrl(const std::string& devname) override {
242 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
243 Events::StopCtrl* ev = new Events::StopCtrl(devname);
244 mSM.PostEvent(rad::UniqueEvent(ev));
245 return ev->GetPayload().GetReplyFuture();
246 }
247
248 virtual elt::mal::future<std::string> SetTrajectory(const std::shared_ptr<fcfif::SetTrajectoryParams>& params) override {
249 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
250 Events::SetTrajectory* ev = new Events::SetTrajectory(params->clone());
251 mSM.PostEvent(rad::UniqueEvent(ev));
252 return ev->GetPayload().GetReplyFuture();
253 }
254
255 virtual elt::mal::future<std::string> SetCustom(const std::shared_ptr<fcfif::SetCustomParams>& params) override {
256 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
257 Events::SetCustom* ev = new Events::SetCustom(params->clone());
258 mSM.PostEvent(rad::UniqueEvent(ev));
259 return ev->GetPayload().GetReplyFuture();
260 }
261
262private:
263 rad::SMAdapter& mSM;
264 log4cplus::Logger m_logger;
265};
266
267} // namespace server
268
269#endif // FCF_DEVMGR_COMMON_APP_CMDS_IMPL_HPP_
virtual elt::mal::future< std::string > Simulate(const std::vector< std::string > &devices) override
Definition appCmdsImpl.hpp:51
virtual elt::mal::future< std::string > DevNames() override
Definition appCmdsImpl.hpp:121
virtual elt::mal::future< std::string > HwInit(const std::vector< std::string > &devices) override
Definition appCmdsImpl.hpp:79
virtual elt::mal::future< std::string > Recover() override
Definition appCmdsImpl.hpp:114
virtual elt::mal::future< std::string > SwitchOff(const std::string &devname) override
Definition appCmdsImpl.hpp:171
virtual elt::mal::future< std::string > HwReset(const std::vector< std::string > &devices) override
Definition appCmdsImpl.hpp:100
virtual elt::mal::future< std::string > GetConfig() override
Definition appCmdsImpl.hpp:43
virtual elt::mal::future< std::string > MoveAbs(const std::shared_ptr< fcfif::MoveAbsParams > &params) override
Definition appCmdsImpl.hpp:178
virtual elt::mal::future< std::string > StartCtrl(const std::string &devname) override
Definition appCmdsImpl.hpp:234
virtual elt::mal::future< std::string > OpenAt(const std::shared_ptr< fcfif::OpenAtParams > &params) override
Definition appCmdsImpl.hpp:157
virtual elt::mal::future< std::string > SwitchOn(const std::shared_ptr< fcfif::SwitchOnParams > &params) override
Definition appCmdsImpl.hpp:164
virtual elt::mal::future< std::string > StopTrack(const std::string &devname) override
Definition appCmdsImpl.hpp:213
virtual elt::mal::future< std::string > MoveByPosUser(const std::shared_ptr< fcfif::MoveAbsParams > &params) override
Definition appCmdsImpl.hpp:199
virtual elt::mal::future< std::string > StopIgn(const std::vector< std::string > &devices) override
Definition appCmdsImpl.hpp:72
virtual elt::mal::future< std::string > SetCustom(const std::shared_ptr< fcfif::SetCustomParams > &params) override
Definition appCmdsImpl.hpp:255
virtual elt::mal::future< std::string > TrackOffset(const std::shared_ptr< fcfif::TrackOffsetParams > &params) override
Definition appCmdsImpl.hpp:220
virtual elt::mal::future< std::string > SetTipTilt(const std::shared_ptr< fcfif::SetTipTiltParams > &params) override
Definition appCmdsImpl.hpp:227
virtual elt::mal::future< std::string > DevConfig(const std::string &devname) override
Definition appCmdsImpl.hpp:136
virtual elt::mal::future< std::string > Ignore(const std::vector< std::string > &devices) override
Definition appCmdsImpl.hpp:65
virtual elt::mal::future< std::string > SetTrajectory(const std::shared_ptr< fcfif::SetTrajectoryParams > &params) override
Definition appCmdsImpl.hpp:248
virtual elt::mal::future< std::string > DevInfo() override
Definition appCmdsImpl.hpp:129
virtual elt::mal::future< std::string > StopSim(const std::vector< std::string > &devices) override
Definition appCmdsImpl.hpp:58
virtual elt::mal::future< std::string > MoveAxes(const std::shared_ptr< fcfif::MoveAxesParams > &params) override
Definition appCmdsImpl.hpp:185
virtual elt::mal::future< std::string > HwEnable(const std::vector< std::string > &devices) override
Definition appCmdsImpl.hpp:86
virtual elt::mal::future< std::string > Open(const std::string &devname) override
Definition appCmdsImpl.hpp:143
virtual elt::mal::future< std::string > Setup(const std::vector< std::shared_ptr< fcfif::SetupElem > > &buffer) override
Definition appCmdsImpl.hpp:107
AppCmdsImpl(rad::SMAdapter &sm)
Definition appCmdsImpl.hpp:21
virtual elt::mal::future< std::string > Config() override
Definition appCmdsImpl.hpp:36
virtual elt::mal::future< std::string > MoveByName(const std::shared_ptr< fcfif::MoveByNameParams > &params) override
Definition appCmdsImpl.hpp:192
virtual elt::mal::future< std::string > HwDisable(const std::vector< std::string > &devices) override
Definition appCmdsImpl.hpp:93
virtual elt::mal::future< std::string > StartTrack(const std::shared_ptr< fcfif::StartTrackParams > &params) override
Definition appCmdsImpl.hpp:206
virtual ~AppCmdsImpl()
Definition appCmdsImpl.hpp:25
virtual elt::mal::future< std::string > Close(const std::string &devname) override
Definition appCmdsImpl.hpp:150
virtual elt::mal::future< std::string > StopCtrl(const std::string &devname) override
Definition appCmdsImpl.hpp:241
virtual elt::mal::future< std::string > DevStatus(const std::vector< std::string > &devices) override
Definition appCmdsImpl.hpp:29
ActionMgr class source file.
Definition actionMgr.cpp:28
Definition actionMgr.cpp:28