6 #ifndef OPENDDS_DCPS_DISCOVERY_H 7 #define OPENDDS_DCPS_DISCOVERY_H 21 #include <dds/DdsDcpsInfoUtilsC.h> 22 #include <dds/DdsDcpsSubscriptionC.h> 23 #ifdef OPENDDS_SECURITY 24 # include <dds/DdsSecurityCoreC.h> 27 #ifndef ACE_LACKS_PRAGMA_ONCE 40 class DomainParticipantImpl;
90 virtual bool active() {
return true; }
96 RepoKey
key()
const {
return this->key_; }
106 virtual bool attach_participant(
108 const GUID_t& participantId) = 0;
117 #if defined(OPENDDS_SECURITY) 128 virtual bool remove_domain_participant(
130 const GUID_t& participantId) = 0;
132 virtual bool ignore_domain_participant(
134 const GUID_t& myParticipantId,
135 const GUID_t& ignoreId) = 0;
137 virtual bool update_domain_participant_qos(
139 const GUID_t& participantId,
148 const GUID_t& participantId,
149 const char* topicName,
150 const char* dataTypeName,
157 const GUID_t& participantId,
158 const char* topicName,
160 DDS::TopicQos_out qos,
161 GUID_t_out topicId) = 0;
165 const GUID_t& participantId,
166 const GUID_t& topicId) = 0;
168 virtual bool ignore_topic(
170 const GUID_t& myParticipantId,
171 const GUID_t& ignoreId) = 0;
173 virtual bool update_topic_qos(
176 const GUID_t& participantId,
189 virtual GUID_t add_publication(
191 const GUID_t& participantId,
199 virtual bool remove_publication(
201 const GUID_t& participantId,
202 const GUID_t& publicationId) = 0;
204 virtual bool ignore_publication(
206 const GUID_t& myParticipantId,
207 const GUID_t& ignoreId) = 0;
209 virtual bool update_publication_qos(
216 virtual void update_publication_locators(
231 virtual GUID_t add_subscription(
233 const GUID_t& participantId,
239 const char* filterClassName,
240 const char* filterExpression,
244 virtual bool remove_subscription(
246 const GUID_t& participantId,
247 const GUID_t& subscriptionId) = 0;
249 virtual bool ignore_subscription(
251 const GUID_t& myParticipantId,
252 const GUID_t& ignoreId) = 0;
254 virtual bool update_subscription_qos(
261 virtual bool update_subscription_params(
263 const GUID_t& participantId,
264 const GUID_t& subscriptionId,
267 virtual void update_subscription_locators(
static const char * DEFAULT_RTPS
virtual void pre_writer(DataWriterImpl *)
#define ACE_BEGIN_VERSIONED_NAMESPACE_DECL
Implements the OpenDDS::DCPS::DomainParticipant interfaces.
virtual void signal_liveliness(const DDS::DomainId_t, const GUID_t &, DDS::LivelinessQosPolicyKind)
static const char * DEFAULT_REPO
Key value for the default repository IOR.
RcHandle< Discovery > Discovery_rch
#define OpenDDS_Dcps_Export
virtual void request_remote_complete_type_objects(DDS::DomainId_t, const GUID_t &, const GUID_t &, const XTypes::TypeInformation &, TypeObjReqCond &cond)
Discovery(const RepoKey &key)
sequence< TransportLocator > TransportLocatorSeq
virtual bool supports_liveliness() const
DOMAINID_TYPE_NATIVE DomainId_t
Implements the OpenDDS::DCPS::DataWriterRemote interfaces and DDS::DataWriter interfaces.
static const char * DEFAULT_STATIC
long ParticipantCryptoHandle
ConditionVariable< LockType > cond
Implements the DDS::DataReader interface.
#define ACE_END_VERSIONED_NAMESPACE_DECL
virtual void pre_reader(DataReaderImpl *)
#define OPENDDS_END_VERSIONED_NAMESPACE_DECL
Discovery Strategy interface class.
ACE_Thread_Mutex LockType
const ReturnCode_t RETCODE_OK
const ReturnCode_t RETCODE_UNSUPPORTED
Defines the interface for Discovery callbacks into the Topic.
The Internal API and Implementation of OpenDDS.
sequence< string > StringSeq
void done(DDS::ReturnCode_t retcode)