Cyclone ISO C++ API Reference Guide
Topic.hpp
Go to the documentation of this file.
1 #ifndef OMG_DDS_TTOPIC_TOPIC_HPP_
2 #define OMG_DDS_TTOPIC_TOPIC_HPP_
3 
4 /* Copyright 2010, Object Management Group, Inc.
5  * Copyright 2010, PrismTech, Corp.
6  * Copyright 2010, Real-Time Innovations, Inc.
7  * All rights reserved.
8  *
9  * Licensed under the Apache License, Version 2.0 (the "License");
10  * you may not use this file except in compliance with the License.
11  * You may obtain a copy of the License at
12  *
13  * http://www.apache.org/licenses/LICENSE-2.0
14  *
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  */
21 
22 #include <dds/core/conformance.hpp>
23 #include <dds/core/types.hpp>
24 #include <dds/core/ref_traits.hpp>
28 #include <dds/topic/AnyTopic.hpp>
29 
30 
31 namespace dds
32 {
33 namespace topic
34 {
35 template <typename T>
36 class Topic;
37 
38 template <typename T>
40 }
41 }
42 
43 
74 template <typename T>
76 {
77 public:
81  typedef T DataType;
82 
87 
88 public:
91 
92 public:
94  virtual ~Topic();
135  const std::string& topic_name);
136 
176  const std::string& topic_name,
177  const std::string& type_name);
178 
235  const std::string& topic_name,
239 
297  const std::string& topic_name,
298  const std::string& type_name,
302 
303  #if defined (OMG_DDS_X_TYPE_DYNAMIC_TYPES_SUPPORT)
304 
321  const std::string& topic_name,
322  const dds::core::xtypes::DynamicType type);
323 
343  const std::string& topic_name,
344  const dds::core::xtypes::DynamicType type
348 
349  #endif /* OMG_DDS_X_TYPE_DYNAMIC_TYPES_SUPPORT */
350 
351 public:
414  void listener(Listener* listener,
415  const ::dds::core::status::StatusMask& event_mask);
416 
426  Listener* listener() const;
427 
428 };
429 
430 
431 #endif /* OMG_DDS_TTOPIC_TOPIC_HPP_ */
dds::topic::Topic::DataType
T DataType
Definition: Topic.hpp:81
ref_traits.hpp
TopicQos.hpp
dds::topic::AnyTopic::qos
dds::topic::qos::TopicQos qos() const
types.hpp
dds::core::status::StatusMask
StatusMask is a bitmap or bitset field.
Definition: State.hpp:144
OMG_DDS_IMPLICIT_REF_BASE
#define OMG_DDS_IMPLICIT_REF_BASE(TYPE)
Definition: refmacros.hpp:75
dds::topic::Topic::Topic
Topic(const dds::domain::DomainParticipant &dp, const std::string &topic_name)
dds::core::status::StatusMask::none
static StatusMask none()
Definition: State.hpp:205
dds::topic::qos::TopicQos
This struct provides the basic mechanism for an application to specify Quality of Service attributes ...
Definition: TopicQos.hpp:67
DomainParticipant.hpp
AnyTopic.hpp
dds::topic::TopicListener
Topic events Listener.
Definition: Topic.hpp:39
conformance.hpp
dds
Definition: array.hpp:30
OMG_DDS_REF_TYPE_PROTECTED_DC_T
#define OMG_DDS_REF_TYPE_PROTECTED_DC_T(TYPE, BASE, T_PARAM, DELEGATE)
Definition: refmacros.hpp:171
dds::topic::Topic::listener
Listener * listener() const
dds::topic::AnyTopic
Typeless base class for the typed Topic.
Definition: AnyTopic.hpp:53
dds::topic::Topic
Topic is the most basic description of the data to be published and subscribed.
Definition: Topic.hpp:36
dds::topic::TopicDescription::type_name
const std::string & type_name() const
TopicDescription.hpp
dds::topic::Topic::Listener
TopicListener< T > Listener
Definition: Topic.hpp:86
dds::domain::DomainParticipant
A DomainParticipant represents the local membership of the application in a Domain.
Definition: DomainParticipant.hpp:65