1#ifndef IFWSLM_CMDS_IMPL_HPP
2#define IFWSLM_CMDS_IMPL_HPP
4#include "events.rad.hpp"
5#include <rad/exceptions.hpp>
6#include <rad/smAdapter.hpp>
22 template<
typename EventType>
23 elt::mal::future<std::string> PostLoopCommand(
24 const elt::mal::shared_vector<const int32_t>& loops) {
26 std::array<int32_t, 9> arr;
27 for (
size_t i = 0; i < arr.size(); ++i) {
30 auto ev = std::make_shared<EventType>(arr);
32 return ev->GetPayload().GetReplyFuture();
36 virtual elt::mal::future<std::string>
CloseLoop(
const elt::mal::shared_vector<const int32_t>& loops)
override {
37 return PostLoopCommand<Events::CloseLoop>(loops);
40 virtual elt::mal::future<std::string>
OpenLoop(
const elt::mal::shared_vector<const int32_t>& loops)
override {
41 return PostLoopCommand<Events::OpenLoop>(loops);
44 virtual elt::mal::future<std::string>
ResumeLoop(
const elt::mal::shared_vector<const int32_t>& loops)
override {
45 return PostLoopCommand<Events::ResumeLoop>(loops);
48 virtual elt::mal::future<std::string>
SuspendLoop(
const elt::mal::shared_vector<const int32_t>& loops)
override {
49 return PostLoopCommand<Events::SuspendLoop>(loops);
52 virtual elt::mal::future<std::string>
RunSlm()
override {
54 auto ev = std::make_shared<Events::RunSlm>();
56 return ev->GetPayload().GetReplyFuture();
59 virtual elt::mal::future<std::string>
StopSlm()
override {
61 auto ev = std::make_shared<Events::StopSlm>();
63 return ev->GetPayload().GetReplyFuture();
SecondaryLoopManagerCmdsImpl(rad::SMAdapter &sm)
Definition cmdsImpl.hpp:13
virtual elt::mal::future< std::string > CloseLoop(const elt::mal::shared_vector< const int32_t > &loops) override
Definition cmdsImpl.hpp:36
virtual elt::mal::future< std::string > StopSlm() override
Definition cmdsImpl.hpp:59
virtual elt::mal::future< std::string > SuspendLoop(const elt::mal::shared_vector< const int32_t > &loops) override
Definition cmdsImpl.hpp:48
virtual ~SecondaryLoopManagerCmdsImpl()
Definition cmdsImpl.hpp:17
virtual elt::mal::future< std::string > ResumeLoop(const elt::mal::shared_vector< const int32_t > &loops) override
Definition cmdsImpl.hpp:44
virtual elt::mal::future< std::string > RunSlm() override
Definition cmdsImpl.hpp:52
virtual elt::mal::future< std::string > OpenLoop(const elt::mal::shared_vector< const int32_t > &loops) override
Definition cmdsImpl.hpp:40
Definition actionMgr.cpp:29
log4cplus::Logger & GetLogger()
Definition logger.cpp:14