OpenSplice ISO C++ 2 DCPS  v6.x
ISO C++ 2 OpenSplice Data Distribution Service Data-Centric Publish-Subscribe API
AnyDataReader.hpp
Go to the documentation of this file.
1 #ifndef OMG_TDDS_SUB_ANY_DATA_READER_HPP_
2 #define OMG_TDDS_SUB_ANY_DATA_READER_HPP_
3 /* Copyright 2010, Object Management Group, Inc.
4  * Copyright 2010, PrismTech, Corp.
5  * Copyright 2010, Real-Time Innovations, Inc.
6  * All rights 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 #include <dds/core/Entity.hpp>
22 #include <dds/sub/Subscriber.hpp>
25 
26 namespace dds
27 {
28 namespace sub
29 {
30 
31 class AnyDataReader;
32 
33 }
34 }
35 
51 {
52 public:
55 
56 
57  virtual ~AnyDataReader();
60  //==========================================================================
61  // -- Entity Navigation API
62 
74  const dds::sub::Subscriber& subscriber() const;
75 
88 
89 
90 
140  void wait_for_historical_data(const dds::core::Duration& timeout);
141 
142 #ifdef DOXYGEN_FOR_ISOCPP2
143  /*
144  * The above macro is never (and must never) be defined in normal compilation.
145  *
146  * The following code is for documenting proprietary API only.
147  */
148 
149 
239  void wait_for_historical_data_w_condition(const std::string& filter_expression,
240  const std::vector<std::string>& filter_parameters,
241  const dds::core::Time& min_source_timestamp,
242  const dds::core::Time& max_source_timestamp,
243  const dds::core::policy::ResourceLimits& resource_limits,
244  const dds::core::Duration& timeout);
245 #endif /* DOXYGEN_FOR_ISOCPP2 */
246 
247 
248  //==========================================================================
249  // -- QoS Management
250 
266  qos() const;
267 
300  void qos(const dds::sub::qos::DataReaderQos& qos);
301 
304 
307 
308 
309  //========================================================================
310  // -- Status API
334 
360 
385 
409 
439 
482 
483 };
484 
485 
486 #endif /* OMG_TDDS_SUB_ANY_DATA_READER_HPP_ */
This class is the abstract base class for all the DCPS objects.
Definition: Entity.hpp:55
A Subscriber is the object responsible for the actual reception of the data resulting from its subscr...
Definition: Subscriber.hpp:53
#define OMG_DDS_IMPLICIT_REF_BASE(TYPE)
Definition: refmacros.hpp:70
This class provides the basic mechanism for an application to specify Quality of Service attributes f...
void wait_for_historical_data_w_condition(const std::string &filter_expression, const std::vector< std::string > &filter_parameters, const dds::core::Time &min_source_timestamp, const dds::core::Time &max_source_timestamp, const dds::core::policy::ResourceLimits &resource_limits, const dds::core::Duration &timeout)
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)
#define OMG_DDS_REF_TYPE_PROTECTED_DC(TYPE, BASE, DELEGATE)
Definition: refmacros.hpp:159
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)