Go to the documentation of this file.00001 #ifndef OMG_DDS_SUB_ANY_DATA_READER_LISTENER_HPP_
00002 #define OMG_DDS_SUB_ANY_DATA_READER_LISTENER_HPP_
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #include <dds/core/corefwd.hpp>
00023 #include <dds/sub/subfwd.hpp>
00024
00025
00026 namespace dds { namespace sub {
00027
00028 class AnyDataReaderListener {
00029 public:
00030 virtual ~AnyDataReaderListener() { }
00031
00032 public:
00033 virtual void on_requested_deadline_missed(
00034 AnyDataReader& the_reader,
00035 const dds::core::status::RequestedDeadlineMissedStatus& status) = 0;
00036
00037 virtual void on_requested_incompatible_qos(
00038 AnyDataReader& the_reader,
00039 const dds::core::status::RequestedIncompatibleQosStatus& status) = 0;
00040
00041 virtual void on_sample_rejected(
00042 AnyDataReader& the_reader,
00043 const dds::core::status::SampleRejectedStatus& status) = 0;
00044
00045 virtual void on_liveliness_changed(
00046 AnyDataReader& the_reader,
00047 const dds::core::status::LivelinessChangedStatus& status) = 0;
00048
00049 virtual void on_data_available(AnyDataReader& the_reader) = 0;
00050
00051 virtual void on_subscription_matched(
00052 AnyDataReader& the_reader,
00053 const dds::core::status::SubscriptionMatchedStatus& status) = 0;
00054
00055 virtual void on_sample_lost(
00056 AnyDataReader& the_reader,
00057 const dds::core::status::SampleLostStatus& status) = 0;
00058 };
00059
00060
00061 class NoOpAnyDataReaderListener : public virtual AnyDataReaderListener {
00062 public:
00063 virtual ~NoOpAnyDataReaderListener() { }
00064
00065 public:
00066 virtual void on_requested_deadline_missed(
00067 AnyDataReader& the_reader,
00068 const dds::core::status::RequestedDeadlineMissedStatus& status) { }
00069
00070 virtual void on_requested_incompatible_qos(
00071 AnyDataReader& the_reader,
00072 const dds::core::status::RequestedIncompatibleQosStatus& status) { }
00073
00074 virtual void on_sample_rejected(
00075 AnyDataReader& the_reader,
00076 const dds::core::status::SampleRejectedStatus& status) { }
00077
00078 virtual void on_liveliness_changed(
00079 AnyDataReader& the_reader,
00080 const dds::core::status::LivelinessChangedStatus& status) { }
00081
00082 virtual void on_data_available(AnyDataReader& the_reader) { }
00083
00084 virtual void on_subscription_matched(
00085 AnyDataReader& the_reader,
00086 const dds::core::status::SubscriptionMatchedStatus& status) { }
00087
00088 virtual void on_sample_lost(
00089 AnyDataReader& the_reader,
00090 const dds::core::status::SampleLostStatus& status) { }
00091 };
00092 } }
00093
00094 #endif