OpenDDS  Snapshot(2023/04/28-20:55)
SendResponseListener.h
Go to the documentation of this file.
1 /*
2  *
3  *
4  * Distributed under the OpenDDS License.
5  * See: http://www.opendds.org/license.html
6  */
7 
8 #ifndef OPENDDS_DCPS_TRANSPORT_FRAMEWORK_SENDRESPONSELISTENER_H
9 #define OPENDDS_DCPS_TRANSPORT_FRAMEWORK_SENDRESPONSELISTENER_H
10 
11 #include "dds/DCPS/dcps_export.h"
12 #include "TransportSendListener.h"
14 #include "dds/DCPS/PoolAllocator.h"
15 
17 
18 namespace OpenDDS {
19 namespace DCPS {
20 
21 /**
22  * @class SendResponseListener
23  *
24  * @brief Simple listener to discard response samples.
25  *
26  * This is a simple listener implementation used to release response
27  * samples once they have been either delivered or dropped. No
28  * special actions are taken to distinguish between the two results.
29  */
31  : public TransportSendListener {
32 public:
33  explicit SendResponseListener(const OPENDDS_STRING& msg_src);
34  virtual ~SendResponseListener();
35 
36  virtual void data_delivered(const DataSampleElement* sample);
37  virtual void data_dropped(const DataSampleElement* sample,
38  bool dropped_by_transport);
39 
40  virtual void control_delivered(const Message_Block_Ptr& sample);
41  virtual void control_dropped(const Message_Block_Ptr& sample,
42  bool dropped_by_transport);
43 
47  void remove_associations(const ReaderIdSeq&, bool) {}
49 
50  void track_message();
51 
52 private:
53  void _add_ref() {}
54  void _remove_ref() {}
55 
57 };
58 
59 } // namespace DCPS
60 } // namespace OpenDDS
61 
63 
64 #endif /* OPENDDS_DCPS_SENDRESPONSELISTENER_H */
#define OpenDDS_Dcps_Export
Definition: dcps_export.h:24
#define OPENDDS_STRING
sequence< GUID_t > ReaderIdSeq
void remove_associations(const ReaderIdSeq &, bool)
Simple listener to discard response samples.
void notify_publication_reconnected(const ReaderIdSeq &)
void notify_publication_disconnected(const ReaderIdSeq &)
#define OPENDDS_END_VERSIONED_NAMESPACE_DECL
The Internal API and Implementation of OpenDDS.
Definition: AddressCache.h:28
void notify_publication_lost(const ReaderIdSeq &)