HLCC Documentation
3.0.0
Loading...
Searching...
No Matches
software
apps
telif
app
src
include
telif
offsetHandler.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_OFFSETHANDLER_HPP
14
#define HLCC_TELIF_TELIF_OFFSETHANDLER_HPP
15
16
#include <mutex>
17
#include <rad/application.hpp>
18
19
#include <boost/asio/thread_pool.hpp>
20
#include <gtest/gtest_prod.h>
21
#include "Ccsinsif.hpp"
22
#include "Telifif.hpp"
23
#include "
telif/logger.hpp
"
24
#include "
hlcc/utils/requestor/requestor.hpp
"
25
#include <Eltpkif.hpp>
26
#include <ptk/angles.hpp>
27
#include <ptk/posastro.hpp>
28
29
namespace
hlcc::telif
{
30
31
class
DataContext
;
32
36
class
OffsetHandler
{
37
public
:
41
OffsetHandler
(
DataContext
& data_ctx);
42
43
void
Init
(rad::Application& appl);
44
48
virtual
~OffsetHandler
();
49
53
std::optional<ptk::EquatorialPosition>
GetAbsolutePosition
();
54
60
void
PostOffset
(
const
std::shared_ptr<::ccsinsif::OffsetSkyArgs> &offset_sky_args);
61
62
63
private
:
64
69
void
ProcessOffset();
70
71
rad::Application* m_appl;
72
73
/* Member variables */
74
DataContext
& m_data_ctx;
// Reference to data context
75
76
boost::asio::thread_pool m_offset_thread_pool;
// Pool of 1 thread for sending offset
77
78
uint16_t m_last_session_id;
// We will use this var to store the id of the
79
// last sequence execution session
80
// This way we ensure to use always a different
81
// session id for each execution of a sequence.
82
};
83
84
}
// namespace hlcc::telif
85
86
#endif
// HLCC_TELIF_TELIF_OFFSETHANDLER_HPP
logger.hpp
Default logger name.
hlcc::telif::DataContext
Definition
dataContext.hpp:43
hlcc::telif::OffsetHandler::PostOffset
void PostOffset(const std::shared_ptr<::ccsinsif::OffsetSkyArgs > &offset_sky_args)
Definition
offsetHandler.cpp:57
hlcc::telif::OffsetHandler::OffsetHandler
OffsetHandler(DataContext &data_ctx)
Definition
offsetHandler.cpp:41
hlcc::telif::OffsetHandler::~OffsetHandler
virtual ~OffsetHandler()
Definition
offsetHandler.cpp:50
hlcc::telif::OffsetHandler::GetAbsolutePosition
std::optional< ptk::EquatorialPosition > GetAbsolutePosition()
Definition
offsetHandler.cpp:71
hlcc::telif::OffsetHandler::Init
void Init(rad::Application &appl)
Definition
offsetHandler.cpp:46
hlcc::telif
Definition
configTest.cpp:22
requestor.hpp
Requestor class header file.
Generated by
1.13.2