5 #ifndef IFW_CCF_CTL_MONITOR_THREAD_HPP_
6 #define IFW_CCF_CTL_MONITOR_THREAD_HPP_
8 #include <boost/exception/diagnostic_information.hpp>
24 const double period = 0.1);
36 void _ComputePublishStatistics();
37 void _CheckMessageBus();
39 std::string& diagnostics);
40 void _UpdateRecordingStatus();
42 void _ComputeStatistics(
const std::vector<double>& data_set,
43 uint16_t& samples_in_set,
49 const double theoretic_periodicty = INT_MIN);
51 std::list<std::string> m_thread_names;
52 std::map<std::string, ccf::common::FrameStatistics> m_thr_name_to_frame_stat;
53 std::map<std::string, double> m_thread_drift;
54 std::map<uint64_t, double> m_thread_drift_window;
55 uint64_t m_drift_count;
56 double m_mon_last_rec_wait_clean_up;
Monitor Thread MPTK class.
Definition: monitorThread.hpp:18
virtual void UserLogic()
Monitor Thread user logic.
Definition: monitorThread.cpp:29
void Initialise()
Initialise the thread. This is invoked after creation.
Definition: monitorThread.cpp:25
virtual ~MonitorThread()
Definition: monitorThread.cpp:21
MonitorThread(const std::string &thread_name, ccf::mptk::MessageBus &message_bus, const double period=0.1)
See ccf::mptk::Thread.
Definition: monitorThread.cpp:12
IFW CTD Multiprocessing Toolkit Message Bus.
Definition: messageBus.hpp:91
IFW CTD Multiprocessing Toolkit Thread base class.
Definition: thread.hpp:29
Definition: acqThread.cpp:10
Status
General status variable.
Definition: base.hpp:201