13#ifndef RTCTK_COMPONENTFRAMEWORK_LOOPCMDSIMPL_HPP
14#define RTCTK_COMPONENTFRAMEWORK_LOOPCMDSIMPL_HPP
18#include <rtctk/componentFramework/events.rad.hpp>
38 std::shared_ptr<elt::mal::rr::RrEntity> rr_service = std::make_shared<LoopCmdsImpl>(engine);
39 replier.
RegisterService<rtctkif::AsyncLoopCmds>(
"LoopCmds", rr_service);
43 : m_logger(
GetLogger(
"rtctk")), m_engine(engine) {
46 ::elt::mal::future<std::string>
Open()
override {
47 LOG4CPLUS_TRACE(m_logger,
"Received command 'Open'");
48 return InjectReqRepEvent<events::Open>(m_engine);
51 ::elt::mal::future<std::string>
Close()
override {
52 LOG4CPLUS_TRACE(m_logger,
"Received command 'Close'");
53 return InjectReqRepEvent<events::Close>(m_engine);
57 log4cplus::Logger& m_logger;
Class that handles reception of commands using MAL.
Definition: commandReplier.hpp:29
void RegisterService(std::string const &name, std::shared_ptr< elt::mal::rr::RrEntity > &service)
Definition: commandReplier.hpp:36
Class that handles reception of commands Open and Close using MAL.
Definition: loopCmdsImpl.hpp:35
static void Register(CommandReplier &replier, StateMachineEngine &engine)
Definition: loopCmdsImpl.hpp:37
LoopCmdsImpl(StateMachineEngine &engine)
Definition: loopCmdsImpl.hpp:42
::elt::mal::future< std::string > Open() override
Definition: loopCmdsImpl.hpp:46
::elt::mal::future< std::string > Close() override
Definition: loopCmdsImpl.hpp:51
Definition: stateMachineEngine.hpp:35
Receive commands via MAL.
log4cplus::Logger & GetLogger(const std::string &name="app")
Get handle to a specific logger.
Definition: logger.cpp:180
Logging Support Library based on log4cplus.
Provides core functionality of an RTC Component.
Definition: commandReplier.cpp:22
Wrapper around the SCXML State Machine Engine.