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