11#ifndef RTCTK_GENSUBREADERLISTENER_H
12#define RTCTK_GENSUBREADERLISTENER_H
37 const RequestedDeadlineMissedStatus& status)
override;
40 const RequestedIncompatibleQosStatus& status)
override;
47 void on_sample_rejected(DataReader* reader,
const SampleRejectedStatus& status)
override;
51 void ProcessSamples(
const rtctk::componentFramework::AgnosticTopicSeq& data_seq,
52 const SampleInfoSeq& info_seq);
54 void on_sample_lost(DataReader* reader,
const SampleLostStatus& status)
override;
61 return m_lost_samples;
81 return m_sleep_period;
85 m_sleep_period = value;
97 return m_expected_payload_pattern;
101 m_expected_payload_pattern = value;
104 return m_expected_sample_id_increment;
108 m_expected_sample_id_increment = value;
112 void CheckRamp(
const rtctk::componentFramework::AgnosticTopic& sample);
113 void CheckExpectedPayloadPattern(
const rtctk::componentFramework::AgnosticTopic& sample);
115 log4cplus::Logger& m_logger;
117 unsigned long m_lost_samples;
118 std::string m_list_name;
120 std::uint32_t m_last_sample_id;
121 std::uint32_t m_sample_id;
123 std::chrono::high_resolution_clock::time_point m_start_time;
124 std::chrono::duration<double> m_elapsed_time;
126 double m_sum_send_time;
131 rtctk::componentFramework::AgnosticTopicSeq m_data_seq;
132 SampleInfoSeq m_info_seq;
134 unsigned int m_topic_id;
137 static std::atomic<int> m_sleep_period;
138 static std::atomic<bool> m_check_ramp;
139 static std::atomic<uint32_t> m_expected_sample_id_increment;
140 static std::string m_expected_payload_pattern;
static int GetCheckRamp()
Definition genSubReaderListener.hpp:88
void Enable()
Definition genSubReaderListener.hpp:64
void on_liveliness_changed(DataReader *reader, const LivelinessChangedStatus &status) override
Definition genSubReaderListener.cpp:275
const std::string & GetName() const
Definition genSubReaderListener.hpp:76
static void SetExpectedPayloadPattern(const std::string &value)
Definition genSubReaderListener.hpp:100
void Disable()
Definition genSubReaderListener.hpp:68
void on_data_available(DataReader *reader) override
Definition genSubReaderListener.cpp:52
~GenSubReaderListener() override=default
void on_requested_incompatible_qos(DataReader *reader, const RequestedIncompatibleQosStatus &status) override
Definition genSubReaderListener.cpp:270
void on_requested_deadline_missed(DataReader *reader, const RequestedDeadlineMissedStatus &status) override
Definition genSubReaderListener.cpp:265
static int GetExpectedSampleIdIncrement()
Definition genSubReaderListener.hpp:103
static void SetSleepPeriod(int value)
Definition genSubReaderListener.hpp:84
static const std::string & GetExpectedPayloadPattern()
Definition genSubReaderListener.hpp:96
unsigned int GetIndex() const
Definition genSubReaderListener.hpp:72
static void SetCheckRamp(bool value)
Definition genSubReaderListener.hpp:92
static int GetSleepPeriod()
Definition genSubReaderListener.hpp:80
void ProcessSamples(const rtctk::componentFramework::AgnosticTopicSeq &data_seq, const SampleInfoSeq &info_seq)
Definition genSubReaderListener.cpp:154
void on_sample_rejected(DataReader *reader, const SampleRejectedStatus &status) override
Definition genSubReaderListener.cpp:314
GenSubReaderListener(const char *name, uint16_t topic_id)
Definition genSubReaderListener.cpp:34
void on_subscription_matched(DataReader *reader, const SubscriptionMatchedStatus &status) override
Definition genSubReaderListener.cpp:305
long GetNumSamples() const
Definition genSubReaderListener.hpp:56
static void SetExpectedSampleIdIncrement(uint32_t value)
Definition genSubReaderListener.hpp:107
unsigned long GetLostSamples() const
Definition genSubReaderListener.hpp:60
void on_sample_lost(DataReader *reader, const SampleLostStatus &status) override
Definition genSubReaderListener.cpp:326
Declares common DDS class.
Definition commandReplier.cpp:21