9#ifndef pfssimhlcc_GP_CMDS_IMPL_HPP
10#define pfssimhlcc_GP_CMDS_IMPL_HPP
12#include <pfssimhlcc/gpCtrEvents.rad.hpp>
16#include <rad/exceptions.hpp>
17#include <rad/smAdapter.hpp>
26 m_sm.RegisterDefaultRequestRejectHandler<GpCtrEvents::Preset>();
27 m_sm.RegisterDefaultRequestRejectHandler<GpCtrEvents::MoveGPTo>();
28 m_sm.RegisterDefaultRequestRejectHandler<GpCtrEvents::MoveRaw>();
29 m_sm.RegisterDefaultRequestRejectHandler<GpCtrEvents::SetTarget>();
36 elt::mal::future<std::string>
MoveGPTo(
const std::shared_ptr<::pfsif::GpXY>& args)
override {
39 auto ev = std::make_shared<GpCtrEvents::MoveGPTo>(args->clone());
42 return ev->GetPayload().GetReplyFuture();
45 elt::mal::future<std::string>
MoveGpToNamedPos(
const std::shared_ptr<::pfsif::GpNamedPos>& args)
override {
48 auto ev = std::make_shared<GpCtrEvents::MoveGpToNamedPos>(args->clone());
51 return ev->GetPayload().GetReplyFuture();
54 elt::mal::future<std::string>
MoveRaw(
const std::shared_ptr<::pfsif::GpRaw>& args)
override {
57 auto ev = std::make_shared<GpCtrEvents::MoveRaw>(args->clone());
60 return ev->GetPayload().GetReplyFuture();
66 auto ev = std::make_shared<GpCtrEvents::StartControlling>();
69 return ev->GetPayload().GetReplyFuture();
75 auto ev = std::make_shared<GpCtrEvents::StopControlling>();
78 return ev->GetPayload().GetReplyFuture();
81 elt::mal::future<std::string>
AssignFixTrajectory(
const std::shared_ptr<::pfsif::GpXY>& args)
override {
84 auto ev = std::make_shared<GpCtrEvents::AssignFixTrajectory>(args->clone());
87 return ev->GetPayload().GetReplyFuture();
90 elt::mal::future<std::string>
Preset(
const std::shared_ptr<::pfsif::GuideStarArgs>& args)
override {
93 auto ev = std::make_shared<GpCtrEvents::Preset>(args->clone());
96 return ev->GetPayload().GetReplyFuture();
102 auto ev = std::make_shared<GpCtrEvents::StopFollowingTrajectory>(args);
105 return ev->GetPayload().GetReplyFuture();
108 elt::mal::future<std::string>
SetTarget(
const std::shared_ptr<::pfsif::TargetArgs>& args)
override {
111 auto ev = std::make_shared<GpCtrEvents::SetTarget>(args->clone());
114 return ev->GetPayload().GetReplyFuture();
117 elt::mal::future<std::string>
SetHierarchy(
const std::shared_ptr<::pfsif::GpHierarchyArgs>& args)
override {
120 auto ev = std::make_shared<GpCtrEvents::SetHierarchy>(args->clone());
123 return ev->GetPayload().GetReplyFuture();
128 rad::SMAdapter& m_sm;
Definition: gpCmdsImpl.hpp:21
elt::mal::future< std::string > SetTarget(const std::shared_ptr<::pfsif::TargetArgs > &args) override
Definition: gpCmdsImpl.hpp:108
elt::mal::future< std::string > StopControlling() override
Definition: gpCmdsImpl.hpp:72
elt::mal::future< std::string > MoveGPTo(const std::shared_ptr<::pfsif::GpXY > &args) override
Definition: gpCmdsImpl.hpp:36
elt::mal::future< std::string > AssignFixTrajectory(const std::shared_ptr<::pfsif::GpXY > &args) override
Definition: gpCmdsImpl.hpp:81
elt::mal::future< std::string > StartControlling() override
Definition: gpCmdsImpl.hpp:63
elt::mal::future< std::string > MoveRaw(const std::shared_ptr<::pfsif::GpRaw > &args) override
Definition: gpCmdsImpl.hpp:54
elt::mal::future< std::string > MoveGpToNamedPos(const std::shared_ptr<::pfsif::GpNamedPos > &args) override
Definition: gpCmdsImpl.hpp:45
virtual ~GpCmdsImpl()
Definition: gpCmdsImpl.hpp:32
elt::mal::future< std::string > SetHierarchy(const std::shared_ptr<::pfsif::GpHierarchyArgs > &args) override
Definition: gpCmdsImpl.hpp:117
elt::mal::future< std::string > StopFollowingTrajectory(::pfsif::GuideProbeId args) override
Definition: gpCmdsImpl.hpp:99
GpCmdsImpl(rad::SMAdapter &sm)
Definition: gpCmdsImpl.hpp:23
elt::mal::future< std::string > Preset(const std::shared_ptr<::pfsif::GuideStarArgs > &args) override
Definition: gpCmdsImpl.hpp:90
Definition: actionMgr.cpp:31
log4cplus::Logger & GetLogger()
Definition: logger.cpp:17