OpenSplice ISO C++ 2 DCPS  v6.x
ISO C++ 2 OpenSplice Data Distribution Service Data-Centric Publish-Subscribe API
AnyDataReaderImpl.hpp
Go to the documentation of this file.
1 /*
2  * Vortex OpenSplice
3  *
4  * This software and documentation are Copyright 2006 to 2021 ADLINK
5  * Technology Limited, its affiliated companies and licensors. All rights
6  * reserved.
7  *
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  * http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  *
20  */
21 #ifndef OMG_DDS_SUB_DETAIL_TANYDATAREADER_HPP_
22 #define OMG_DDS_SUB_DETAIL_TANYDATAREADER_HPP_
23 
28 /*
29  * OMG PSM class declaration
30  */
31 
34 
35 // Implementation
36 
37 namespace dds
38 {
39 namespace sub
40 {
41 
42 
43 AnyDataReader::~AnyDataReader() {}
44 
45 
48 {
49  ISOCPP_REPORT_STACK_DDS_BEGIN(*this);
50  return this->delegate()->subscriber();
51 }
52 
53 
56 {
57  ISOCPP_REPORT_STACK_DDS_BEGIN(*this);
58 
59  return this->delegate()->topic_description();
60 }
61 
62 
63 void
65 {
66  ISOCPP_REPORT_STACK_DDS_BEGIN(*this);
67  this->delegate()->wait_for_historical_data(timeout);
68 }
69 
70 
71 
74 {
75  ISOCPP_REPORT_STACK_DDS_BEGIN(*this);
76  return this->delegate()->qos();
77 }
78 
79 
80 void
82 {
83  ISOCPP_REPORT_STACK_DDS_BEGIN(*this);
84  this->delegate()->qos(qos);
85 }
86 
87 
90 {
91  ISOCPP_REPORT_STACK_DDS_BEGIN(*this);
92  this->delegate()->qos(qos);
93  return *this;
94 }
95 
96 
97 const AnyDataReader&
99 {
100  ISOCPP_REPORT_STACK_DDS_BEGIN(*this);
101  qos = this->delegate()->qos();
102  return *this;
103 }
104 
105 
106 
109 {
110  ISOCPP_REPORT_STACK_DDS_BEGIN(*this);
111  return this->delegate()->liveliness_changed_status();
112 }
113 
114 
117 {
118  ISOCPP_REPORT_STACK_DDS_BEGIN(*this);
119  return this->delegate()->sample_rejected_status();
120 }
121 
122 
125 {
126  ISOCPP_REPORT_STACK_DDS_BEGIN(*this);
127  return this->delegate()->sample_lost_status();
128 }
129 
130 
133 {
134  ISOCPP_REPORT_STACK_DDS_BEGIN(*this);
135  return this->delegate()->requested_deadline_missed_status();
136 }
137 
138 
141 {
142  ISOCPP_REPORT_STACK_DDS_BEGIN(*this);
143  return this->delegate()->requested_incompatible_qos_status();
144 }
145 
146 
149 {
150  ISOCPP_REPORT_STACK_DDS_BEGIN(*this);
151  return this->delegate()->subscription_matched_status();
152 }
153 
154 }
155 }
156 // End of implementation
157 
158 #endif /* OMG_DDS_SUB_DETAIL_TANYDATAREADER_HPP_ */
A Subscriber is the object responsible for the actual reception of the data resulting from its subscr...
Definition: Subscriber.hpp:53
This class provides the basic mechanism for an application to specify Quality of Service attributes f...
const dds::topic::TopicDescription & topic_description() const
This class is the base for Topic, ContentFilteredTopic and MultiTopic.
dds::sub::qos::DataReaderQos qos() const
Typeless base class for the typed DataReader.
const AnyDataReader & operator>>(dds::sub::qos::DataReaderQos &qos) const
dds::core::status::LivelinessChangedStatus liveliness_changed_status()
dds::core::status::RequestedIncompatibleQosStatus requested_incompatible_qos_status()
dds::core::status::SampleLostStatus sample_lost_status()
Definition: array.hpp:23
void wait_for_historical_data(const dds::core::Duration &timeout)
dds::core::status::SampleRejectedStatus sample_rejected_status()
const dds::sub::Subscriber & subscriber() const
dds::core::status::RequestedDeadlineMissedStatus requested_deadline_missed_status()
dds::core::status::SubscriptionMatchedStatus subscription_matched_status()
AnyDataReader & operator<<(const dds::sub::qos::DataReaderQos &qos)