OpenDDS  Snapshot(2023/04/28-20:55)
DataReaderRemote.idl
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_INFOREPODISCOVERY_DATAREADERREMOTE_IDL
9 #define OPENDDS_DCPS_INFOREPODISCOVERY_DATAREADERREMOTE_IDL
10 
11 #include "dds/DdsDcpsInfoUtils.idl"
13 
14 module OpenDDS {
15  module DCPS {
16 
17  // This interface contains OpenDDS-specific operations
18  // related to a DDS::DataReader servant.
19  // It is split out so the DDS::DataReader interface can be local.
20  interface DataReaderRemote {
21 
22  // will tell transport and call on_subscription_matched()
23  oneway void add_association(
24  in GUID_t yourId,
25  in WriterAssociation writer,
26  in boolean active);
27 
28  // will tell transport that associations are going away
29  // The notify_lost flag true indicates the remove_association is invoked
30  // by the InfoRepo after it detected a lost writer. The InfoRepo detects
31  // the lost writer when the add_association/remove_association invocations
32  // on the writer object reference fail. The datareader need notify the
33  // the DataReaderListener on_publication_lost.
34  oneway void remove_associations(
35  in WriterIdSeq writers,
36  in boolean notify_lost);
37 
38  // Supporting - DataReaderListener::on_offered_incompatible_qos()
39  // May get called even if add_associations() is not called.
40  oneway void update_incompatible_qos(
41  in IncompatibleQosStatus status);
42 
43  };
44  }; // module DDS
45 }; // module OpenDDS
46 
47 #endif
sequence< GUID_t > WriterIdSeq
The Internal API and Implementation of OpenDDS.
Definition: AddressCache.h:28