28 #ifndef dds_c_discovery_plugin_h
29 #define dds_c_discovery_plugin_h
34 #ifndef dds_c_common_h
37 #ifndef dds_c_domain_h
49 extern DDSCDllVariable
const char *DDS_PARTICIPANT_BUILTIN_TOPIC_TYPE_NAME;
54 extern DDSCDllVariable
const char *DDS_PARTICIPANT_BUILTIN_TOPIC_NAME;
59 extern DDSCDllVariable
const char *DDS_PUBLICATION_BUILTIN_TOPIC_TYPE_NAME;
64 extern DDSCDllVariable
const char *DDS_PUBLICATION_BUILTIN_TOPIC_NAME;
69 extern DDSCDllVariable
const char *DDS_SUBSCRIPTION_BUILTIN_TOPIC_TYPE_NAME;
74 extern DDSCDllVariable
const char *DDS_SUBSCRIPTION_BUILTIN_TOPIC_NAME;
79 #define DDS_PARTICIPANT_TOPIC_NAME DDS_PARTICIPANT_BUILTIN_TOPIC_NAME
84 #define DDS_PUBLICATION_TOPIC_NAME DDS_PUBLICATION_BUILTIN_TOPIC_NAME
89 #define DDS_SUBSCRIPTION_TOPIC_NAME DDS_SUBSCRIPTION_BUILTIN_TOPIC_NAME
94 struct NDDS_Discovery_Plugin
99 struct RT_Component _parent;
105 struct NDDS_Discovery_Listener
110 struct RT_ComponentListener _parent;
117 #define NDDS_Discovery_Listener_INITIALIZE {\
118 RT_ComponentListener_INITIALIZER\
129 #define NDDSDiscovery_narrow(factory_) \
130 (((struct NDDS_Discovery_Plugin*)(factory_))->intf)
141 (*NDDSDiscovery_deleteFunc)(
struct NDDS_Discovery_Plugin *
self);
153 FUNCTION_MUST_TYPEDEF(
154 struct NDDS_Discovery_Plugin*
155 (*NDDS_Discovery_Plugin_createFunc) (
157 const struct NDDS_Discovery_Listener *
const listener)
173 FUNCTION_MUST_TYPEDEF(
175 (*NDDS_Discovery_Plugin_BeforeLocalParticipantCreatedCallback)(
176 struct NDDS_Discovery_Plugin *
const discovery_plugin,
194 FUNCTION_MUST_TYPEDEF(
196 (*NDDS_Discovery_Plugin_AfterLocalParticipantCreatedCallback)(
197 struct NDDS_Discovery_Plugin *
const discovery_plugin,
214 FUNCTION_MUST_TYPEDEF(
216 (*NDDS_Discovery_Plugin_AfterLocalParticipantEnabledCallback)(
217 struct NDDS_Discovery_Plugin*
const discovery_plugin,
234 FUNCTION_MUST_TYPEDEF(
236 (*NDDS_Discovery_Plugin_BeforeLocalParticipantDeletedCallback)(
237 struct NDDS_Discovery_Plugin *
const discovery_plugin,
255 FUNCTION_MUST_TYPEDEF(
257 (*NDDS_Discovery_Plugin_AfterLocalDataWriterEnabledCallback)(
258 struct NDDS_Discovery_Plugin *
const discovery_plugin,
276 FUNCTION_MUST_TYPEDEF(
278 (*NDDS_Discovery_Plugin_AfterLocalDataWriterDeletedCallback)(
279 struct NDDS_Discovery_Plugin *
const discovery_plugin,
297 FUNCTION_MUST_TYPEDEF(
299 (*NDDS_Discovery_Plugin_AfterLocalDataReaderEnabledCallback)(
300 struct NDDS_Discovery_Plugin *
const discovery_plugin,
318 FUNCTION_MUST_TYPEDEF(
320 (*NDDS_Discovery_Plugin_AfterLocalDataReaderDeletedCallback)(
321 struct NDDS_Discovery_Plugin *
const discovery_plugin,
338 FUNCTION_MUST_TYPEDEF(
340 (*NDDS_Discovery_Plugin_RemoteParticipantLivelinessExpiredCallback)(
341 struct NDDS_Discovery_Plugin *
const discovery_plugin,
358 FUNCTION_MUST_TYPEDEF(
360 (*NDDS_Discovery_Plugin_AddPeerFunction)(
361 struct NDDS_Discovery_Plugin *
const discovery_plugin,
376 (*NDDS_Discovery_Plugin_AssertRemoteParticipant)(
377 struct NDDS_Discovery_Plugin *
const discovery_plugin,
379 const char *
const participant_name);
384 struct NDDS_DiscoveryI
389 struct RT_ComponentI _parent;
394 NDDS_Discovery_Plugin_RemoteParticipantLivelinessExpiredCallback
395 on_remote_participant_liveliness_expired;
401 NDDS_Discovery_Plugin_BeforeLocalParticipantCreatedCallback
402 on_before_local_participant_created;
408 NDDS_Discovery_Plugin_AfterLocalParticipantCreatedCallback
409 on_after_local_participant_created;
414 NDDS_Discovery_Plugin_AfterLocalParticipantEnabledCallback
415 on_after_local_participant_enabled;
420 NDDS_Discovery_Plugin_BeforeLocalParticipantDeletedCallback
421 on_before_local_participant_deleted;
426 NDDS_Discovery_Plugin_AfterLocalDataWriterEnabledCallback
427 on_after_local_datawriter_enabled;
432 NDDS_Discovery_Plugin_AfterLocalDataWriterDeletedCallback
433 on_after_local_datawriter_deleted;
438 NDDS_Discovery_Plugin_AfterLocalDataReaderEnabledCallback
439 on_after_local_datareader_enabled;
444 NDDS_Discovery_Plugin_AfterLocalDataReaderDeletedCallback
445 on_after_local_datareader_deleted;
450 NDDS_Discovery_Plugin_AddPeerFunction add_peer;
456 NDDS_Discovery_Plugin_AssertRemoteParticipant on_assert_remote_participant;
468 #define DiscoveryComponentFactory_create_component(f_,p_,l_) \
469 (struct NDDS_Discovery_Plugin*)((f_)->intf)->create_component(f_,p_,l_)
477 #define DiscoveryComponentFactory_delete_component(f_,c_) \
478 ((f_)->intf)->delete_component(f_,(RT_Component_T*)(c_))
496 #define NDDS_Discovery_Plugin_on_before_local_participant_created(\
498 ((struct NDDS_DiscoveryI*)((self_)->_parent._intf))->\
499 on_before_local_participant_created(self_,p_,q_,b_)
515 #define NDDS_Discovery_Plugin_on_after_local_participant_created(\
517 ((struct NDDS_DiscoveryI*)((self_)->_parent._intf))->\
518 on_after_local_participant_created(self_,p_,data_)
534 #define NDDS_Discovery_Plugin_on_after_local_participant_enabled(\
536 ((struct NDDS_DiscoveryI*)((self_)->_parent._intf))->\
537 on_after_local_participant_enabled(self_,p_,data_)
552 #define NDDS_Discovery_Plugin_on_before_local_participant_deleted(\
554 ((struct NDDS_DiscoveryI*)((self_)->_parent._intf))->\
555 on_before_local_participant_deleted(self_,p_,key_)
570 #define NDDS_Discovery_Plugin_on_after_local_datawriter_enabled(\
572 ((struct NDDS_DiscoveryI*)((self_)->_parent._intf))->\
573 on_after_local_datawriter_enabled(self_,p_,dw_,dq_)
587 #define NDDS_Discovery_Plugin_on_after_local_datawriter_deleted(\
589 ((struct NDDS_DiscoveryI*)((self_)->_parent._intf))->\
590 on_after_local_datawriter_deleted(self_,p_,dwkey_)
605 #define NDDS_Discovery_Plugin_on_after_local_datareader_enabled(\
607 ((struct NDDS_DiscoveryI*)((self_)->_parent._intf))->\
608 on_after_local_datareader_enabled(self_,p_,dr_,dq_)
622 #define NDDS_Discovery_Plugin_on_after_local_datareader_deleted(self_,p_,drkey_)\
623 ((struct NDDS_DiscoveryI*)((self_)->_parent._intf))->\
624 on_after_local_datareader_deleted(self_,p_,drkey_)
639 #define NDDS_Discovery_Plugin_on_remote_participant_liveliness_expired(\
641 ((struct NDDS_DiscoveryI*)((self_)->_parent._intf))->\
642 on_remote_participant_liveliness_expired(self_,p_,data_)
657 #define NDDS_Discovery_Plugin_add_peer(\
659 ((struct NDDS_DiscoveryI*)((self_)->_parent._intf))->add_peer(self_,p_,peer_)
674 #define NDDS_Discovery_Plugin_assert_remote_participant(self_,p_,name_) \
675 ((struct NDDS_DiscoveryI*)((self_)->_parent._intf))->on_assert_remote_participant(self_,p_,name_)