Go to the documentation of this file.
12 #ifndef RTCTK_COMPONENTFRAMEWORK_RTCCMDSIMPL_HPP
13 #define RTCTK_COMPONENTFRAMEWORK_RTCCMDSIMPL_HPP
15 #include <Rtctkif.hpp>
17 #include <rtctk/componentFramework/events.rad.hpp>
22 #include <mal/Cii.hpp>
35 std::shared_ptr<elt::mal::rr::RrEntity> rr_service = std::make_shared<FuncCmdsImpl>(engine);
36 replier.
RegisterService<rtctkif::AsyncFuncCmds>(
"FuncCmds", rr_service);
42 ::elt::mal::future<std::string>
Recover()
override {
43 LOG4CPLUS_TRACE(
GetLogger(),
"Received command 'Recover'");
44 return InjectReqRepEvent<events::Recover>(m_engine);
47 ::elt::mal::future<std::string>
Run()
override {
48 LOG4CPLUS_TRACE(
GetLogger(),
"Received command 'Run'");
49 return InjectReqRepEvent<events::Run>(m_engine);
52 ::elt::mal::future<std::string>
Idle()
override {
53 LOG4CPLUS_TRACE(
GetLogger(),
"Received command 'Idle'");
54 return InjectReqRepEvent<events::Idle>(m_engine);
67 std::shared_ptr<elt::mal::rr::RrEntity> rr_service =
68 std::make_shared<UpdateCmdsImpl>(engine);
69 replier.
RegisterService<rtctkif::AsyncUpdateCmds>(
"UpdateCmds", rr_service);
75 ::elt::mal::future<std::string>
Update(std::string
const& args)
override {
76 LOG4CPLUS_TRACE(
GetLogger(),
"Received command 'Update' with payload '" + args +
"'");
77 return InjectReqRepEvent<events::Update>(m_engine, args);
Receive commands via MAL.
Wrapper around the SCXML State Machine Engine.
Definition: commandReplier.cpp:20
Definition: stateMachineEngine.hpp:31
::elt::mal::future< std::string > Idle() override
Definition: rtcCmdsImpl.hpp:52
log4cplus::Logger & GetLogger(const std::string &name="")
Get handle to a specific logger (used with logging macros)
static void Register(CommandReplier &replier, StateMachineEngine &engine)
Definition: rtcCmdsImpl.hpp:34
::elt::mal::future< std::string > Run() override
Definition: rtcCmdsImpl.hpp:47
Class that handles reception of commands using MAL.
Definition: commandReplier.hpp:26
UpdateCmdsImpl(StateMachineEngine &engine)
Definition: rtcCmdsImpl.hpp:72
FuncCmdsImpl(StateMachineEngine &engine)
Definition: rtcCmdsImpl.hpp:39
Logging Support Library based on log4cplus.
void RegisterService(std::string const &name, std::shared_ptr< elt::mal::rr::RrEntity > &service)
Definition: commandReplier.hpp:33
Class that handles reception of commands Run, Idle and Recover using MAL.
Definition: rtcCmdsImpl.hpp:32
Provides core functionality of an RTC Component.
static void Register(CommandReplier &replier, StateMachineEngine &engine)
Definition: rtcCmdsImpl.hpp:66
::elt::mal::future< std::string > Update(std::string const &args) override
Definition: rtcCmdsImpl.hpp:75
Class that handles reception of command Update using MAL.
Definition: rtcCmdsImpl.hpp:64
::elt::mal::future< std::string > Recover() override
Definition: rtcCmdsImpl.hpp:42