ifw-fcf 6.0.0
Loading...
Searching...
No Matches
daqCmdsImpl.hpp
Go to the documentation of this file.
1
9#ifndef FCF_DEVMGR_COMMON_METADAQ_IMPL_HPP_
10#define FCF_DEVMGR_COMMON_METADAQ_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 MetaDaqImpl : public metadaqif::AsyncMetaDaq {
21public:
22 MetaDaqImpl(rad::SMAdapter& sm) : mSM(sm), m_logger(utils::bat::GetAppLogger()) {
23 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
24 }
25
26 virtual ~MetaDaqImpl() {
27 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
28 }
29
30 virtual elt::mal::future<std::shared_ptr<::metadaqif::DaqReply>> StartDaq(const std::string& id) override {
31 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
32 Events::StartDaq* ev = new Events::StartDaq(id);
33 mSM.PostEvent(rad::UniqueEvent(ev));
34 return ev->GetPayload().GetReplyFuture();
35 }
36
37 virtual elt::mal::future<std::shared_ptr<::metadaqif::DaqStopReply>> StopDaq(const std::string& id) override {
38 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
39 Events::StopDaq* ev = new Events::StopDaq(id);
40 mSM.PostEvent(rad::UniqueEvent(ev));
41 return ev->GetPayload().GetReplyFuture();
42 }
43
44 virtual elt::mal::future<std::shared_ptr<::metadaqif::DaqReply>> AbortDaq(const std::string& id) override {
45 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
46 Events::AbortDaq* ev = new Events::AbortDaq(id);
47 mSM.PostEvent(rad::UniqueEvent(ev));
48 return ev->GetPayload().GetReplyFuture();
49 }
50
51
52
53 virtual elt::mal::future<std::shared_ptr<::metadaqif::DaqStatus>> GetDaqStatus(const std::string& id) override {
54 LOG4CPLUS_TRACE_METHOD(m_logger,__PRETTY_FUNCTION__);
55 Events::GetDaqStatus* ev = new Events::GetDaqStatus(id);
56 mSM.PostEvent(rad::UniqueEvent(ev));
57 return ev->GetPayload().GetReplyFuture();
58 }
59
60
61private:
62 rad::SMAdapter& mSM;
63 log4cplus::Logger m_logger;
64};
65
66} // namespace server
67
68#endif // FCF_DEVMGR_COMMON_METADAQ_IMPL_HPP_
Definition: daqCmdsImpl.hpp:20
virtual ~MetaDaqImpl()
Definition: daqCmdsImpl.hpp:26
virtual elt::mal::future< std::shared_ptr<::metadaqif::DaqStopReply > > StopDaq(const std::string &id) override
Definition: daqCmdsImpl.hpp:37
virtual elt::mal::future< std::shared_ptr<::metadaqif::DaqReply > > StartDaq(const std::string &id) override
Definition: daqCmdsImpl.hpp:30
MetaDaqImpl(rad::SMAdapter &sm)
Definition: daqCmdsImpl.hpp:22
virtual elt::mal::future< std::shared_ptr<::metadaqif::DaqStatus > > GetDaqStatus(const std::string &id) override
Definition: daqCmdsImpl.hpp:53
virtual elt::mal::future< std::shared_ptr<::metadaqif::DaqReply > > AbortDaq(const std::string &id) override
Definition: daqCmdsImpl.hpp:44
Definition: actionMgr.cpp:29