HLCC Documentation 2.2.0
Loading...
Searching...
No Matches
actionsCommands.hpp
Go to the documentation of this file.
1// SPDX-FileCopyrightText: 2020-2025 European Southern Observatory (ESO)
2//
3// SPDX-License-Identifier: LGPL-3.0-only
4
13#ifndef HLCC_TELIF_TELIF_ACTIONCOMMANDS_HPP
14#define HLCC_TELIF_TELIF_ACTIONCOMMANDS_HPP
15
16#include <rad/configurableActionGroup.hpp>
17#include <rad/application.hpp>
19#include "Trexif.hpp"
20#include "Eltpkif.hpp"
21namespace hlcc::telif {
22
23class DataContext;
24class ActionMgr;
25
33class ActionsCommands : public rad::ConfigurableActionGroup {
34 public:
42 ActionsCommands(rad::Application& appl, ActionMgr& action_mgr, DataContext& data);
43
48 void Initialize() override;
49
56 void Configure(const std::vector<std::string>& keys) override;
57
65 void Preset(scxml4cpp::Context * c);
66
76 void SetObservingWavelength(scxml4cpp::Context * c);
77
86 void SetVelocityOffset(scxml4cpp::Context * c);
87
97 void SkyOffset(scxml4cpp::Context * c);
98
107 void SetReferenceFocus(scxml4cpp::Context * c);
108
117 void SetReferenceAberration(scxml4cpp::Context * c);
118
126 void RequestControl(scxml4cpp::Context * c);
127
134 void ReleaseControl(scxml4cpp::Context * c);
135
143 void RousConfig(scxml4cpp::Context * c);
144
152 void RousExecute(scxml4cpp::Context * c);
153
160 void RousActivityEntry(scxml4cpp::Context * c);
161
168 void RousActivityExit(scxml4cpp::Context * c);
169
175 void ReadyForHandoverEstimation(scxml4cpp::Context * c);
176
177
180
181 private:
182 rad::Application& m_appl;
183 ActionMgr& m_action_mgr;
184 DataContext& m_data;
185
188
189 bool ConnectEltpk();
190 bool ConnectTrex();
191 std::string GetReplyString(elt::mal::future<std::string> fut_ms, std::string remote_method_name);
192};
193
194} // namespace hlcc::telif
195
196#endif // HLCC_TELIF_TELIF_ACTIONCOMMANDS_HPP
Definition requestor.hpp:36
Definition actionMgr.hpp:31
Definition actionsCommands.hpp:33
void RousExecute(scxml4cpp::Context *c)
Definition actionsCommands.cpp:659
void SetReferenceFocus(scxml4cpp::Context *c)
Definition actionsCommands.cpp:433
void ReleaseControl(scxml4cpp::Context *c)
Definition actionsCommands.cpp:561
ActionsCommands(const ActionsCommands &)=delete
void SetReferenceAberration(scxml4cpp::Context *c)
Definition actionsCommands.cpp:452
void SetVelocityOffset(scxml4cpp::Context *c)
Definition actionsCommands.cpp:370
ActionsCommands(rad::Application &appl, ActionMgr &action_mgr, DataContext &data)
Definition actionsCommands.cpp:42
void Initialize() override
Definition actionsCommands.cpp:53
void RousActivityExit(scxml4cpp::Context *c)
Definition actionsCommands.cpp:685
void Preset(scxml4cpp::Context *c)
Definition actionsCommands.cpp:70
void RousConfig(scxml4cpp::Context *c)
Definition actionsCommands.cpp:635
void SkyOffset(scxml4cpp::Context *c)
Definition actionsCommands.cpp:413
void SetObservingWavelength(scxml4cpp::Context *c)
Definition actionsCommands.cpp:330
ActionsCommands & operator=(const ActionsCommands &)=delete
Disable copy constructor.
void RousActivityEntry(scxml4cpp::Context *c)
Definition actionsCommands.cpp:675
void ReadyForHandoverEstimation(scxml4cpp::Context *c)
Definition actionsCommands.cpp:695
void Configure(const std::vector< std::string > &keys) override
Definition actionsCommands.cpp:57
void RequestControl(scxml4cpp::Context *c)
Definition actionsCommands.cpp:471
Definition dataContext.hpp:41
Definition configTest.cpp:22
ccsinsdetifllnetio::PointingKernelPositions data
Definition pkp_llnetio_subscriber.cpp:33
Requestor class header file.