00001
00002
00003
00004
00005
00006
00007
00008 #ifndef OPENDDS_DCPS_DCPSINFO_IDL
00009 #define OPENDDS_DCPS_DCPSINFO_IDL
00010
00011 #include "dds/DdsDcpsInfoUtils.idl"
00012 #include "dds/DdsDcpsPublication.idl"
00013 #include "dds/DdsDcpsSubscription.idl"
00014
00015 #include "dds/DCPS/InfoRepoDiscovery/DataWriterRemote.idl"
00016 #include "dds/DCPS/InfoRepoDiscovery/DataReaderRemote.idl"
00017
00018 module OpenDDS {
00019 module DCPS {
00020
00021
00022
00023 exception Invalid_Domain {};
00024
00025
00026
00027 exception Invalid_Participant {};
00028
00029
00030
00031 exception Invalid_Publication {};
00032
00033
00034
00035 exception Invalid_Subscription {};
00036
00037
00038
00039 exception Invalid_Topic {};
00040
00041 interface DCPSInfo {
00042
00043
00044
00045 boolean attach_participant(in ::DDS::DomainId_t domainId,
00046 in RepoId participantId)
00047 raises (Invalid_Domain,
00048 Invalid_Participant);
00049
00050
00051
00052 TopicStatus assert_topic (out RepoId topicId,
00053 in ::DDS::DomainId_t domainId,
00054 in RepoId participantId,
00055 in string topicName,
00056 in string DataTypeName,
00057 in ::DDS::TopicQos qos,
00058 in boolean hasDcpsKey)
00059 raises (Invalid_Domain,
00060 Invalid_Participant);
00061
00062
00063
00064
00065 TopicStatus find_topic (in ::DDS::DomainId_t domainId,
00066 in string topicName,
00067 out string DataTypeName,
00068 out ::DDS::TopicQos qos,
00069 out RepoId topicId)
00070 raises (Invalid_Domain);
00071
00072
00073
00074 TopicStatus remove_topic (in ::DDS::DomainId_t domainId,
00075 in RepoId participantId,
00076 in RepoId topicId)
00077 raises (Invalid_Domain,
00078 Invalid_Participant,
00079 Invalid_Topic);
00080
00081
00082
00083
00084
00085
00086 RepoId add_publication (in ::DDS::DomainId_t domainId,
00087 in RepoId participantId,
00088 in RepoId topicId,
00089 in DataWriterRemote publication,
00090 in ::DDS::DataWriterQos qos,
00091 in TransportLocatorSeq transInfo,
00092 in ::DDS::PublisherQos publisherQos)
00093 raises (Invalid_Domain,
00094 Invalid_Participant,
00095 Invalid_Topic);
00096
00097
00098
00099 void remove_publication (in ::DDS::DomainId_t domainId,
00100 in RepoId participantId,
00101 in RepoId publicationId)
00102 raises (Invalid_Domain,
00103 Invalid_Participant,
00104 Invalid_Publication);
00105
00106
00107
00108
00109
00110
00111 RepoId add_subscription (in ::DDS::DomainId_t domainId,
00112 in RepoId participantId,
00113 in RepoId topicId,
00114 in DataReaderRemote subscription,
00115 in ::DDS::DataReaderQos qos,
00116 in TransportLocatorSeq transInfo,
00117 in ::DDS::SubscriberQos subscriberQos,
00118 in string filterClassName,
00119 in string filterExpression,
00120 in ::DDS::StringSeq exprParams)
00121 raises (Invalid_Domain,
00122 Invalid_Participant,
00123 Invalid_Topic);
00124
00125
00126
00127 void remove_subscription (in ::DDS::DomainId_t domainId,
00128 in RepoId participantId,
00129 in RepoId subscriptionId)
00130 raises (Invalid_Domain,
00131 Invalid_Participant,
00132 Invalid_Subscription);
00133
00134
00135
00136
00137
00138
00139
00140 AddDomainStatus add_domain_participant (in ::DDS::DomainId_t domain,
00141 in ::DDS::DomainParticipantQos qos)
00142 raises (Invalid_Domain);
00143
00144
00145
00146 void remove_domain_participant (in ::DDS::DomainId_t domainId,
00147 in RepoId participantId)
00148 raises (Invalid_Domain,
00149 Invalid_Participant);
00150
00151
00152
00153
00154
00155 oneway void association_complete(in DDS::DomainId_t domainId,
00156 in RepoId participantId,
00157 in RepoId localId,
00158 in RepoId remoteId);
00159
00160
00161 void disassociate_participant(in DDS::DomainId_t domainId,
00162 in RepoId local_id,
00163 in RepoId remote_id)
00164 raises(Invalid_Domain,
00165 Invalid_Participant);
00166
00167
00168 void disassociate_subscription(in DDS::DomainId_t domainId,
00169 in RepoId participantId,
00170 in RepoId local_id,
00171 in RepoId remote_id)
00172 raises(Invalid_Domain,
00173 Invalid_Participant,
00174 Invalid_Subscription);
00175
00176
00177 void disassociate_publication(in DDS::DomainId_t domainId,
00178 in RepoId participantId,
00179 in RepoId local_id,
00180 in RepoId remote_id)
00181 raises(Invalid_Domain,
00182 Invalid_Participant,
00183 Invalid_Publication);
00184
00185
00186
00187
00188 void ignore_domain_participant (in ::DDS::DomainId_t domainId,
00189 in RepoId myParticipantId,
00190 in RepoId ignoreId)
00191 raises (Invalid_Domain,
00192 Invalid_Participant);
00193
00194
00195
00196 void ignore_topic (in ::DDS::DomainId_t domainId,
00197 in RepoId myParticipantId,
00198 in RepoId ignoreId)
00199 raises (Invalid_Domain,
00200 Invalid_Participant,
00201 Invalid_Topic);
00202
00203
00204
00205 void ignore_subscription (in ::DDS::DomainId_t domainId,
00206 in RepoId myParticipantId,
00207 in RepoId ignoreId)
00208 raises (Invalid_Domain,
00209 Invalid_Participant,
00210 Invalid_Subscription);
00211
00212
00213
00214 void ignore_publication (in ::DDS::DomainId_t domainId,
00215 in RepoId myParticipantId,
00216 in RepoId ignoreId)
00217 raises (Invalid_Domain,
00218 Invalid_Participant,
00219 Invalid_Publication);
00220
00221
00222
00223
00224
00225
00226
00227
00228
00229 boolean update_domain_participant_qos (in ::DDS::DomainId_t domain,
00230 in RepoId participantId,
00231 in ::DDS::DomainParticipantQos qos)
00232 raises (Invalid_Domain,
00233 Invalid_Participant);
00234
00235 boolean update_topic_qos (in RepoId topicId,
00236 in ::DDS::DomainId_t domainId,
00237 in RepoId participantId,
00238 in ::DDS::TopicQos qos)
00239 raises (Invalid_Domain,
00240 Invalid_Participant,
00241 Invalid_Topic);
00242
00243 boolean update_publication_qos (in ::DDS::DomainId_t domainId,
00244 in RepoId participantId,
00245 in RepoId publicationId,
00246 in ::DDS::DataWriterQos qos,
00247 in ::DDS::PublisherQos publisherQos)
00248 raises (Invalid_Domain,
00249 Invalid_Participant,
00250 Invalid_Publication);
00251
00252 boolean update_subscription_qos (in ::DDS::DomainId_t domainId,
00253 in RepoId participantId,
00254 in RepoId subscriptionId,
00255 in ::DDS::DataReaderQos qos,
00256 in ::DDS::SubscriberQos subscriberQos)
00257 raises (Invalid_Domain,
00258 Invalid_Participant,
00259 Invalid_Subscription);
00260
00261 boolean update_subscription_params(in ::DDS::DomainId_t domainId,
00262 in RepoId participantId,
00263 in RepoId subscriptionId,
00264 in ::DDS::StringSeq exprParams)
00265 raises (Invalid_Domain,
00266 Invalid_Participant,
00267 Invalid_Subscription);
00268
00269 void shutdown();
00270
00271
00272 string dump_to_string();
00273 };
00274
00275 };
00276 };
00277
00278 #endif