32 #ifndef dds_c_domain_h
33 #define dds_c_domain_h
42 #include "reda/reda_string.h"
47 #ifndef dds_c_infrastructure_h
57 #ifndef dds_c_publication_h
60 #ifndef dds_c_subscription_h
87 struct RT_ComponentProperty _parent;
92 #define NDDS_Discovery_Property_INITIALIZER \
94 RT_ComponentProperty_INITIALIZER\
115 char name[RT_MAX_FACTORY_NAME];
122 #define DDS_DiscoveryComponent_INITIALIZER \
125 NDDS_Discovery_Property_INITIALIZER\
129 #ifdef DOXYGEN_DOCUMENTATION_ONLY
132 struct DDS_DiscoveryComponentSeq {};
154 #define DDS_DISCOVERY_QOS_POLICY_DEFAULT { \
155 DDS_SEQUENCE_INITIALIZER(DDS_String),\
156 DDS_SEQUENCE_INITIALIZER(DDS_String),\
157 DDS_DiscoveryComponent_INITIALIZER\
171 #define DDS_USERTRAFFIC_QOS_POLICY_DEFAULT { \
172 DDS_SEQUENCE_INITIALIZER(DDS_String) \
213 #define DDS_DomainParticipantListener_INITIALIZER \
215 DDS_TopicListener_INITIALIZER, \
216 DDS_PublisherListener_INITIALIZER, \
217 DDS_SubscriberListener_INITIALIZER \
275 #define DDS_DomainParticipantQos_INITIALIZER \
277 DDS_ENTITY_FACTORY_QOS_POLICY_DEFAULT, \
278 DDS_DISCOVERY_QOS_POLICY_DEFAULT, \
279 DDS_DOMAIN_PARTICIPANT_RESOURCE_LIMITS_QOS_POLICY_DEFAULT,\
280 DDS_ENTITY_NAME_QOS_POLICY_DEFAULT, \
281 DDS_WIRE_PROTOCOL_QOS_POLICY_DEFAULT, \
282 DDS_TRANSPORT_QOS_POLICY_DEFAULT, \
283 DDS_USERTRAFFIC_QOS_POLICY_DEFAULT \
344 DDS_DomainParticipantFactoryQos_initialize(
351 DDS_DomainParticipantFactoryQos_finalize(
358 DDS_DomainParticipantFactoryQos_copy(
372 DDS_DomainParticipantFactoryQos_is_equal(
378 #define DDS_DomainParticipantFactoryQos_INITIALIZER \
380 DDS_ENTITY_FACTORY_QOS_POLICY_DEFAULT, \
381 DDS_SYSTEM_RESOURCE_LIMITS_QOS_POLICY_DEFAULT \
409 typedef void (*DDS_DomainParticipant_finalize_publisher_fn)(
DDS_Publisher *publisher);
412 typedef void (*DDS_DomainParticipant_finalize_subscriber_fn)(
DDS_Subscriber *subscriber);
415 typedef void (*DDS_DomainParticipant_finalize_topic_fn)(
DDS_Topic *topic);
419 typedef struct DDS_DomainParticipant_EntityFinalizer
421 DDS_DomainParticipant_finalize_publisher_fn finalize_publisher;
422 DDS_DomainParticipant_finalize_subscriber_fn finalize_subscriber;
423 DDS_DomainParticipant_finalize_topic_fn finalize_topic;
424 } DDS_DomainParticipant_EntityFinalizer_t;
428 #define DDS_DomainParticipant_EntityFinalizer_INITIALIZER \
433 #define DDS_DomainParticipant_as_entity(domainPtr) \
434 ((DDS_Entity*) domainPtr)
436 #ifdef DOXYGEN_DOCUMENTATION_ONLY
541 const char *topic_name,
542 const char *type_name,
561 const char *topic_name,
573 const char *topic_name);
587 DDSCDllExport DDS_DomainId_t
601 DDS_DomainParticipant_delete_contained_entities_w_finalizerI(
603 struct DDS_DomainParticipant_EntityFinalizer *finalizer);
617 #if INCLUDE_API_LOOKUP
619 DDS_DomainParticipant_get_discovered_participants(
621 struct DDS_InstanceHandleSeq *participant_handles);
626 #if INCLUDE_API_LOOKUP
628 DDS_DomainParticipant_get_discovered_participant_data(
685 DDS_DomainParticipant_get_listenerX(
691 DDSCDllExport
struct OSAPI_System*
696 DDSCDllExport OSAPI_Timer_T
703 const char *type_name,
711 const char *type_name);
739 #define DDS_TheParticipantFactory DDS_DomainParticipantFactory_get_instance()
778 DDS_DomainId_t domainId,
801 DDS_DomainId_t domainId);
823 DDSCDllExport RT_Registry_T*