RTI Connext Micro  Version 2.4.1.0
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
dds_c_domain.h
Go to the documentation of this file.
1 /*
2  * FILE: dds_c_domain.h - DDS domain module definitions
3  *
4  * (c) Copyright, Real-Time Innovations, 2012-2014.
5  *
6  * All rights reserved.
7  *
8  * No duplications, whole or partial, manual or electronic, may be made
9  * without express written permission. Any such copies, or
10  * revisions thereof, must display this notice unaltered.
11  * This code contains trade secrets of Real-Time Innovations, Inc.
12  *
13  * Modification History
14  * --------------------
15  * 20sep2014,as Make support functions for QosPolicy types private and reduce public
16  * support functions for Qos types to initialize, finalize, copy only.
17  * 29apr2014,as MICRO-372 (Verocel PR#1528) Documented maximum length
18  * of DDS_DiscoveryComponent::name
19  * 19jul2013,as Added support for C++
20  * 29jun2012,tk Written
21  */
22 /*ce
23  * \file
24  * \brief DDS Domain Module definitions
25  */
26 /*e
27  @addtogroup DDSDomainModule Domain Module
28  @ingroup DDSCModule
29 
30  @brief Defines the \dds domain package
31  */
32 #ifndef dds_c_domain_h
33 #define dds_c_domain_h
34 
35 #ifndef NULL
36 #define NULL 0
37 #endif
38 #ifndef dds_c_dll_h
39 #include "dds_c/dds_c_dll.h"
40 #endif
41 #ifndef reda_string_h
42 #include "reda/reda_string.h"
43 #endif
44 #ifndef rt_rt_h
45 #include "rt/rt_rt.h"
46 #endif
47 #ifndef dds_c_infrastructure_h
49 #endif
50 #include "dds_c_sequence.h"
51 #ifndef dds_c_type_h
52 #include "dds_c/dds_c_type.h"
53 #endif
54 #ifndef dds_c_topic_h
55 #include "dds_c/dds_c_topic.h"
56 #endif
57 #ifndef dds_c_publication_h
59 #endif
60 #ifndef dds_c_subscription_h
62 #endif
63 
64 #ifdef __cplusplus
65 extern "C"
66 {
67 #endif
68 
69 /* ================================================================= */
70 /* Basic Types */
71 /* ================================================================= */
72 
73 /*e \dref_DomainId_t
74  */
75 typedef DDS_DOMAINID_TYPE_NATIVE DDS_DomainId_t;
76 
77 /* ----------------------------------------------------------------- */
78 /* DISCOVERY_X (eXtension QoS) */
79 /* ----------------------------------------------------------------- */
80 /*e \dref_DiscoveryQosGroupDocs
81  */
82 
83 /*e \dref_DiscoveryComponentProperty
84  */
86 {
87  struct RT_ComponentProperty _parent;
88 };
89 
90 /*i \dref_DiscoveryComponentProperty_INITIALIZER
91  */
92 #define NDDS_Discovery_Property_INITIALIZER \
93 {\
94  RT_ComponentProperty_INITIALIZER\
95 }
96 
97 /*e \dref_DISCOVERY_QOS_POLICY_NAME
98  */
99 extern DDSCDllVariable const char *const DDS_DISCOVERY_QOS_POLICY_NAME;
100 
101 /*e \dref_DiscoveryComponent
102  */
104 {
105  /*e \dref_DiscoveryComponent_name
106  *
107  * This attribute specifies the name of the plug-in to be
108  * used for DDS Discovery. The maximum length of the name
109  * is RT_MAX_FACTORY_NAME.
110  * The value specified in this attribute shall include the
111  * null string terminator only if its length is less than
112  * RT_MAX_FACTORY_NAME.
113  *
114  */
115  char name[RT_MAX_FACTORY_NAME];
116 
117  struct NDDS_Discovery_Property property;
118 };
119 
120 /*e \dref_DiscoveryComponent_INITIALIZER
121  */
122 #define DDS_DiscoveryComponent_INITIALIZER \
123 {\
124  {0},\
125  NDDS_Discovery_Property_INITIALIZER\
126 }
127 
128 DDS_SEQUENCE(DDS_DiscoveryComponentSeq, struct DDS_DiscoveryComponent)
129 #ifdef DOXYGEN_DOCUMENTATION_ONLY
130 /*i \dref_DiscoveryComponentSeq
131  */
132 struct DDS_DiscoveryComponentSeq {};
133 #endif
134 
135 /*e \dref_DiscoveryQosPolicy
136  */
138 {
139  /*e \dref_DiscoveryQosPolicy_initial_peers
140  */
141  struct DDS_StringSeq initial_peers;
142 
143  /*e \dref_DiscoveryQosPolicy_enabled_transports
144  */
145  struct DDS_StringSeq enabled_transports;
146 
147  /*i \dref_DiscoveryQosPolicy_discovery
148  */
149  struct DDS_DiscoveryComponent discovery;
150 };
151 
152 /*i \dref_DiscoveryQosPolicy_DEFAULT
153  */
154 #define DDS_DISCOVERY_QOS_POLICY_DEFAULT { \
155  DDS_SEQUENCE_INITIALIZER(DDS_String),\
156  DDS_SEQUENCE_INITIALIZER(DDS_String),\
157  DDS_DiscoveryComponent_INITIALIZER\
158 }
159 
160 /*e \dref_UserTrafficQosPolicy
161  */
163 {
164  /*e \dref_UserTrafficQosPolicy_enabled_transports
165  */
166  struct DDS_StringSeq enabled_transports;
167 };
168 
169 /*i \dref_UserTrafficQosPolicy_DEFAULT
170  */
171 #define DDS_USERTRAFFIC_QOS_POLICY_DEFAULT { \
172  DDS_SEQUENCE_INITIALIZER(DDS_String) \
173 }
174 
175 /* ================================================================= */
176 /* Listeners */
177 /* ================================================================= */
178 
180 struct DDS_PublisherQos;
181 struct DDS_SubscriberQos;
182 struct DDS_DataReaderQos;
183 struct DDS_DataWriterQos;
184 struct DDS_TopicQos;
186 struct DDS_PublisherListener;
190 struct DDS_TopicListener;
191 
192 /* ----------------------------------------------------------------- */
193 
194 /*ce \dref_DomainParticipantListener
195  */
197 {
198  /*ce \dref_DomainParticipantListener_as_topiclistener
199  */
201 
202  /*ce \dref_DomainParticipantListener_as_publisherlistener
203  */
205 
206  /*ce \dref_DomainParticipantListener_as_subscriberlistener
207  */
209 };
210 
211 /*ce \dref_DomainParticipantListener_INITIALIZER
212  */
213 #define DDS_DomainParticipantListener_INITIALIZER \
214 {\
215  DDS_TopicListener_INITIALIZER, \
216  DDS_PublisherListener_INITIALIZER, \
217  DDS_SubscriberListener_INITIALIZER \
218 }
219 
220 
221 #ifdef __cplusplus
222 } /* extern "C" */
223 #endif
224 
225 /* ================================================================= */
226 /* QoS */
227 /* ================================================================= */
228 
229 /* ====================== */
230 /* DomainParticipantQos */
231 /* ====================== */
232 
233 /*e \dref_DomainParticipantQos
234  */
236 {
237  /*e \dref_DomainParticipantQos_entity_factory
238  */
240 
241  /*e \dref_DomainParticipantQos_discovery
242  */
244 
245  /*e \dref_DomainParticipantQos_resource_limits
246  */
248 
249  /*e \dref_DomainParticipantQos_participant_name
250  */
252 
253  /*e \dref_DomainParticipantQos_wire_protocol
254  */
256 
257  /*e \dref_DomainParticipantQos_transports
258  */
260 
261  /*e \dref_DomainParticipantQos_user_traffic
262  */
264 
265  DDSC_CPP_SUPPORT_METHODS_EXTENDED(DDS_DomainParticipantQos)
266 };
267 
268 #ifdef __cplusplus
269 extern "C"
270 {
271 #endif
272 
273 /*ce \dref_DomainParticipantQos_INITIALIZER
274  */
275 #define DDS_DomainParticipantQos_INITIALIZER \
276 { \
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 \
284 }
285 
286 
287 /*ce \dref_DomainParticipantQos_initialize
288  */
289 /* #if INCLUDE_API_QOS */
290 DDSCDllExport DDS_ReturnCode_t
292 
293 /*ce \dref_DomainParticipantQos_copy
294  */
295 /* #if INCLUDE_API_QOS */
296 DDSCDllExport DDS_ReturnCode_t
298  const struct DDS_DomainParticipantQos *source);
299 
300 /*i \dref_DomainParticipantQos_is_equal
301  */
302 MUST_CHECK_RETURN DDSCDllExport DDS_Boolean
303 DDS_DomainParticipantQos_is_equal(const struct DDS_DomainParticipantQos *left,
304  const struct DDS_DomainParticipantQos *right);
305 
306 #ifndef RTI_CERT
307 /*ce \dref_DomainParticipantQos_finalize
308  */
309 DDSCDllExport DDS_ReturnCode_t
311 #endif /* !RTI_CERT */
312 
313 #ifdef __cplusplus
314 } /* extern "C" */
315 #endif
316 
317 /* ============================== */
318 /* DomainParticipantFactoryQos */
319 /* ============================== */
320 
321 /*e \dref_DomainParticipantFactoryQos
322  */
324 {
325  /*e \dref_DomainParticipantFactoryQos_entity_factory
326  */
328 
329  /*e \dref_DomainParticipantFactoryQos_resource_limits
330  */
332 
333  DDSC_CPP_SUPPORT_METHODS_EXTENDED(DDS_DomainParticipantFactoryQos)
334 };
335 
336 #ifdef __cplusplus
337 extern "C"
338 {
339 #endif
340 
341 /* \dref_DomainParticipantFactoryQos_initialize
342  */
343 DDSCDllExport DDS_ReturnCode_t
344 DDS_DomainParticipantFactoryQos_initialize(
345  struct DDS_DomainParticipantFactoryQos* self);
346 
347 #ifndef RTI_CERT
348 /* \dref_DomainParticipantFactoryQos_finalize
349  */
350 DDSCDllExport DDS_ReturnCode_t
351 DDS_DomainParticipantFactoryQos_finalize(
352  struct DDS_DomainParticipantFactoryQos* self);
353 #endif /*RTI_CERT*/
354 
355 /* \dref_DomainParticipantFactoryQos_copy
356  */
357 DDSCDllExport DDS_ReturnCode_t
358 DDS_DomainParticipantFactoryQos_copy(
359  struct DDS_DomainParticipantFactoryQos* self,
360  const struct DDS_DomainParticipantFactoryQos* from);
361 
362 /*ci
363  * \brief Test if two DDS_DomainParticipantFactoryQos are equal
364  *
365  * \param[in] left The left side of the comparison
366  * \param[in] right The right side of the comparison
367  *
368  * \return DDS_BOOLEAN_TRUE if left = right,
369  * DDS_BOOLEAN_FALSE if left != right
370  */
371 MUST_CHECK_RETURN DDSCDllExport DDS_Boolean
372 DDS_DomainParticipantFactoryQos_is_equal(
373  const struct DDS_DomainParticipantFactoryQos *left,
374  const struct DDS_DomainParticipantFactoryQos *right);
375 
376 /*ce \dref_DomainParticipantFactoryQos_INITIALIZER
377  */
378 #define DDS_DomainParticipantFactoryQos_INITIALIZER \
379 {\
380  DDS_ENTITY_FACTORY_QOS_POLICY_DEFAULT, \
381  DDS_SYSTEM_RESOURCE_LIMITS_QOS_POLICY_DEFAULT \
382 }
383 
384 
385 /* ================================================================= */
386 /* DomainParticipant */
387 /* ================================================================= */
388 
389 /*e \dref_TOPIC_QOS_DEFAULT
390  */
391 extern DDSCDllVariable const struct DDS_TopicQos
393 
394 /*e \dref_PUBLISHER_QOS_DEFAULT
395  */
396 extern DDSCDllVariable const struct DDS_PublisherQos
398 
399 /*e \dref_SUBSCRIBER_QOS_DEFAULT
400  */
401 extern DDSCDllVariable const struct DDS_SubscriberQos
403 
404 /* ----------------------------------------------------------------- */
405 /* LANGUAGE-DEPENDENDENT WRAPPER-ENTITIES FINALIZERS */
406 /* ----------------------------------------------------------------- */
407 /*i \dref_DomainParticipant_finalize_publisher_fn
408  */
409 typedef void (*DDS_DomainParticipant_finalize_publisher_fn)(DDS_Publisher *publisher);
410 /*i \dref_DomainParticipant_finalize_subscriber_fn
411  */
412 typedef void (*DDS_DomainParticipant_finalize_subscriber_fn)(DDS_Subscriber *subscriber);
413 /*i \dref_DomainParticipant_finalize_topic_fn
414  */
415 typedef void (*DDS_DomainParticipant_finalize_topic_fn)(DDS_Topic *topic);
416 
417 /*i \dref_DomainParticipant_EntityFinalizer
418  */
419 typedef struct DDS_DomainParticipant_EntityFinalizer
420 {
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;
425 
426 /*i \dref_DomainParticipant_EntityFinalizer_INITIALIZER
427  */
428 #define DDS_DomainParticipant_EntityFinalizer_INITIALIZER \
429  { NULL, NULL, NULL}
430 
431 /* ----------------------------------------------------------------- */
432 
433 #define DDS_DomainParticipant_as_entity(domainPtr) \
434  ((DDS_Entity*) domainPtr)
435 
436 #ifdef DOXYGEN_DOCUMENTATION_ONLY
437 
438 /*ce \dref_DomainParticipant_as_entity
439  */
441 
442 #endif /*DOXYGEN_DOCUMENTATION_ONLY */
443 
444 /* ================================== */
445 /* Get and Set Default QoS routines */
446 /* ================================== */
447 
448 /*ce \dref_DomainParticipant_get_default_publisher_qos
449  */
450 /* #if INCLUDE_API_QOS */
451 DDSCDllExport DDS_ReturnCode_t
453  DDS_DomainParticipant *self,
454  struct DDS_PublisherQos *qos);
455 
456 /*ce \dref_DomainParticipant_set_default_publisher_qos
457  */
458 /* #if INCLUDE_API_QOS */
459 DDSCDllExport DDS_ReturnCode_t
461  DDS_DomainParticipant *self,
462  const struct DDS_PublisherQos *qos);
463 
464 /*ce \dref_DomainParticipant_get_default_subscriber_qos
465  */
466 /* #if INCLUDE_API_QOS */
467 DDSCDllExport DDS_ReturnCode_t
469  DDS_DomainParticipant *self,
470  struct DDS_SubscriberQos *qos);
471 
472 /*ce \dref_DomainParticipant_set_default_subscriber_qos
473  */
474 /* #if INCLUDE_API_QOS */
475 DDSCDllExport DDS_ReturnCode_t
477  DDS_DomainParticipant *self,
478  const struct DDS_SubscriberQos *qos);
479 
480 /*ce \dref_DomainParticipant_get_default_topic_qos
481  */
482 /* #if INCLUDE_API_QOS */
483 DDSCDllExport DDS_ReturnCode_t
485  DDS_DomainParticipant *self,
486  struct DDS_TopicQos *qos);
487 
488 /*ce \dref_DomainParticipant_set_default_topic_qos
489  */
490 /* #if INCLUDE_API_QOS */
491 DDSCDllExport DDS_ReturnCode_t
493  DDS_DomainParticipant *self,
494  const struct DDS_TopicQos *qos);
495 
496 /* ============================ */
497 /* Create and Delete routines */
498 /* ============================ */
499 
500 /*ce \dref_DomainParticipant_create_publisher
501  */
502 DDSCDllExport DDS_Publisher*
504  DDS_DomainParticipant * self,
505  const struct DDS_PublisherQos *qos,
506  const struct DDS_PublisherListener *listener,
507  DDS_StatusMask mask);
508 
509 #ifndef RTI_CERT
510 /*ce \dref_DomainParticipant_delete_publisher
511  */
512 DDSCDllExport DDS_ReturnCode_t
514  DDS_DomainParticipant *self,
515  DDS_Publisher *p);
516 #endif
517 
518 /*ce \dref_DomainParticipant_create_subscriber
519  */
520 DDSCDllExport DDS_Subscriber*
522  DDS_DomainParticipant *self,
523  const struct DDS_SubscriberQos *qos,
524  const struct DDS_SubscriberListener *listener,
525  DDS_StatusMask mask);
526 
527 #ifndef RTI_CERT
528 /*ce \dref_DomainParticipant_delete_subscriber
529  */
530 DDSCDllExport DDS_ReturnCode_t
532  DDS_DomainParticipant *self,
533  DDS_Subscriber * s);
534 #endif
535 
536 /*ce \dref_DomainParticipant_create_topic
537  */
538 DDSCDllExport DDS_Topic*
540  DDS_DomainParticipant * self,
541  const char *topic_name,
542  const char *type_name,
543  const struct DDS_TopicQos *qos,
544  const struct DDS_TopicListener *listener,
545  DDS_StatusMask mask);
546 
547 #ifndef RTI_CERT
548 /*ce \dref_DomainParticipant_delete_topic
549  */
550 DDSCDllExport DDS_ReturnCode_t
552  DDS_DomainParticipant * self,
553  DDS_Topic * topic);
554 #endif
555 
556 /*ce \dref_DomainParticipant_find_topic
557  */
558 /* #if INCLUDE_API_LOOKUP */
559 DDSCDllExport DDS_Topic*
561  const char *topic_name,
562  const struct DDS_Duration_t *timeout);
563 
564 /* ================ */
565 /* Lookup routine */
566 /* ================ */
567 
568 /*ce \dref_DomainParticipant_lookup_topicdescription
569  */
570 DDSCDllExport DDS_TopicDescription*
572  DDS_DomainParticipant *self,
573  const char *topic_name);
574 
575 
576 /* ================ */
577 /* Misc. routines */
578 /* ================ */
579 
580 /*ce \dref_DomainParticipant_add_peer
581  */
582 DDSCDllExport DDS_ReturnCode_t
584 
585 /*ce \dref_DomainParticipant_get_domain_id
586  */
587 DDSCDllExport DDS_DomainId_t
589 
590 #ifndef RTI_CERT
591 /*ce \dref_DomainParticipant_delete_contained_entities
592  */
593 DDSCDllExport DDS_ReturnCode_t
595 #endif
596 
597 #ifndef RTI_CERT
598 /*ci \dref_DomainParticipant_delete_contained_entities_w_finalizerI
599  */
600 DDSCDllExport DDS_ReturnCode_t
601 DDS_DomainParticipant_delete_contained_entities_w_finalizerI(
602  DDS_DomainParticipant *self,
603  struct DDS_DomainParticipant_EntityFinalizer *finalizer);
604 #endif
605 
606 /*ce \dref_DomainParticipant_get_current_time
607  */
608 DDSCDllExport DDS_ReturnCode_t
610  DDS_DomainParticipant * self,
611  struct DDS_Time_t *current_time);
612 
614 
615 /*ce \dref_DomainParticipant_get_discovered_participants
616  */
617 #if INCLUDE_API_LOOKUP
618 DDSCDllExport DDS_ReturnCode_t
619 DDS_DomainParticipant_get_discovered_participants(
620  DDS_DomainParticipant *self,
621  struct DDS_InstanceHandleSeq *participant_handles);
622 #endif /* INCLUDE_API_LOOKUP */
623 
624 /*ce \dref_DomainParticipant_get_discovered_participant_data
625  */
626 #if INCLUDE_API_LOOKUP
627 DDSCDllExport DDS_ReturnCode_t
628 DDS_DomainParticipant_get_discovered_participant_data(
629  DDS_DomainParticipant * self,
630  struct DDS_ParticipantBuiltinTopicData *participant_data,
631  const DDS_InstanceHandle_t * participant_handle);
632 #endif /* INCLUDE_API_LOOKUP */
633 
634 /* ================================================================= */
635 /* From DDS_Entity */
636 /* ================================================================= */
637 
638 /* ========================== */
639 /* Get and Set QoS routines */
640 /* ========================== */
641 
642 /* #if INCLUDE_API_QOS */
643 
644 /*ce \dref_DomainParticipant_set_qos
645  */
646 DDSCDllExport DDS_ReturnCode_t
648  DDS_DomainParticipant *self,
649  const struct DDS_DomainParticipantQos *qos);
650 
651 /*ce \dref_DomainParticipant_get_qos
652  */
653 DDSCDllExport DDS_ReturnCode_t
655  DDS_DomainParticipant *self,
656  struct DDS_DomainParticipantQos *qos);
657 
658 /*ci \dref_DomainParticipant_get_qos_ref
659  */
660 DDSCDllExport struct DDS_DomainParticipantQos*
661 DDS_DomainParticipant_get_qos_ref(DDS_DomainParticipant * self);
662 
663 /* =============================== */
664 /* Get and Set Listener routines */
665 /* ============================== */
666 
667 /*ce \dref_DomainParticipant_set_listener
668  */
669 /* #ifdef INCLUDE_API_LISTENER */
670 DDSCDllExport DDS_ReturnCode_t
672  DDS_DomainParticipant * self,
673  const struct DDS_DomainParticipantListener *l,
674  DDS_StatusMask mask);
675 
676 /*ce \dref_DomainParticipant_get_listener
677  */
678 /* #ifdef INCLUDE_API_LISTENER */
679 DDSCDllExport struct DDS_DomainParticipantListener
681 
682 /*i \dref_DomainParticipant_get_listenerX
683  */
684 DDSCDllExport DDS_ReturnCode_t
685 DDS_DomainParticipant_get_listenerX(
686  DDS_DomainParticipant *self,
687  struct DDS_DomainParticipantListener *listener);
688 
689 /*i \dref_DomainParticipant_get_clock
690  */
691 DDSCDllExport struct OSAPI_System*
692 DDS_DomainParticipant_get_clock(DDS_DomainParticipant *const self);
693 
694 /*i \dref_DomainParticipant_get_timer
695  */
696 DDSCDllExport OSAPI_Timer_T
697 DDS_DomainParticipant_get_timer(DDS_DomainParticipant *const self);
698 
699 /*e \dref_DomainParticipant_register_type
700  */
701 DDSCDllExport DDS_ReturnCode_t
703  const char *type_name,
704  struct NDDS_Type_Plugin *plugin);
705 
706 #ifndef RTI_CERT
707 /*e \dref_DomainParticipant_unregister_type
708  */
709 DDSCDllExport struct NDDS_Type_Plugin*
711  const char *type_name);
712 #endif
713 
714 /* ================================================================= */
715 /* Factory */
716 /* ================================================================= */
717 
718 /*e \dref_PARTICIPANT_QOS_DEFAULT
719  */
720 extern DDSCDllVariable const struct DDS_DomainParticipantFactoryQos
722 
723 /*e \dref_PARTICIPANT_QOS_DEFAULT
724  */
725 extern DDSCDllVariable const struct DDS_DomainParticipantQos
727 
728 /*ce \dref_DomainParticipantFactory
729  */
730 typedef struct DDS_DomainParticipantFactoryImpl DDS_DomainParticipantFactory;
731 
732 /*ce \dref_DomainParticipantFactory_get_instance
733  */
734 DDSCDllExport DDS_DomainParticipantFactory*
736 
737 /*ce \dref_DomainParticipantFactory_TheParticipantFactory
738  */
739 #define DDS_TheParticipantFactory DDS_DomainParticipantFactory_get_instance()
740 
741 #ifndef RTI_CERT
742 /*ce \dref_DomainParticipantFactory_finalize_instance
743  */
744 DDSCDllExport DDS_ReturnCode_t
746 #endif
747 
748 /* ================================= */
749 /* Set and Get Default QoS routines */
750 /* ================================= */
751 
752 /* #if INCLUDE_API_QOS */
753 
754 /*ce \dref_DomainParticipantFactory_set_default_participant_qos
755  */
756 DDSCDllExport DDS_ReturnCode_t
759  const struct DDS_DomainParticipantQos *qos);
760 
761 /* #if INCLUDE_API_QOS */
762 /*ce \dref_DomainParticipantFactory_get_default_participant_qos
763  */
764 DDSCDllExport DDS_ReturnCode_t
767  struct DDS_DomainParticipantQos *qos);
768 
769 /* =========================== */
770 /* Create and Delete routines */
771 /* =========================== */
772 
773 /*ce \dref_DomainParticipantFactory_create_participant
774  */
775 DDSCDllExport DDS_DomainParticipant*
778  DDS_DomainId_t domainId,
779  const struct DDS_DomainParticipantQos *qos,
780  const struct DDS_DomainParticipantListener *listener,
781  DDS_StatusMask mask);
782 
783 #ifndef RTI_CERT
784 /*ce \dref_DomainParticipantFactory_delete_participant
785  */
786 DDSCDllExport DDS_ReturnCode_t
789  DDS_DomainParticipant * a_participant);
790 #endif
791 
792 /* =============== */
793 /* Lookup routine */
794 /* =============== */
795 
796 /*ce \dref_DomainParticipantFactory_lookup_participant
797  */
798 DDSCDllExport DDS_DomainParticipant*
801  DDS_DomainId_t domainId);
802 
803 /* ========================= */
804 /* Get and Set Qos routines */
805 /* ========================= */
806 
807 /*ce \dref_DomainParticipantFactory_get_qos
808  */
809 DDSCDllExport DDS_ReturnCode_t
812  struct DDS_DomainParticipantFactoryQos *qos);
813 
814 /*ce \dref_DomainParticipantFactory_set_qos
815  */
816 DDSCDllExport DDS_ReturnCode_t
819  const struct DDS_DomainParticipantFactoryQos *qos);
820 
821 /*ce \dref_DomainParticipantFactory_get_registry
822  */
823 DDSCDllExport RT_Registry_T*
825 
826 #ifdef __cplusplus
827 } /* extern "C" */
828 #endif
829 
830 
831 #endif /* dds_c_domain_h */

RTI Connext Micro Version 2.4.1.0 Copyright © Thu Nov 20 2014 Real-Time Innovations, Inc