Go to the documentation of this file.
9 #ifndef RAD_TRSHEALTH_HPP
10 #define RAD_TRSHEALTH_HPP
17 #include <boost/asio.hpp>
19 #include <ptpmon/client.hpp>
24 static constexpr
char const*
ID =
"TrsEvents.HealthBad";
30 static constexpr
char const*
ID =
"TrsEvents.HealthGood";
38 class TrsHealth :
protected ptpmon::StatusNotifier {
48 boost::asio::io_context& ioc,
50 const std::string_view path = ptpmon::DEFAULT_SOCKET_PATH);
61 const ptpmon::StatusMessage&
GetStatus()
const;
70 void Notify(
const ptpmon::StatusMessage& status)
override;
77 ptpmon::StatusMessage m_status;
80 std::unique_ptr<ptpmon::Client> m_client;
88 #endif // RAD_TRSHEALTH_HPP
Definition: trsHealth.hpp:29
Definition: smAdapter.hpp:60
void Enable()
Enable TRS health status notification.
Definition: trsHealth.cpp:50
std::string payload_t
Definition: trsHealth.hpp:31
TrsHealth(boost::asio::io_context &ioc, SMAdapter &sm, const std::string_view path=ptpmon::DEFAULT_SOCKET_PATH)
Register callbacks and start connecting to the ptpmond socket.
Definition: trsHealth.cpp:21
static constexpr char const * ID
Definition: trsHealth.hpp:30
Definition: trsHealth.hpp:23
AnyEvent class header file.
TrsHealth(const TrsHealth &)=delete
TrsHealth(TrsHealth &&)=default
SMAdapter class header file.
TrsHealth & operator=(const TrsHealth &)=delete
static constexpr char const * ID
Definition: trsHealth.hpp:24
void Disable()
Disable TRS health status notification.
Definition: trsHealth.cpp:55
std::string payload_t
Definition: trsHealth.hpp:25
virtual ~TrsHealth()
Definition: trsHealth.cpp:41
Definition: oldbAdapter.hpp:26
const ptpmon::StatusMessage & GetStatus() const
Retrieve the most recent status.
Definition: trsHealth.cpp:45
Adapter for ptpmond's TRS Health status to the state machine.
Definition: trsHealth.hpp:38
Definition: anyEvent.hpp:93
TrsHealth & operator=(TrsHealth &&)=default
void Notify(const ptpmon::StatusMessage &status) override
Definition: trsHealth.cpp:60