13#ifndef RTCTK_RTCSUPERVISOR_STATUSESTIMATOR_HPP
14#define RTCTK_RTCSUPERVISOR_STATUSESTIMATOR_HPP
66bool Contains(std::string
const& cont, std::string
const& item);
67bool ContainsAny(std::string
const& cont, std::set<std::string>
const& item);
68bool Contains(std::map<std::string, std::string>
const& cont, std::string
const& item);
69bool ContainsAny(std::map<std::string, std::string>
const& cont, std::set<std::string>
const& item);
98 std::string
EstimateStatus(std::string
const& name, std::string
const& state);
Class for system status estimation.
Definition: statusEstimator.hpp:74
virtual std::string ApplyEstimationHeuristic(std::map< std::string, std::string > const &states)
The actual system status estimation algorithm.
Definition: statusEstimator.cpp:35
StatusEstimator()
Definition: statusEstimator.cpp:17
std::map< std::string, std::string > m_prev_states
Definition: statusEstimator.hpp:116
std::map< std::string, std::string > m_states
Definition: statusEstimator.hpp:115
std::string m_prev_status
Definition: statusEstimator.hpp:117
std::string EstimateStatus(std::string const &name, std::string const &state)
Public method to estimate system status.
Definition: statusEstimator.cpp:26
virtual ~StatusEstimator()=default
void Reset()
Reset internal state of the StatusEstimator object.
Definition: statusEstimator.cpp:20
Definition: rtcSupervisor.cpp:21
constexpr auto STATUS_IDLE
Definition: statusEstimator.hpp:48
constexpr auto STATUS_NOT_READY
Definition: statusEstimator.hpp:45
constexpr auto STATE_READY
Definition: statusEstimator.hpp:27
constexpr auto STATE_STARTING
Definition: statusEstimator.hpp:24
bool Contains(std::string const &cont, std::string const &item)
Definition: statusEstimator.cpp:67
bool ContainsAny(std::string const &cont, std::set< std::string > const &item)
Definition: statusEstimator.cpp:71
constexpr auto STATUS_LOOP_CLOSED
Definition: statusEstimator.hpp:50
constexpr auto STATE_GOING_IDLE
Definition: statusEstimator.hpp:33
constexpr auto STATE_ENABLING
Definition: statusEstimator.hpp:28
constexpr auto STATUS_ERROR
Definition: statusEstimator.hpp:51
constexpr auto STATE_LOOP_SUSPENDED
Definition: statusEstimator.hpp:36
constexpr auto STATE_LOOP_SUSPENDING
Definition: statusEstimator.hpp:37
constexpr auto STATE_ERROR
Definition: statusEstimator.hpp:39
constexpr auto STATE_IDLE
Definition: statusEstimator.hpp:30
constexpr auto STATUS_OFF
Definition: statusEstimator.hpp:44
constexpr auto STATE_NOT_READY
Definition: statusEstimator.hpp:25
constexpr auto STATE_LOOP_CLOSED
Definition: statusEstimator.hpp:35
constexpr auto STATE_LOOP_RESUMING
Definition: statusEstimator.hpp:38
constexpr auto STATUS_INITIALISING
Definition: statusEstimator.hpp:46
constexpr auto STATUS_LOOP_OPENED
Definition: statusEstimator.hpp:49
constexpr auto STATE_LOOP_OPENED
Definition: statusEstimator.hpp:34
constexpr auto STATE_INITIALISING
Definition: statusEstimator.hpp:26
constexpr auto STATE_RECOVERING
Definition: statusEstimator.hpp:40
constexpr auto STATE_DISABLING
Definition: statusEstimator.hpp:29
constexpr auto STATE_GOING_RUNNING
Definition: statusEstimator.hpp:32
constexpr auto STATE_RUNNING
Definition: statusEstimator.hpp:31
constexpr auto STATE_OFF
Definition: statusEstimator.hpp:23
constexpr auto STATUS_READY
Definition: statusEstimator.hpp:47