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