RTI Connext DDS Micro  Version 2.4.9
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
disc_dpse_dpsediscovery.h
Go to the documentation of this file.
1 /*
2  * FILE: disc_dpse_discovery.h - DPSE API
3  *
4  * (c) Copyright 2011-2015 Real-Time Innovations,
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  * 09sep2008,tk Refactored
16  * 08aug2011,yy Copied the loopback string so that it could be freed later
17  * 04aug2011,yy Fixed 14066
18  * 09sep2008,rmw Created
19  */
20 /*ce
21  * \file
22  * \brief DPSE API Dynamic Participant/Static Endpoint Discovery Plugin.
23  * \details
24  * The Plugin APIs are used to configure and instantiate the RTI
25  * Connext Micro Dynamic Participant/Static Endpoint
26  * Discovery Plugin.
27  */
28 #ifndef disc_dpse_dpsediscovery_h
29 #define disc_dpse_dpsediscovery_h
30 
31 #ifndef disc_dpse_dll_h
33 #endif
34 #ifndef dds_c_discovery_plugin_h
36 #endif
37 
38 #ifdef __cplusplus
39 extern "C"
40 {
41 #endif
42 
44 
45 /*ce \dref_DPSE_DiscoveryPluginProperty_initialize
46 */
47 DISC_DPSEDllExport DDS_ReturnCode_t
49  struct DPSE_DiscoveryPluginProperty *dst);
50 
51 #ifdef __cplusplus
52 }
53 #endif
54 
55 /*e \dref_DPSE_DiscoveryPluginProperty
56 */
57 struct DDSCPPDllExport DPSE_DiscoveryPluginProperty
58 {
59  /*ci
60  * \brief Inherit from base-class
61  */
62  struct RT_ComponentFactoryProperty _parent;
63 
64  /*e \dref_DPSE_DiscoveryPluginProperty_participant_liveliness_assert_period
65  */
66  struct DDS_Duration_t participant_liveliness_assert_period;
67 
68  /*e \dref_DPSE_DiscoveryPluginProperty_participant_liveliness_lease_duration
69  */
70  struct DDS_Duration_t participant_liveliness_lease_duration;
71 
72  /*e \dref_DPSE_DiscoveryPluginProperty_initial_participant_announcements
73  */
75 
76  /*e \dref_DPSE_DiscoveryPluginProperty_initial_participant_announcement_period
77  */
78  struct DDS_Duration_t initial_participant_announcement_period;
79 
80  /*e \dref_DPSE_DiscoveryPluginProperty_max_participant_locators;
81  */
83 
84  /*e \dref_DPSE_DiscoveryPluginProperty_max_locators_per_discovered_participant;
85  */
87 
88 #ifdef RTI_CPP
89  public:
91  {
93  }
94 #endif
95 };
96 
97 #ifdef __cplusplus
98 extern "C"
99 {
100 #endif
101 
102 #define RTI_DPSEDISCOVERY_INTERFACE_ID \
103  RT_MKINTERFACEID(RT_COMPONENT_CLASS_DISCOVERY,\
104  RT_COMPONENT_INSTANCE_DISCOVERY_DPSE)
105 
106 /*e \dref_DPSE_DiscoveryPluginProperty_INITIALIZER
107  */
108 #define DPSE_DiscoveryPluginProperty_INITIALIZER \
109 { \
110  RT_ComponentFactoryProperty_INITIALIZER,\
111  {30,0}, \
112  {100,0}, \
113  5, \
114  {1,0}, \
115  DDS_LENGTH_AUTO,\
116  4 \
117 }
118 
119 /*ce \dref_DPSE_RemoteParticipant_assert
120  */
121 MUST_CHECK_RETURN DISC_DPSEDllExport DDS_ReturnCode_t
123  const char *rem_participant_name);
124 
125 /*ce \dref_DPSE_RemotePublication_assert
126  */
127 MUST_CHECK_RETURN DISC_DPSEDllExport DDS_ReturnCode_t
129  const char *const rem_participant_name,
130  const struct DDS_PublicationBuiltinTopicData *const data,
131  NDDS_TypePluginKeyKind key_kind);
132 
133 /*ce \dref_DPSE_RemoteSubscription_assert
134  */
135 MUST_CHECK_RETURN DISC_DPSEDllExport DDS_ReturnCode_t
137  const char *const rem_participant_name,
138  const struct DDS_SubscriptionBuiltinTopicData *const data,
139  NDDS_TypePluginKeyKind key_kind);
140 
141 /* -------------------------------------------------------------------------- */
142 /* Plugin factory
143  */
144 /*ce \dref_DPSE_DiscoveryFactory_get_interface
145  */
146 MUST_CHECK_RETURN DISC_DPSEDllExport struct RT_ComponentFactoryI*
148 
149 #ifdef __cplusplus
150 } /* extern "C" */
151 #endif
152 
153 #endif /* disc_dpse_dpsediscovery_h */

RTI Connext DDS Micro Version 2.4.9 Copyright © Thu Dec 15 2016 Real-Time Innovations, Inc