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