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