OpenSplice ISO C++ 2 DCPS  v6.x
ISO C++ 2 OpenSplice Data Distribution Service Data-Centric Publish-Subscribe API
Publisher.hpp
Go to the documentation of this file.
1 #ifndef OMG_TDDS_PUB_PUBLISHER_HPP_
2 #define OMG_TDDS_PUB_PUBLISHER_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/types.hpp>
23 #include <dds/core/Entity.hpp>
27 
28 
29 
30 namespace dds
31 {
32 namespace pub
33 {
34 
35 class Publisher;
36 
37 class PublisherListener;
38 }
39 }
40 
56 {
57 public:
62 
63 public:
66 
67 
83 
110 
112  virtual ~Publisher();
115  //==========================================================================
116 
131  const dds::pub::qos::PublisherQos& qos() const;
132 
133 
148  void qos(const dds::pub::qos::PublisherQos& qos);
149 
152 
155 
185 
210 
211  //==========================================================================
212 
239  void listener(Listener* plistener,
240  const dds::core::status::StatusMask& mask);
241 
251  Listener* listener() const;
252 
253  //==========================================================================
254 
301  void wait_for_acknowledgments(const dds::core::Duration& timeout);
302 
303  //==========================================================================
304 
317 
318 };
319 
320 
321 #endif /* OMG_TDDS_PUB_PUBLISHER_HPP_ */
This class is the abstract base class for all the DCPS objects.
Definition: Entity.hpp:55
static StatusMask none()
Definition: State.hpp:205
#define OMG_DDS_IMPLICIT_REF_BASE(TYPE)
Definition: refmacros.hpp:70
This object provides the basic mechanism for an application to specify Quality of Service attributes ...
Publisher events Listener.
Listener * listener() const
Publisher(const dds::domain::DomainParticipant &dp)
A DomainParticipant represents the local membership of the application in a Domain.
Publisher & operator<<(const dds::pub::qos::PublisherQos &qos)
const dds::domain::DomainParticipant & participant() const
Definition: array.hpp:23
const dds::pub::qos::PublisherQos & qos() const
#define OMG_DDS_REF_TYPE_PROTECTED_DC(TYPE, BASE, DELEGATE)
Definition: refmacros.hpp:159
void wait_for_acknowledgments(const dds::core::Duration &timeout)
StatusMask is a bitmap or bitset field.
Definition: State.hpp:144
Publisher & operator>>(dds::pub::qos::PublisherQos &qos)
dds::pub::qos::DataWriterQos default_datawriter_qos() const
This object provides the basic mechanism for an application to specify Quality of Service attributes ...
The Publisher acts on the behalf of one or several DataWriter objects that belong to it...
Definition: Publisher.hpp:55
dds::pub::PublisherListener Listener
Definition: Publisher.hpp:61