RTI Routing Service Version 7.7.0
routingservice_infrastructure.h
Go to the documentation of this file.
1/*
2 * (c) Copyright, Real-Time Innovations, 2002-2024.
3 * All rights reserved.
4 *
5 * No duplications, whole or partial, manual or electronic, may be made
6 * without express written permission. Any such copies, or
7 * revisions thereof, must display this notice unaltered.
8 * This code contains trade secrets of Real-Time Innovations, Inc.
9 */
10
11#ifndef routingservice_infrastructure_h
12#define routingservice_infrastructure_h
13
14#include "routingservice/routingservice_dll.h"
15#include "dds_c/dds_c_infrastructure.h"
16
17#ifdef __cplusplus
18 extern "C" {
19#endif
20
21/*e \file
22 @brief RTI Routing Service Infrastructure
23*/
24
25/*e
26 @ingroup RTI_RoutingServiceInfrastructureModule
27
28 @brief Utility macro that can be used to export symbols in a shared library
29 on Windows platform.
30 For non-windows, the definion of this macro is empty.
31*/
32
33#if (defined(RTI_WIN32) || defined(RTI_INTIME))
34 #undef RTI_USER_DLL_EXPORT
35 #define RTI_USER_DLL_EXPORT __declspec(dllexport)
36#elif defined(RTI_VISIBILITY_HIDDEN)
37 #undef RTI_USER_DLL_EXPORT
38 #define RTI_USER_DLL_EXPORT __attribute__((visibility("default")))
39#else
40 #define RTI_USER_DLL_EXPORT
41#endif
42
43#define RTI_ROUTING_SERVICE_VERSION {7,7,0,0}
44
45/*e \ingroup RTI_RoutingServiceInfrastructureModule
46 * @brief This can be used by C client and example code to avoid unused
47 * parameter warnings in the compiler.
48 * This is not strictly necessary in C++, where just removing the parameter name
49 * should yield the same result.
50 */
51#define RTI_UNUSED_PARAMETER(x) (void)(x)
52
53/*****************************************************************************/
54/* Properties */
55/*****************************************************************************/
56
57/*e \ingroup RTI_RoutingServiceInfrastructureModule
58 *
59 * @brief Configuration property.
60 *
61 * A property is a name/value pair.
62 *
63 */
65 /*e @brief Property name */
66 char * name;
67 /*e @brief Property value */
68 void * value;
69};
70
71/*e \ingroup RTI_RoutingServiceInfrastructureModule
72 *
73 * @brief Set of configuration properties.
74 *
75 * Configuration properties for adapters and transformations.
76 */
78 /*e @brief Array of configuration properties. */
80 /*e @brief Number of properties in the array. */
81 int count;
82 /*e @brief A non-zero value indicates that all the values of the
83 properties are strings (char *) */
84 DDS_Boolean string_values;
85};
86
87/*e \ingroup RTI_RoutingServiceInfrastructureModule
88 *
89 * @brief Searches for a property given its name.
90 *
91 * @param_self
92 * @param name \rs_st_in Property name. Cannot be NULL.
93 *
94 * @return On success, the function returns the value of the first property
95 * with the given name. Otherwise, the function returns NULL.
96 */
97extern ROUTERDllExport
99 const struct RTI_RoutingServiceProperties * self,
100 const char * name);
101
102extern ROUTERDllExport
103const char * RTI_RoutingServiceProperties_lookup_property_with_prefix(
104 const struct RTI_RoutingServiceProperties * self,
105 const char *prefix,
106 const char *name);
107
108extern ROUTERDllExport
109DDS_Boolean RTI_RoutingServiceProperties_add(
110 struct RTI_RoutingServiceProperties *self,
111 const char *name,
112 const char *value);
113
114extern ROUTERDllExport
115DDS_Boolean RTI_RoutingServiceProperties_assert(
116 struct RTI_RoutingServiceProperties *self,
117 const char *name,
118 const char *value);
119
120extern ROUTERDllExport
121DDS_Boolean RTI_RoutingServiceProperties_equals(
122 const struct RTI_RoutingServiceProperties *left,
123 const struct RTI_RoutingServiceProperties *right);
124
125extern ROUTERDllExport
126const struct RTI_RoutingServiceProperties *
127RTI_RoutingServiceProperties_copy(
128 struct RTI_RoutingServiceProperties *self,
129 const struct RTI_RoutingServiceProperties *other);
130
131extern ROUTERDllExport
132void RTI_RoutingServiceProperties_finalize(
133 struct RTI_RoutingServiceProperties *self);
134
135extern ROUTERDllExport
136DDS_Boolean RTI_RoutingServiceProperties_initialize(
137 struct RTI_RoutingServiceProperties *self);
138
139/*****************************************************************************/
140/* Environment */
141/*****************************************************************************/
142
143/*e \defgroup RTI_RoutingServiceErrorCodeModule Standard Error Codes
144 * \ingroup RTI_RoutingServiceInfrastructureModule
145 * @brief Standard error codes.
146 */
147#define RTI_ROUTING_SERVICE_OK 0
148
149/*e \ingroup RTI_RoutingServiceErrorCodeModule
150 *
151 * @brief Generic, unspecified error.
152 * @hideinitializer
153 */
154#define RTI_ROUTING_SERVICE_ERROR 1
155
156/*e \ingroup RTI_RoutingServiceErrorCodeModule
157 *
158 * @brief Fatal error. It will cause the routing service to shut down.
159 * @hideinitializer
160 */
161#define RTI_ROUTING_SERVICE_FATAL_ERROR 2
162
163/*e \ingroup RTI_RoutingServiceInfrastructureModule
164 * @brief Maximum length of an error message.
165 *
166 * Error messages longer than this value are truncated.
167 */
168#define RTI_ROUTING_SERVICE_ERROR_MAX_LENGTH 1024
169
170struct RTI_RoutingServiceEnvironmentImpl;
171
172/*e \ingroup RTI_RoutingServiceInfrastructureModule
173 *
174 * @brief The environment permits the return of error information in the \product API and
175 * information retreival (version and verbosity).
176 *
177 * This is the last parameter of each operation.
178 *
179 * \see \ref RTI_RoutingServiceEnvironment_set_error
180 * \see \ref RTI_RoutingServiceEnvironment_get_verbosity
181 *
182 */
183typedef struct RTI_RoutingServiceEnvironmentImpl RTI_RoutingServiceEnvironment;
184
185/*e \ingroup RTI_RoutingServiceInfrastructureModule
186 *
187 * @brief Represents the version of a plugin or \product itself
188 *
189 */
191 /*e
192 * @brief Major version number
193 */
194 int major;
195 /*e
196 * @brief Minor version number
197 */
198 int minor;
199 /*e
200 * @brief Release version number
201 */
203 /*e
204 * @brief Revision of a release
205 */
207};
208
209/*e \ingroup RTI_RoutingServiceInfrastructureModule
210 *
211 * @brief Verbosity used by Routing Service
212 *
213 */
214typedef enum {
215 /*e
216 * No logging (-verbosity 0)
217 */
219 /*e
220 * Exceptions (-verbosity 1)
221 */
223 /*e
224 * Warnings (-verbosity 2)
225 */
227 /*e
228 * Information (-verbosity 3)
229 */
231 /*e
232 * Debug information (-verbosity 5 and 6)
233 */
236
237/*e \ingroup RTI_RoutingServiceInfrastructureModule
238 *
239 * @brief Assigns an error into the environment.
240 *
241 * Routing Service will consider that a function call failed when an error has been
242 * set into the environment
243 *
244 * @param_self
245 * @param overwrite \rs_st_in If the environment already contains an error, setting
246 * this parameter to DDS_BOOLEAN_TRUE will overwrite it.
247 * @param error_code \rs_st_in One of the \ref RTI_RoutingServiceErrorCodeModule.
248 * @param native_error_code \rs_st_in Native error code (specific to the transformation or
249 * adapter plugin).
250 * @param error_format \rs_st_in String that contains the error text.
251 * It can optionally contain format tags that are substituted by the values
252 * specified in subsequent argument(s). Cannot be NULL.
253 * The format tags are the same tags used by the function printf in the ANSI C standard.
254 *
255 * @see \ref RTI_RoutingServiceEnvironment_set_error
256 */
259 DDS_Boolean overwrite,
260 int error_code,
261 int native_error_code,
262 const char *error_format,
263 ...);
264
265/*e \ingroup RTI_RoutingServiceInfrastructureModule
266 *
267 * @brief Assigns an error into the environment.
268 *
269 * Routing Service will consider that a function call failed when an error has been
270 * set into the environment
271 *
272 * This function sets the error code to \ref RTI_ROUTING_SERVICE_ERROR and the
273 * native error code to 0.
274 *
275 * If the environment already contains an error, the error is not overwritten.
276 *
277 * @param_self
278 * @param error_format \rs_st_in String that contains the error text.
279 * It can optionally contain format tags that are substituted by the values
280 * specified in subsequent argument(s). Cannot be NULL.
281 * The format tags are the same tags used by the function printf in the ANSI C standard.
282 *
283 * @see \ref RTI_RoutingServiceEnvironment_set_error_w_params
284 */
285extern ROUTERDllExport void RTI_RoutingServiceEnvironment_set_error(
287 const char *error_format,
288 ...);
289
290/*e \ingroup RTI_RoutingServiceInfrastructureModule
291 *
292 * @brief Assigns a fatal error into the environment.
293 *
294 * Routing Service will consider that a function call failed when an error has been
295 * set into the environment. Additionally, a fatal error will cause the routing
296 * service to call the shutdown hook.
297 *
298 * This function sets the error code to \ref RTI_ROUTING_SERVICE_FATAL_ERROR and the
299 * native error code to 0. Any previous error in the environment will be overwritten.
300 *
301 * @param_self
302 * @param error_format \rs_st_in String that contains the error text.
303 * It can optionally contain format tags that are substituted by the values
304 * specified in subsequent argument(s). Cannot be NULL.
305 * The format tags are the same tags used by the function printf in the ANSI C standard.
306 *
307 * @see \ref RTI_RoutingServiceEnvironment_set_error_w_params
308 */
311 const char *error_format,
312 ...);
313
314/*e \ingroup RTI_RoutingServiceInfrastructureModule
315 *
316 * @brief Clears an error (if any) set in this environment
317 *
318 * @param_self
319 */
322
323/*e \ingroup RTI_RoutingServiceInfrastructureModule
324 *
325 * @brief Retrieves the verbosity that Routing Service is using
326 *
327 * @param_self
328 * @return The verbosity
329 */
330extern ROUTERDllExport RTI_RoutingServiceVerbosity
333
334/*e \ingroup RTI_RoutingServiceInfrastructureModule
335 *
336 * @brief Checks whether an error has been set in this environment
337 *
338 * @param_self
339 *
340 * @return A value different than zero if true
341 */
342extern ROUTERDllExport DDS_Boolean RTI_RoutingServiceEnvironment_error_occurred(
344
345/*e \ingroup RTI_RoutingServiceInfrastructureModule
346 *
347 * @brief Returns the error message this environment contains
348 *
349 * @param_self
350 *
351 * @return The error message or NULL if no error is set
352 */
353extern ROUTERDllExport const char *
356
357/*i \ingroup RTI_RoutingServiceInfrastructureModule
358 *
359 * @brief Returns the underlying native code associated to the last error
360 * this environment contains.
361 *
362 * The value is specific to the plug-in implementation that sets the native
363 * code with RTI_RoutingServiceEnvironment_set_error_w_params.
364 *
365 * @param_self
366 *
367 * @return The native error code.
368 */
369extern ROUTERDllExport int RTI_RoutingServiceEnvironment_get_native_code(
371
372extern ROUTERDllExport
373int RTI_RoutingServiceVersion_compare(
374 const struct RTI_RoutingServiceVersion *left,
375 const struct RTI_RoutingServiceVersion *right);
376
377/*****************************************************************************/
378/* Type information */
379/*****************************************************************************/
380
381/*e
382 * \dref_DYNAMIC_TYPE_REPRESENTATION
383 */
384#define RTI_ROUTING_SERVICE_TYPE_REPRESENTATION_DYNAMIC_TYPE 0
385
386/*e
387 * \dref_XML_TYPE_REPRESENTATION
388 */
389#define RTI_ROUTING_SERVICE_TYPE_REPRESENTATION_XML 1
390
391/*e
392 * \dref_JAVA_OBJECT_TYPE_REPRESENTATION
393 */
394#define RTI_ROUTING_SERVICE_TYPE_REPRESENTATION_JAVA_OBJECT 2
395
396#define RTI_ROUTING_SERVICE_TYPE_REPRESENTATION_FIRST_CUSTOM_REPRESENTATION 100
397
398/*e
399 * \dref_DYNAMIC_DATA_REPRESENTATION
400 */
401#define RTI_ROUTING_SERVICE_DATA_REPRESENTATION_DYNAMIC_DATA 0
402
403/*e
404 * \dref_XML_DATA_REPRESENTATION
405 */
406#define RTI_ROUTING_SERVICE_DATA_REPRESENTATION_XML 1
407
408/*e
409 * \dref_JAVA_OBJECT_DATA_REPRESENTATION
410 */
411#define RTI_ROUTING_SERVICE_DATA_REPRESENTATION_JAVA_OBJECT 2
412
413#define RTI_ROUTING_SERVICE_DATA_REPRESENTATION_FIRST_CUSTOM_REPRESENTATION 100
414
415/*e \ingroup RTI_RoutingServiceInfrastructureModule
416 * @brief Type representation kind.
417 *
418 * The range [0-100] is reserved for RTI use. Within
419 * that range are some predefined type representations (\ref RTI_RoutingServiceTypeRepresentationModule).
420 *
421 */
423
424/*e \ingroup RTI_RoutingServiceInfrastructureModule
425 *
426 * @brief Type representation.
427 *
428 * If the representation kind is \ref RTI_ROUTING_SERVICE_TYPE_REPRESENTATION_DYNAMIC_TYPE,
429 * the representation will be an \ndds TypeCode.
430 *
431 * If the representation kind is \ref RTI_ROUTING_SERVICE_TYPE_REPRESENTATION_XML,
432 * the representation will be an XML string.
433 */
435
436/*e \dref_TypeInfo
437 */
439 /*e \dref_TypeInfo_type_name */
440 char * type_name;
441
442 /*i
443 * Whether this type can be optimized (avoid CDR deserialization). This is
444 * assumed to be true but the service may determine otherwise by studying
445 * counterpart type information.
446 */
447 DDS_Boolean can_be_optimized;
448
449 /*e \dref_TypeInfo_representation_kind */
451
452 /*e \dref_TypeInfo_type_representation */
454};
455
456/*e \ingroup RTI_RoutingServiceInfrastructureModule
457 * @brief Data representation kind.
458 *
459 * The range [0-100] is reserved for RTI use. Within
460 * that range are some predefined data representations (\ref RTI_RoutingServiceDataRepresentationModule).
461 *
462 */
464
465/*****************************************************************************/
466/* Sample and sample information */
467/*****************************************************************************/
468
469/*e \ingroup RTI_RoutingServiceInfrastructureModule
470 *
471 * @brief Stream sample.
472 *
473 * Samples are data messages generated by adapters and transformations.
474 *
475 * If the representation kind is \ref RTI_ROUTING_SERVICE_DATA_REPRESENTATION_DYNAMIC_DATA,
476 * the sample will be a DynamicData object.
477 *
478 * If the representation kind is \ref RTI_ROUTING_SERVICE_DATA_REPRESENTATION_XML,
479 * the sample will be an XML string.
480 *
481 */
483
484/*e
485 * \ingroup RTI_RoutingServiceInfrastructureModule
486 * @brief Stream sample info.
487 * In DDS, this is a DDS_SampleInfo object.
488 */
490
491/*e
492 * \ingroup RTI_RoutingServiceInfrastructureModule
493 * @brief Definition of a String sequence
494 */
496 /*e @brief Array of elements. */
498 /*e @brief Number of elements in the array. */
500 /*e @brief maximum capacity of the array. */
502};
503
504
505#define RTI_RoutingServiceStringSeq_INITIALIZER \
506 {NULL, 0, 0}
507
508extern ROUTERDllExport
510RTI_RoutingServiceStringSeq_copy(
511 struct RTI_RoutingServiceStringSeq *self,
512 struct RTI_RoutingServiceStringSeq *other);
513
514/*****************************************************************************/
515/* Stream information */
516/*****************************************************************************/
517
518/*e
519 * \dref_StreamInfo
520 */
522 /*e
523 * \dref_StreamInfo_stream_name
524 */
526 /*e
527 * \dref_StreamInfo_type_info
528 */
530 /*i
531 *
532 * @brief Internal use only
533 */
534 struct RTI_RoutingServiceStringSeq partition;
535 /*e
536 * \dref_StreamInfo_disposed
537 */
538 DDS_Boolean disposed;
539};
540
541
542#define RTI_RoutingServiceStreamInfo_INITIALIZER {\
543 NULL, \
544 {NULL, DDS_BOOLEAN_TRUE, 0, NULL},\
545 RTI_RoutingServiceStringSeq_INITIALIZER, \
546 DDS_BOOLEAN_FALSE \
547}
548
549extern ROUTERDllExport void RTI_RoutingServiceStreamInfo_finalize(
550 struct RTI_RoutingServiceStreamInfo *self);
551
552extern ROUTERDllExport DDS_Boolean RTI_RoutingServiceStreamInfo_initialize(
553 struct RTI_RoutingServiceStreamInfo *self,
554 DDS_Boolean is_disposed_stream,
555 const char *stream_name,
556 const char *registered_type_name,
557 int type_dfinition_format,
559
560/*e
561 * \ingroup RTI_RoutingServiceInfrastructureModule
562 *
563 * @brief Creates a stream info for a newly discovered stream.
564 *
565 * @param stream_name \rs_st_in Stream name. Cannot be NULL.
566 * @param registered_type_name \rs_st_in Type name. Cannot be NULL.
567 * @param type_representation_kind \rs_st_in Type representation kind.
568 * @param type_representation \rs_st_in Type representation. Cannot be NULL.
569 *
570 * @return Newly created stream info, or NULL if there is an error.
571 */
572extern ROUTERDllExport struct RTI_RoutingServiceStreamInfo *
574 const char *stream_name,
575 const char *registered_type_name,
576 RTI_RoutingServiceTypeRepresentationKind type_representation_kind,
577 RTI_RoutingServiceTypeRepresentation type_representation);
578
579/*e
580 * \ingroup RTI_RoutingServiceInfrastructureModule
581 * @brief Creates a stream info for a disposed stream.
582 * Disposed streams are no longer available in a data domain.
583 * @param stream_name \rs_st_in Stream name. Cannot be NULL.
584 * @return Newly created stream info, or NULL if there is an error.
585 */
586extern ROUTERDllExport struct RTI_RoutingServiceStreamInfo *
588
589/*e \ingroup RTI_RoutingServiceInfrastructureModule
590 *
591 * @brief Destroys a stream info.
592 *
593 * @param_self
594 */
595extern ROUTERDllExport
597 struct RTI_RoutingServiceStreamInfo * self);
598
599
600#define RTI_ROUTING_SERVICE_PROPERTY_PREFIX \
601 "rti.routing_service"
602
603/*e \ingroup RTI_RoutingServiceInfrastructureModule
604 *
605 * @brief Name of the property that provides the @product given application name
606 *
607 */
608#define RTI_ROUTING_SERVICE_APP_NAME_PROPERTY_NAME \
609 RTI_ROUTING_SERVICE_PROPERTY_PREFIX".app_name"
610
611/*e \ingroup RTI_RoutingServiceInfrastructureModule
612 *
613 * Name of the property that provides the configured group name.
614 *
615 */
616#define RTI_ROUTING_SERVICE_GROUP_PROPERTY_NAME \
617 RTI_ROUTING_SERVICE_PROPERTY_PREFIX".group_name"
618
619/*e \ingroup RTI_RoutingServiceInfrastructureModule
620 *
621 * @brief Name of the property that provides the @product version as string.
622 *
623 */
624#define RTI_ROUTING_SERVICE_VERSION_PROPERTY_NAME \
625 RTI_ROUTING_SERVICE_PROPERTY_PREFIX".version"
626
627/*e \ingroup RTI_RoutingServiceInfrastructureModule
628 *
629 * @brief Name of the property that provides verbosity in use by @product.
630 *
631 * It can take on of the following stings:
632 * - NONE
633 * - EXCEPTION
634 * - WARN
635 * - INFO
636 * - DEBUG.
637 *
638 */
639#define RTI_ROUTING_SERVICE_VERBOSITY_PROPERTY_NAME \
640 RTI_ROUTING_SERVICE_PROPERTY_PREFIX".verbosity"
641
642/*e \ingroup RTI_RoutingServiceInfrastructureModule
643 *
644 * @brief Name of the property that provides the resource name of the entity
645 * that owns the adapter entity.
646 *
647 */
648#define RTI_ROUTING_SERVICE_ENTITY_RESOURCE_NAME_PROPERTY_NAME \
649 RTI_ROUTING_SERVICE_PROPERTY_PREFIX".entity.resource_name"
650
651#ifdef __cplusplus
652} /* extern "C" */
653#endif
654
655#endif /* routingservice_infrastructure_h */
RTI_RoutingServiceVerbosity RTI_RoutingServiceEnvironment_get_verbosity(const RTI_RoutingServiceEnvironment *self)
Retrieves the verbosity that Routing Service is using.
void RTI_RoutingServiceEnvironment_fatal_error(RTI_RoutingServiceEnvironment *self, const char *error_format,...)
Assigns a fatal error into the environment.
const char * RTI_RoutingServiceEnvironment_get_error_message(const RTI_RoutingServiceEnvironment *self)
Returns the error message this environment contains.
struct RTI_RoutingServiceEnvironmentImpl RTI_RoutingServiceEnvironment
The environment permits the return of error information in the RTI Routing Service API and informatio...
Definition: routingservice_infrastructure.h:183
int RTI_RoutingServiceTypeRepresentationKind
Type representation kind.
Definition: routingservice_infrastructure.h:422
RTI_RoutingServiceVerbosity
Verbosity used by Routing Service.
Definition: routingservice_infrastructure.h:214
void RTI_RoutingServiceEnvironment_set_error_w_params(RTI_RoutingServiceEnvironment *self, DDS_Boolean overwrite, int error_code, int native_error_code, const char *error_format,...)
Assigns an error into the environment.
struct RTI_RoutingServiceStreamInfo * RTI_RoutingServiceStreamInfo_new_disposed(const char *stream_name)
Creates a stream info for a disposed stream. Disposed streams are no longer available in a data domai...
int RTI_RoutingServiceDataRepresentationKind
Data representation kind.
Definition: routingservice_infrastructure.h:463
void RTI_RoutingServiceEnvironment_set_error(RTI_RoutingServiceEnvironment *self, const char *error_format,...)
Assigns an error into the environment.
struct RTI_RoutingServiceStreamInfo * RTI_RoutingServiceStreamInfo_new_discovered(const char *stream_name, const char *registered_type_name, RTI_RoutingServiceTypeRepresentationKind type_representation_kind, RTI_RoutingServiceTypeRepresentation type_representation)
Creates a stream info for a newly discovered stream.
void RTI_RoutingServiceEnvironment_clear_error(RTI_RoutingServiceEnvironment *self)
Clears an error (if any) set in this environment.
void * RTI_RoutingServiceTypeRepresentation
Type representation.
Definition: routingservice_infrastructure.h:434
const char * RTI_RoutingServiceProperties_lookup_property(const struct RTI_RoutingServiceProperties *self, const char *name)
Searches for a property given its name.
DDS_Boolean RTI_RoutingServiceEnvironment_error_occurred(const RTI_RoutingServiceEnvironment *self)
Checks whether an error has been set in this environment.
void * RTI_RoutingServiceSample
Stream sample.
Definition: routingservice_infrastructure.h:482
void * RTI_RoutingServiceSampleInfo
Stream sample info. In DDS, this is a DDS_SampleInfo object.
Definition: routingservice_infrastructure.h:489
void RTI_RoutingServiceStreamInfo_delete(struct RTI_RoutingServiceStreamInfo *self)
Destroys a stream info.
@ RTI_ROUTING_SERVICE_VERBOSITY_WARN
Definition: routingservice_infrastructure.h:226
@ RTI_ROUTING_SERVICE_VERBOSITY_DEBUG
Definition: routingservice_infrastructure.h:234
@ RTI_ROUTING_SERVICE_VERBOSITY_EXCEPTION
Definition: routingservice_infrastructure.h:222
@ RTI_ROUTING_SERVICE_VERBOSITY_NONE
Definition: routingservice_infrastructure.h:218
@ RTI_ROUTING_SERVICE_VERBOSITY_INFO
Definition: routingservice_infrastructure.h:230
Configuration property.
Definition: routingservice_infrastructure.h:64
char * name
Property name.
Definition: routingservice_infrastructure.h:66
void * value
Property value.
Definition: routingservice_infrastructure.h:68
Set of configuration properties.
Definition: routingservice_infrastructure.h:77
int count
Number of properties in the array.
Definition: routingservice_infrastructure.h:81
struct RTI_RoutingServiceNameValue * properties
Array of configuration properties.
Definition: routingservice_infrastructure.h:79
DDS_Boolean string_values
A non-zero value indicates that all the values of the properties are strings (char *)
Definition: routingservice_infrastructure.h:84
Stream information.
Definition: routingservice_infrastructure.h:521
char * stream_name
The stream name.
Definition: routingservice_infrastructure.h:525
DDS_Boolean disposed
Indicates whether the stream is a newly discovered stream or a disposed stream that no longer exists.
Definition: routingservice_infrastructure.h:538
struct RTI_RoutingServiceTypeInfo type_info
The type information associated with the stream.
Definition: routingservice_infrastructure.h:529
Definition of a String sequence.
Definition: routingservice_infrastructure.h:495
int element_count_max
maximum capacity of the array.
Definition: routingservice_infrastructure.h:501
int element_count
Number of elements in the array.
Definition: routingservice_infrastructure.h:499
char ** element_array
Array of elements.
Definition: routingservice_infrastructure.h:497
Type information.
Definition: routingservice_infrastructure.h:438
RTI_RoutingServiceTypeRepresentationKind type_representation_kind
The representation kind.
Definition: routingservice_infrastructure.h:450
RTI_RoutingServiceTypeRepresentation type_representation
The type representation.
Definition: routingservice_infrastructure.h:453
char * type_name
The registered type name.
Definition: routingservice_infrastructure.h:440
Represents the version of a plugin or RTI Routing Service itself.
Definition: routingservice_infrastructure.h:190
int minor
Minor version number.
Definition: routingservice_infrastructure.h:198
int revision
Revision of a release.
Definition: routingservice_infrastructure.h:206
int release
Release version number.
Definition: routingservice_infrastructure.h:202
int major
Major version number.
Definition: routingservice_infrastructure.h:194