RTI Connext DDS Micro  Version 2.4.8
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
cdr_cdr_type.h
1 /*
2  * FILE: cdr_cdr_type.h - CDR types
3  *
4  * (c) Copyright, Real-Time Innovations, 2012-2016.
5  * All rights reserved.
6  *
7  * No duplications, whole or partial, manual or electronic, may be made
8  * without express written permission. Any such copies, or
9  * revisions thereof, must display this notice unaltered.
10  * This code contains trade secrets of Real-Time Innovations, Inc.
11  *
12  *
13  * Modification History
14  * --------------------
15  * 10feb2016,tk MICRO-1530 Unified REDA_StringSeq, CDR_StringSeq, and DDS_StringSeq
16  * 19may2015,as MICRO-1193 Refactoring of Sequence API levels
17  * 23feb2015,eh MICRO-1075: remove and replace macros
18  * 15sep2014,eh Updated documentation
19  * 14aug2012,kaj Written
20  */
21 
22 /*ci
23  * \file
24  * \defgroup CDRTypeClass CDR Types
25  * \ingroup CDRModule
26  * \brief CDR types
27  *
28  * \details
29  * Defines supported primitive CDR types and sequences.
30  *
31  * Note, a sequence of a type B will be defined as another type A when
32  * sizes of type A and B are equal. For example, CDR_BooleanSeq is defined
33  * as CDR_OctetSeq. This is done to minimize the number of lines of code.
34  */
35 
36 /*ci \addtogroup CDRTypeClass
37  * @{
38  */
39 #ifndef cdr_cdr_type_h
40 #define cdr_cdr_type_h
41 
42 #ifndef osapi_types_h
43 #include "osapi/osapi_types.h"
44 #endif
45 #ifndef reda_sequence_h
46 #include "reda/reda_sequence.h"
47 #endif
48 #ifndef cdr_dll_h
49 #include "cdr/cdr_dll.h"
50 #endif
51 
52 #ifdef __cplusplus
53 extern "C"
54 {
55 #endif /* __cplusplus */
56 
57 /* ================================================================= */
58 /* CDR Primitive Types */
59 /* ================================================================= */
60 
61 /*ci \brief Char */
62 typedef RTI_INT8 CDR_Char;
63 
64 /*ci \brief Octet */
65 typedef RTI_UINT8 CDR_Octet;
66 
67 /*ci \brief Boolean */
68 typedef RTI_UINT8 CDR_Boolean;
69 
70 /*ci \brief Short */
71 typedef RTI_INT16 CDR_Short;
72 
73 /*ci \brief Unsigned Short */
74 typedef RTI_UINT16 CDR_UnsignedShort;
75 
76 /*ci \brief Long */
77 typedef RTI_INT32 CDR_Long;
78 
79 /*ci \brief Unsigned Long */
80 typedef RTI_UINT32 CDR_UnsignedLong;
81 
82 /*ci \brief Enum */
83 typedef RTI_UINT32 CDR_Enum;
84 
85 /*ci \brief WChar */
86 typedef RTI_UINT32 CDR_Wchar;
87 
88 /*ci \brief Long Long */
89 typedef RTI_INT64 CDR_LongLong;
90 
91 /*ci \brief Unsigned Long Long */
92 typedef RTI_UINT64 CDR_UnsignedLongLong;
93 
94 /*ci \brief Float */
95 typedef RTI_FLOAT32 CDR_Float;
96 
97 /*ci \brief Double */
98 typedef RTI_DOUBLE64 CDR_Double;
99 
100 /*ci \brief Long Double */
101 typedef RTI_DOUBLE128 CDR_LongDouble;
102 
103 /*ci \brief String */
104 typedef char *CDR_String;
105 
106 /*ci \brief WString */
107 typedef RTI_UINT32 *CDR_Wstring;
108 
109 /*ci \brief Property */
110 struct CDR_Property
111 {
112  /*ci \brief Name */
113  char *name;
114 
115  /*ci \brief Value */
116  char *value;
117 };
118 
119 /* ================================================================= */
120 /* CDR Primitive Type Sequences */
121 /* ================================================================= */
122 
123 /*ci \brief Octet Sequence
124  *
125  * \details
126  * Other CDR types of same length as Octet (i.e. Char, Boolean) have their
127  * sequences aliased to this sequence.
128  */
129 #define T CDR_Octet
130 #define TSeq CDR_OctetSeq
131 #define REDA_SEQUENCE_USER_API
132 #include <reda/reda_sequence_decl.h>
133 
134 #define T CDR_Char
135 #define TSeq CDR_CharSeq
136 #define REDA_SEQUENCE_USER_API
137 #include <reda/reda_sequence_decl.h>
138 
139 #define T CDR_Boolean
140 #define TSeq CDR_BooleanSeq
141 #define REDA_SEQUENCE_USER_API
142 #include <reda/reda_sequence_decl.h>
143 
144 #define T CDR_Short
145 #define TSeq CDR_ShortSeq
146 #define REDA_SEQUENCE_USER_API
147 #include <reda/reda_sequence_decl.h>
148 
149 #define T CDR_Long
150 #define TSeq CDR_LongSeq
151 #define REDA_SEQUENCE_USER_API
152 #include <reda/reda_sequence_decl.h>
153 
154 #define T CDR_Enum
155 #define TSeq CDR_EnumSeq
156 #define REDA_SEQUENCE_USER_API
157 #include <reda/reda_sequence_decl.h>
158 
159 #define T CDR_Wchar
160 #define TSeq CDR_WcharSeq
161 #define REDA_SEQUENCE_USER_API
162 #include <reda/reda_sequence_decl.h>
163 
164 #define T CDR_LongLong
165 #define TSeq CDR_LongLongSeq
166 #define REDA_SEQUENCE_USER_API
167 #include <reda/reda_sequence_decl.h>
168 
169 
170 #define T CDR_Float
171 #define TSeq CDR_FloatSeq
172 #define REDA_SEQUENCE_USER_API
173 #include <reda/reda_sequence_decl.h>
174 
175 #define T CDR_Double
176 #define TSeq CDR_DoubleSeq
177 #define REDA_SEQUENCE_USER_API
178 #include <reda/reda_sequence_decl.h>
179 
180 /*ci \brief Unsigned Short Sequence
181  *
182  * \details
183  * Other CDR types of same length as Unsigned Short (i.e. Short) have their
184  * sequences aliased to this sequence.
185  */
186 #define T CDR_UnsignedShort
187 #define TSeq CDR_UnsignedShortSeq
188 #define REDA_SEQUENCE_USER_API
189 #include <reda/reda_sequence_decl.h>
190 
191 /*ci \brief Unsigned Long Sequence
192  *
193  * \details
194  * Other CDR types of same length as Unsigned Long (i.e. Long, Enum, Wchar,
195  * Float) have their sequences aliased to this sequence.
196  */
197 #define T CDR_UnsignedLong
198 #define TSeq CDR_UnsignedLongSeq
199 #define REDA_SEQUENCE_USER_API
200 #include <reda/reda_sequence_decl.h>
201 
202 /*ci \brief Unsigned Long Long Sequence
203  *
204  * \details
205  * Other CDR types of same length as Unsigned Long Long (i.e. Long Long,
206  * Double) have their sequences aliased to this sequence.
207  */
208 #define T CDR_UnsignedLongLong
209 #define TSeq CDR_UnsignedLongLongSeq
210 #define REDA_SEQUENCE_USER_API
211 #include <reda/reda_sequence_decl.h>
212 
213 /*ci \brief Unsigned Long Double Sequence */
214 #define T CDR_LongDouble
215 #define TSeq CDR_LongDoubleSeq
216 #define REDA_SEQUENCE_USER_API
217 #include <reda/reda_sequence_decl.h>
218 
219 /*ci \brief String Sequence is an alias for REDA_StringSeq */
220 
221 /*ci \brief WString Sequence */
222 #define T CDR_Wstring
223 #define TSeq CDR_WstringSeq
224 #define TSeq_isCDRStringType
225 #define TSeq_isCDRStringType_no_max
226 #define REDA_SEQUENCE_USER_API
227 #ifndef RTI_CERT
228 #define TSeq_is_equal
229 #endif
230 #include <reda/reda_sequence_decl.h>
231 
232 #ifdef SEQUENCE_ALIAS
233 /*ci \brief Assign CDR_BooleanSeq as alias of CDR_OctetSeq */
234 #define CDR_BooleanSeq CDR_OctetSeq
235 
236 /*ci \brief Assign CDR_CharSeq as alias of CDR_OctetSeq */
237 #define CDR_CharSeq CDR_OctetSeq
238 
239 /*ci \brief Assign CDR_ShortSeq as alias of CDR_UnsignedShortSeq */
240 #define CDR_ShortSeq CDR_UnsignedShortSeq
241 
242 /*ci \brief Assign CDR_LongSeq as alias of CDR_UnsignedLongSeq */
243 #define CDR_LongSeq CDR_UnsignedLongSeq
244 
245 /*ci \brief Assign CDR_EnumSeq as alias of CDR_UnsignedLongSeq */
246 #define CDR_EnumSeq CDR_UnsignedLongSeq
247 
248 /*ci \brief Assign CDR_WcharSeq as alias of CDR_UnsignedLongSeq */
249 #define CDR_WcharSeq CDR_UnsignedLongSeq
250 
251 /*ci \brief Assign CDR_FloatSeq as alias of CDR_UnsignedLongSeq */
252 #define CDR_FloatSeq CDR_UnsignedLongSeq
253 
254 /*ci \brief Assign CDR_LongLongSeq as alias of CDR_UnsignedLongLongSeq */
255 #define CDR_LongLongSeq CDR_UnsignedLongLongSeq
256 
257 /*ci \brief Assign CDR_DoubleSeq as alias of CDR_UnsignedLongLongSeq */
258 #define CDR_DoubleSeq CDR_UnsignedLongLongSeq
259 #endif
260 
261 /*ci \brief Assign CDR_StringSeq as alias of REDA_StringSeq */
262 #define CDR_StringSeq REDA_StringSeq
263 
264 /*ci \brief Assign CDR_StringSeq_initialize as alias of REDA_StringSeq_initialize */
265 #define CDR_StringSeq_initialize REDA_StringSeq_initialize
266 
267 /*ci \brief Assign CDR_StringSeq_get_maximum as alias of REDA_StringSeq_get_maximum */
268 #define CDR_StringSeq_get_maximum REDA_StringSeq_get_maximum
269 
270 /*ci \brief Assign CDR_StringSeq_set_maximum as alias of REDA_StringSeq_set_maximum */
271 #define CDR_StringSeq_set_maximum REDA_StringSeq_set_maximum_w_max
272 
273 /*ci \brief Assign CDR_BooleanSeq_get_length as alias of REDA_StringSeq_get_length */
274 #define CDR_StringSeq_get_length REDA_StringSeq_get_length
275 
276 /*ci \brief Assign CDR_StringSeq_set_length as alias of REDA_StringSeq_set_length */
277 #define CDR_StringSeq_set_length REDA_StringSeq_set_length
278 
279 /*ci \brief Assign CDR_StringSeq_get_reference as alias of REDA_StringSeq_get_reference */
280 #define CDR_StringSeq_get_reference REDA_StringSeq_get_reference
281 
282 /*ci \brief Assign CDR_StringSeq_copy as alias of REDA_StringSeq_copy_w_max */
283 #define CDR_StringSeq_copy REDA_StringSeq_copy_w_max
284 
285 #ifndef RTI_CERT
286 /*ci \brief Assign CDR_StringSeq_finalize as alias of REDA_StringSeq_finalize */
287 #define CDR_StringSeq_finalize REDA_StringSeq_finalize
288 #endif
289 
290 /* Define the following aliases if the DEFAULT API is > BASIC */
291 #if REDA_SEQUENCE_API_USER_DEFAULT > REDA_SEQUENCE_API_BASIC
292 
293 /*ci \brief Assign CDR_StringSeq_is_equal as alias of REDA_StringSeq_is_equal */
294 #define CDR_StringSeq_is_equal REDA_StringSeq_is_equal
295 
296 /*ci \brief Assign CDR_String_loan_contiguous as alias of REDA_StringSeq_loan_contiguous */
297 #define CDR_StringSeq_loan_contiguous REDA_StringSeq_loan_contiguous
298 
299 /*ci \brief Assign CDR_StringSeq_loan_discontiguous as alias of REDA_StringSeq_loan_discontiguous */
300 #define CDR_StringSeq_loan_discontiguous REDA_StringSeq_loan_discontiguous
301 
302 /*ci \brief Assign CDR_StringSeq_unloan as alias of REDA_StringSeq_unloan */
303 #define CDR_StringSeq_unloan REDA_StringSeq_unloan
304 
305 /*ci \brief Assign CDR_StringSeq_has_ownership as alias of REDA_StringSeq_has_ownership */
306 #define CDR_StringSeq_has_ownership REDA_StringSeq_has_ownership
307 
308 /*ci \brief Assign CDR_StringSeq_get_buffer as alias of REDA_StringSeq_get_buffer */
309 #define CDR_StringSeq_get_contiguous_buffer REDA_StringSeq_get_contiguous_buffer
310 
311 /*ci \brief Assign CDR_StringSeq_set_buffer as alias of REDA_StringSeq_set_buffer */
312 #define CDR_StringSeq_set_contiguous_buffer REDA_StringSeq_set_contiguous_buffer
313 
314 /*ci \brief Assign CDR_StringSeq_has_discontiguous_buffer as alias of REDA_StringSeq_has_discontiguous_buffer */
315 #define CDR_StringSeq_has_discontiguous_buffer REDA_StringSeq_has_discontiguous_buffer
316 
317 /*ci \brief Assign CDR_StringSeq_ensure_length as alias of REDA_StringSeq_ensure_length_w_max */
318 #define CDR_StringSeq_ensure_length REDA_StringSeq_ensure_length_w_max
319 
320 /*ci \brief Assign CDR_StringSeq_to_array as alias of REDA_StringSeq_to_array_w_max */
321 #define CDR_StringSeq_to_array REDA_StringSeq_to_array_w_max
322 
323 /*ci \brief Assign CDR_StringSeq_from_array as alias of REDA_StringSeq_from_array_w_max */
324 #define CDR_StringSeq_from_array REDA_StringSeq_from_array_w_max
325 
326 #endif
327 
328 #if SEQUENCE_ALIAS
329 /* CDR BooleanSeq operations */
330 
331 /*ci \brief Assign CDR_BooleanSeq_initialize as alias of CDR_OctetSeq_initialize */
332 #define CDR_BooleanSeq_initialize CDR_OctetSeq_initialize
333 
334 /*ci \brief Assign CDR_BooleanSeq_get_maximum as alias of CDR_OctetSeq_get_maximum */
335 #define CDR_BooleanSeq_get_maximum CDR_OctetSeq_get_maximum
336 
337 /*ci \brief Assign CDR_BooleanSeq_set_maximum as alias of CDR_OctetSeq_set_maximum */
338 #define CDR_BooleanSeq_set_maximum CDR_OctetSeq_set_maximum
339 
340 /*ci \brief Assign CDR_BooleanSeq_get_length as alias of CDR_OctetSeq_get_length */
341 #define CDR_BooleanSeq_get_length CDR_OctetSeq_get_length
342 
343 /*ci \brief Assign CDR_BooleanSeq_set_length as alias of CDR_OctetSeq_set_length */
344 #define CDR_BooleanSeq_set_length CDR_OctetSeq_set_length
345 
346 /*ci \brief Assign CDR_BooleanSeq_get_reference as alias of CDR_OctetSeq_get_reference */
347 #define CDR_BooleanSeq_get_reference (CDR_Boolean*)CDR_OctetSeq_get_reference
348 
349 /* CDR_CharSeq operations */
350 
351 /*ci \brief Assign CDR_CharSeq_initialize as alias of CDR_OctetSeq_initialize */
352 #define CDR_CharSeq_initialize CDR_OctetSeq_initialize
353 
354 /*ci \brief Assign CDR_CharSeq_get_maximum as alias of CDR_OctetSeq_get_maximum */
355 #define CDR_CharSeq_get_maximum CDR_OctetSeq_get_maximum
356 
357 /*ci \brief Assign CDR_CharSeq_set_maximum as alias of CDR_OctetSeq_set_maximum */
358 #define CDR_CharSeq_set_maximum CDR_OctetSeq_set_maximum
359 
360 /*ci \brief Assign CDR_CharSeq_get_length as alias of CDR_OctetSeq_get_length */
361 #define CDR_CharSeq_get_length CDR_OctetSeq_get_length
362 
363 /*ci \brief Assign CDR_CharSeq_set_length as alias of CDR_OctetSeq_set_length */
364 #define CDR_CharSeq_set_length CDR_OctetSeq_set_length
365 
366 /*ci \brief Assign CDR_CharSeq_get_reference as alias of CDR_OctetSeq_get_reference */
367 #define CDR_CharSeq_get_reference (CDR_Char*)CDR_OctetSeq_get_reference
368 
369 /* CDR_ShortSeq operations */
370 
371 /*ci \brief Assign CDR_ShortSeq_initialize as alias of CDR_UnsignedShortSeq_initialize */
372 #define CDR_ShortSeq_initialize CDR_UnsignedShortSeq_initialize
373 
374 /*ci \brief Assign CDR_ShortSeq_get_maximum as alias of CDR_UnsignedShortSeq_get_maximum */
375 #define CDR_ShortSeq_get_maximum CDR_UnsignedShortSeq_get_maximum
376 
377 /*ci \brief Assign CDR_ShortSeq_set_maximum as alias of CDR_UnsignedShortSeq_set_maximum */
378 #define CDR_ShortSeq_set_maximum CDR_UnsignedShortSeq_set_maximum
379 
380 /*ci \brief Assign CDR_ShortSeq_get_length as alias of CDR_UnsignedShortSeq_get_length */
381 #define CDR_ShortSeq_get_length CDR_UnsignedShortSeq_get_length
382 
383 /*ci \brief Assign CDR_ShortSeq_set_length as alias of CDR_UnsignedShortSeq_set_length */
384 #define CDR_ShortSeq_set_length CDR_UnsignedShortSeq_set_length
385 
386 /*ci \brief Assign CDR_ShortSeq_get_reference as alias of CDR_UnsignedShortSeq_get_reference */
387 #define CDR_ShortSeq_get_reference (CDR_Short*)CDR_UnsignedShortSeq_get_reference
388 
389 
390 /* CDR_LongSeq operations */
391 
392 /*ci \brief Assign CDR_LongSeq_initialize as alias of CDR_UnsignedLongSeq_initialize */
393 #define CDR_LongSeq_initialize CDR_UnsignedLongSeq_initialize
394 
395 /*ci \brief Assign CDR_LongSeq_get_maximum as alias of CDR_UnsignedLongSeq_get_maximum */
396 #define CDR_LongSeq_get_maximum CDR_UnsignedLongSeq_get_maximum
397 
398 /*ci \brief Assign CDR_LongSeq_set_maximum as alias of CDR_UnsignedLongSeq_set_maximum */
399 #define CDR_LongSeq_set_maximum CDR_UnsignedLongSeq_set_maximum
400 
401 /*ci \brief Assign CDR_LongSeq_get_length as alias of CDR_UnsignedLongSeq_get_length */
402 #define CDR_LongSeq_get_length CDR_UnsignedLongSeq_get_length
403 
404 /*ci \brief Assign CDR_LongSeq_set_length as alias of CDR_UnsignedLongSeq_set_length */
405 #define CDR_LongSeq_set_length CDR_UnsignedLongSeq_set_length
406 
407 /*ci \brief Assign CDR_LongSeq_get_reference as alias of CDR_UnsignedLongSeq_get_reference */
408 #define CDR_LongSeq_get_reference (CDR_Long*)CDR_UnsignedLongSeq_get_reference
409 
410 
411 /* CDR_EnumSeq operations */
412 
413 /*ci \brief Assign CDR_EnumSeq_initialize as alias of CDR_UnsignedLongSeq_initialize */
414 #define CDR_EnumSeq_initialize CDR_UnsignedLongSeq_initialize
415 
416 /*ci \brief Assign CDR_EnumSeq_get_maximum as alias of CDR_UnsignedLongSeq_get_maximum */
417 #define CDR_EnumSeq_get_maximum CDR_UnsignedLongSeq_get_maximum
418 
419 /*ci \brief Assign CDR_EnumSeq_set_maximum as alias of CDR_UnsignedLongSeq_set_maximum */
420 #define CDR_EnumSeq_set_maximum CDR_UnsignedLongSeq_set_maximum
421 
422 /*ci \brief Assign CDR_EnumSeq_get_length as alias of CDR_UnsignedLongSeq_get_length */
423 #define CDR_EnumSeq_get_length CDR_UnsignedLongSeq_get_length
424 
425 /*ci \brief Assign CDR_EnumSeq_set_length as alias of CDR_UnsignedLongSeq_set_length */
426 #define CDR_EnumSeq_set_length CDR_UnsignedLongSeq_set_length
427 
428 /*ci \brief Assign CDR_EnumSeq_get_reference as alias of CDR_UnsignedLongSeq_get_reference */
429 #define CDR_EnumSeq_get_reference (CDR_Enum*)CDR_UnsignedLongSeq_get_reference
430 
431 
432 /* CDR_WcharSeq operations */
433 
434 /*ci \brief Assign CDR_WcharSeq_initialize as alias of CDR_UnsignedLongSeq_initialize */
435 #define CDR_WcharSeq_initialize CDR_UnsignedLongSeq_initialize
436 
437 /*ci \brief Assign CDR_WcharSeq_get_maximum as alias of CDR_UnsignedLongSeq_get_maximum */
438 #define CDR_WcharSeq_get_maximum CDR_UnsignedLongSeq_get_maximum
439 
440 /*ci \brief Assign CDR_WcharSeq_set_maximum as alias of CDR_UnsignedLongSeq_set_maximum */
441 #define CDR_WcharSeq_set_maximum CDR_UnsignedLongSeq_set_maximum
442 
443 /*ci \brief Assign CDR_WcharSeq_get_length as alias of CDR_UnsignedLongSeq_get_length */
444 #define CDR_WcharSeq_get_length CDR_UnsignedLongSeq_get_length
445 
446 /*ci \brief Assign CDR_WcharSeq_set_length as alias of CDR_UnsignedLongSeq_set_length */
447 #define CDR_WcharSeq_set_length CDR_UnsignedLongSeq_set_length
448 
449 /*ci \brief Assign CDR_WcharSeq_get_reference as alias of CDR_UnsignedLongSeq_get_reference */
450 #define CDR_WcharSeq_get_reference (CDR_Wchar*)CDR_UnsignedLongSeq_get_reference
451 
452 
453 /* CDR_FloatSeq operations */
454 
455 /*ci \brief Assign CDR_FloatSeq_initialize as alias of CDR_UnsignedLongSeq_initialize */
456 #define CDR_FloatSeq_initialize CDR_UnsignedLongSeq_initialize
457 
458 /*ci \brief Assign CDR_FloatSeq_get_maximum as alias of CDR_UnsignedLongSeq_get_maximum */
459 #define CDR_FloatSeq_get_maximum CDR_UnsignedLongSeq_get_maximum
460 
461 /*ci \brief Assign CDR_FloatSeq_set_maximum as alias of CDR_UnsignedLongSeq_set_maximum */
462 #define CDR_FloatSeq_set_maximum CDR_UnsignedLongSeq_set_maximum
463 
464 /*ci \brief Assign CDR_FloatSeq_get_length as alias of CDR_UnsignedLongSeq_get_length */
465 #define CDR_FloatSeq_get_length CDR_UnsignedLongSeq_get_length
466 
467 /*ci \brief Assign CDR_FloatSeq_set_length as alias of CDR_UnsignedLongSeq_set_length */
468 #define CDR_FloatSeq_set_length CDR_UnsignedLongSeq_set_length
469 
470 /*ci \brief Assign CDR_FloatSeq_get_reference as alias of CDR_UnsignedLongSeq_get_reference */
471 #define CDR_FloatSeq_get_reference (CDR_Float*)CDR_UnsignedLongSeq_get_reference
472 
473 
474 /* CDR_LongLongSeq operations */
475 
476 /*ci \brief Assign CDR_LongLongSeq_initialize as alias of CDR_UnsignedLongLongSeq_initialize */
477 #define CDR_LongLongSeq_initialize CDR_UnsignedLongLongSeq_initialize
478 
479 /*ci \brief Assign CDR_LongLongSeq_get_maximum as alias of CDR_UnsignedLongLongSeq_get_maximum */
480 #define CDR_LongLongSeq_get_maximum CDR_UnsignedLongLongSeq_get_maximum
481 
482 /*ci \brief Assign CDR_LongLongSeq_set_maximum as alias of CDR_UnsignedLongLongSeq_set_maximum */
483 #define CDR_LongLongSeq_set_maximum CDR_UnsignedLongLongSeq_set_maximum
484 
485 /*ci \brief Assign CDR_LongLongSeq_get_length as alias of CDR_UnsignedLongLongSeq_get_length */
486 #define CDR_LongLongSeq_get_length CDR_UnsignedLongLongSeq_get_length
487 
488 /*ci \brief Assign CDR_LongLongSeq_set_length as alias of CDR_UnsignedLongLongSeq_set_length */
489 #define CDR_LongLongSeq_set_length CDR_UnsignedLongLongSeq_set_length
490 
491 /*ci \brief Assign CDR_LongLongSeq_get_reference as alias of CDR_UnsignedLongLongSeq_get_reference */
492 #define CDR_LongLongSeq_get_reference (CDR_LongLong*)CDR_UnsignedLongLongSeq_get_reference
493 
494 
495 /* CDR_DoubleSeq operations */
496 
497 /*ci \brief Assign CDR_DoubleSeq_initialize as alias of CDR_UnsignedLongLongSeq_initialize */
498 #define CDR_DoubleSeq_initialize CDR_UnsignedLongLongSeq_initialize
499 
500 /*ci \brief Assign CDR_DoubleSeq_get_maximum as alias of CDR_UnsignedLongLongSeq_get_maximum */
501 #define CDR_DoubleSeq_get_maximum CDR_UnsignedLongLongSeq_get_maximum
502 
503 /*ci \brief Assign CDR_DoubleSeq_set_maximum as alias of CDR_UnsignedLongLongSeq_set_maximum */
504 #define CDR_DoubleSeq_set_maximum CDR_UnsignedLongLongSeq_set_maximum
505 
506 /*ci \brief Assign CDR_DoubleSeq_get_length as alias of CDR_UnsignedLongLongSeq_get_length */
507 #define CDR_DoubleSeq_get_length CDR_UnsignedLongLongSeq_get_length
508 
509 /*ci \brief Assign CDR_DoubleSeq_set_length as alias of CDR_UnsignedLongLongSeq_set_length */
510 #define CDR_DoubleSeq_set_length CDR_UnsignedLongLongSeq_set_length
511 
512 /*ci \brief Assign CDR_DoubleSeq_get_reference as alias of CDR_UnsignedLongLongSeq_get_reference */
513 #define CDR_DoubleSeq_get_reference (CDR_Double*)CDR_UnsignedLongLongSeq_get_reference
514 
515 #ifndef RTI_CERT
516 
517 /*ci \brief Assign CDR_BooleanSeq_finalize as alias of CDR_OctetSeq_finalize */
518 #define CDR_BooleanSeq_finalize CDR_OctetSeq_finalize
519 
520 /*ci \brief Assign CDR_CharSeq_finalize as alias of CDR_OctetSeq_finalize */
521 #define CDR_CharSeq_finalize CDR_OctetSeq_finalize
522 
523 /*ci \brief Assign CDR_ShortSeq_finalize as alias of CDR_UnsignedShortSeq_finalize */
524 #define CDR_ShortSeq_finalize CDR_UnsignedShortSeq_finalize
525 
526 /*ci \brief Assign CDR_LongSeq_finalize as alias of CDR_UnsignedLongSeq_finalize */
527 #define CDR_LongSeq_finalize CDR_UnsignedLongSeq_finalize
528 
529 /*ci \brief Assign CDR_EnumSeq_finalize as alias of CDR_UnsignedLongSeq_finalize */
530 #define CDR_EnumSeq_finalize CDR_UnsignedLongSeq_finalize
531 
532 /*ci \brief Assign CDR_WcharSeq_finalize as alias of CDR_UnsignedLongSeq_finalize */
533 #define CDR_WcharSeq_finalize CDR_UnsignedLongSeq_finalize
534 
535 /*ci \brief Assign CDR_FloatSeq_finalize as alias of CDR_UnsignedLongSeq_finalize */
536 #define CDR_FloatSeq_finalize CDR_UnsignedLongSeq_finalize
537 
538 /*ci \brief Assign CDR_LongLongSeq_finalize as alias of CDR_UnsignedLongLongSeq_finalize */
539 #define CDR_LongLongSeq_finalize CDR_UnsignedLongLongSeq_finalize
540 
541 /*ci \brief Assign CDR_DoubleSeq_finalize as alias of CDR_UnsignedLongLongSeq_finalize */
542 #define CDR_DoubleSeq_finalize CDR_UnsignedLongLongSeq_finalize
543 #endif /* !RTI_CERT */
544 
545 /*ci \brief Assign CDR_BooleanSeq_copy as alias of CDR_OctetSeq_copy */
546 #define CDR_BooleanSeq_copy CDR_OctetSeq_copy
547 
548 /*ci \brief Assign CDR_CharSeq_copy as alias of CDR_OctetSeq_copy */
549 #define CDR_CharSeq_copy CDR_OctetSeq_copy
550 
551 /*ci \brief Assign CDR_ShortSeq_copy as alias of CDR_UnsignedShortSeq_copy */
552 #define CDR_ShortSeq_copy CDR_UnsignedShortSeq_copy
553 
554 /*ci \brief Assign CDR_LongSeq_copy as alias of CDR_UnsignedLongSeq_copy */
555 #define CDR_LongSeq_copy CDR_UnsignedLongSeq_copy
556 
557 /*ci \brief Assign CDR_EnumSeq_copy as alias of CDR_UnsignedLongSeq_copy */
558 #define CDR_EnumSeq_copy CDR_UnsignedLongSeq_copy
559 
560 /*ci \brief Assign CDR_WcharSeq_copy as alias of CDR_UnsignedLongSeq_copy */
561 #define CDR_WcharSeq_copy CDR_UnsignedLongSeq_copy
562 
563 /*ci \brief Assign CDR_FloatSeq_copy as alias of CDR_UnsignedLongSeq_copy */
564 #define CDR_FloatSeq_copy CDR_UnsignedLongSeq_copy
565 
566 /*ci \brief Assign CDR_LongLongSeq_copy as alias of CDR_UnsignedLongLongSeq_copy */
567 #define CDR_LongLongSeq_copy CDR_UnsignedLongLongSeq_copy
568 
569 /*ci \brief Assign CDR_DoubleSeq_copy as alias of CDR_UnsignedLongLongSeq_copy */
570 #define CDR_DoubleSeq_copy CDR_UnsignedLongLongSeq_copy
571 
572 
573 /* Define the following aliases if the DEFAULT API is > BASIC */
574 #if REDA_SEQUENCE_API_USER_DEFAULT > REDA_SEQUENCE_API_BASIC
575 
576 
577 /*ci \brief Assign CDR_BooleanSeq_is_equal as alias of CDR_OctetSeq_is_equal */
578 #define CDR_BooleanSeq_is_equal CDR_OctetSeq_is_equal
579 
580 /*ci \brief Assign CDR_BooleanSeq_loan_contiguous as alias of CDR_OctetSeq_loan_contiguous */
581 #define CDR_BooleanSeq_loan_contiguous CDR_OctetSeq_loan_contiguous
582 
583 /*ci \brief Assign CDR_BooleanSeq_loan_discontiguous as alias of CDR_OctetSeq_loan_discontiguous */
584 #define CDR_BooleanSeq_loan_discontiguous CDR_OctetSeq_loan_discontiguous
585 
586 /*ci \brief Assign CDR_BooleanSeq_unloan as alias of CDR_OctetSeq_unloan */
587 #define CDR_BooleanSeq_unloan CDR_OctetSeq_unloan
588 
589 /*ci \brief Assign CDR_BooleanSeq_has_ownership as alias of CDR_OctetSeq_has_ownership */
590 #define CDR_BooleanSeq_has_ownership CDR_OctetSeq_has_ownership
591 
592 /*ci \brief Assign CDR_BooleanSeq_get_contiguous_buffer as alias of CDR_OctetSeq_get_contiguous_buffer */
593 #define CDR_BooleanSeq_get_contiguous_buffer (CDR_Boolean*)CDR_OctetSeq_get_contiguous_buffer
594 
595 /*ci \brief Assign CDR_BooleanSeq_set_contiguous_buffer as alias of CDR_OctetSeq_set_contiguous_buffer */
596 #define CDR_BooleanSeq_set_contiguous_buffer(self_,buff_) CDR_OctetSeq_set_contiguous_buffer(self_,(CDR_Octet*)(buff_))
597 
598 /*ci \brief Assign CDR_BooleanSeq_has_discontiguous_buffer as alias of CDR_OctetSeq_has_discontiguous_buffer */
599 #define CDR_BooleanSeq_has_discontiguous_buffer CDR_OctetSeq_has_discontiguous_buffer
600 
601 /*ci \brief Assign CDR_BooleanSeq_ensure_length as alias of CDR_OctetSeq_ensure_length */
602 #define CDR_BooleanSeq_ensure_length CDR_OctetSeq_ensure_length
603 
604 /*ci \brief Assign CDR_BooleanSeq_to_array as alias of CDR_OctetSeq_to_array */
605 #define CDR_BooleanSeq_to_array(seq_,elms_seq_,length_) CDR_OctetSeq_to_array(seq_,(CDR_Octet*)elms_seq_,length_)
606 
607 /*ci \brief Assign CDR_BooleanSeq_from_array as alias of CDR_OctetSeq_from_array */
608 #define CDR_BooleanSeq_from_array(seq_,elms_seq_,length_) CDR_OctetSeq_from_array(seq_,(const CDR_Octet*)elms_seq_,length_)
609 
610 /* CDR_CharSeq operations */
611 
612 /*ci \brief Assign CDR_CharSeq_is_equal as alias of CDR_OctetSeq_is_equal */
613 #define CDR_CharSeq_is_equal CDR_OctetSeq_is_equal
614 
615 /*ci \brief Assign CDR_CharSeq_loan_contiguous as alias of CDR_OctetSeq_loan_contiguous */
616 #define CDR_CharSeq_loan_contiguous CDR_OctetSeq_loan_contiguous
617 
618 /*ci \brief Assign CDR_CharSeq_loan_discontiguous as alias of CDR_OctetSeq_loan_discontiguous */
619 #define CDR_CharSeq_loan_discontiguous CDR_OctetSeq_loan_discontiguous
620 
621 /*ci \brief Assign CDR_CharSeq_unloan as alias of CDR_OctetSeq_unloan */
622 #define CDR_CharSeq_unloan CDR_OctetSeq_unloan
623 
624 /*ci \brief Assign CDR_CharSeq_has_ownership as alias of CDR_OctetSeq_has_ownership */
625 #define CDR_CharSeq_has_ownership CDR_OctetSeq_has_ownership
626 
627 /*ci \brief Assign CDR_CharSeq_get_contiguous_buffer as alias of CDR_OctetSeq_get_contiguous_buffer */
628 #define CDR_CharSeq_get_contiguous_buffer (CDR_Char*)CDR_OctetSeq_get_contiguous_buffer
629 
630 /*ci \brief Assign CDR_CharSeq_set_buffer as alias of CDR_OctetSeq_set_buffer */
631 #define CDR_CharSeq_set_contiguous_buffer(self_,buff_) CDR_OctetSeq_set_contiguous_buffer(self_,(CDR_Octet*)(buff_))
632 
633 /*ci \brief Assign CDR_CharSeq_has_discontiguous_buffer as alias of CDR_OctetSeq_has_discontiguous_buffer */
634 #define CDR_CharSeq_has_discontiguous_buffer CDR_OctetSeq_has_discontiguous_buffer
635 
636 /*ci \brief Assign CDR_CharSeq_ensure_length as alias of CDR_OctetSeq_ensure_length */
637 #define CDR_CharSeq_ensure_length CDR_OctetSeq_ensure_length
638 
639 /*ci \brief Assign CDR_CharSeq_to_array as alias of CDR_OctetSeq_to_array */
640 #define CDR_CharSeq_to_array(seq_,elms_seq_,length_) CDR_OctetSeq_to_array(seq_,(CDR_Octet*)elms_seq_,length_)
641 
642 /*ci \brief Assign CDR_CharSeq_from_array as alias of CDR_OctetSeq_from_array */
643 #define CDR_CharSeq_from_array(seq_,elms_seq_,length_) CDR_OctetSeq_from_array(seq_,(const CDR_Octet*)elms_seq_,length_)
644 
645 /* CDR_ShortSeq operations */
646 
647 /*ci \brief Assign CDR_ShortSeq_is_equal as alias of CDR_UnsignedShortSeq_is_equal */
648 #define CDR_ShortSeq_is_equal CDR_UnsignedShortSeq_is_equal
649 
650 /*ci \brief Assign CDR_ShortSeq_loan_contiguous as alias of CDR_UnsignedShortSeq_loan_contiguous */
651 #define CDR_ShortSeq_loan_contiguous CDR_UnsignedShortSeq_loan_contiguous
652 
653 /*ci \brief Assign CDR_ShortSeq_loan_discontiguous as alias of CDR_UnsignedShortSeq_loan_discontiguous */
654 #define CDR_ShortSeq_loan_discontiguous CDR_UnsignedShortSeq_loan_discontiguous
655 
656 /*ci \brief Assign CDR_ShortSeq_unloan as alias of CDR_UnsignedShortSeq_unloan */
657 #define CDR_ShortSeq_unloan CDR_UnsignedShortSeq_unloan
658 
659 /*ci \brief Assign CDR_ShortSeq_has_ownership as alias of CDR_UnsignedShortSeq_has_ownership */
660 #define CDR_ShortSeq_has_ownership CDR_UnsignedShortSeq_has_ownership
661 
662 /*ci \brief Assign CDR_ShortSeq_get_contiguous_buffer as alias of CDR_UnsignedShortSeq_get_contiguous_buffer */
663 #define CDR_ShortSeq_get_contiguous_buffer (CDR_Short*)CDR_UnsignedShortSeq_get_contiguous_buffer
664 
665 /*ci \brief Assign CDR_ShortSeq_set_contiguous_buffer as alias of CDR_UnsignedShortSeq_set_contiguous_buffer */
666 #define CDR_ShortSeq_set_contiguous_buffer(self_,buff_) CDR_UnsignedShortSeq_set_contiguous_buffer(self_,(CDR_UnsignedShort*)(buff_))
667 
668 /*ci \brief Assign CDR_ShortSeq_has_discontiguous_buffer as alias of CDR_UnsignedShortSeq_has_discontiguous_buffer */
669 #define CDR_ShortSeq_has_discontiguous_buffer CDR_UnsignedShortSeq_has_discontiguous_buffer
670 
671 /*ci \brief Assign CDR_ShortSeq_ensure_length as alias of CDR_UnsignedShortSeq_ensure_length */
672 #define CDR_ShortSeq_ensure_length CDR_UnsignedShortSeq_ensure_length
673 
674 /*ci \brief Assign CDR_ShortSeq_to_array as alias of CDR_UnsignedShortSeq_to_array */
675 #define CDR_ShortSeq_to_array(seq_,elms_seq_,length_) CDR_UnsignedShortSeq_to_array(seq_,(CDR_UnsignedShort*)elms_seq_,length_)
676 
677 /*ci \brief Assign CDR_ShortSeq_from_array as alias of CDR_UnsignedShortSeq_from_array */
678 #define CDR_ShortSeq_from_array(seq_,elms_seq_,length_) CDR_UnsignedShortSeq_from_array(seq_,(const CDR_UnsignedShort*)elms_seq_,length_)
679 
680 /* CDR_LongSeq operations */
681 
682 /*ci \brief Assign CDR_LongSeq_is_equal as alias of CDR_UnsignedLongSeq_is_equal */
683 #define CDR_LongSeq_is_equal CDR_UnsignedLongSeq_is_equal
684 
685 /*ci \brief Assign CDR_LongSeq_loan_contiguous as alias of CDR_UnsignedLongSeq_loan_contiguous */
686 #define CDR_LongSeq_loan_contiguous CDR_UnsignedLongSeq_loan_contiguous
687 
688 /*ci \brief Assign CDR_LongSeq_loan_discontiguous as alias of CDR_UnsignedLongSeq_loan_discontiguous */
689 #define CDR_LongSeq_loan_discontiguous CDR_UnsignedLongSeq_loan_discontiguous
690 
691 /*ci \brief Assign CDR_LongSeq_unloan as alias of CDR_UnsignedLongSeq_unloan */
692 #define CDR_LongSeq_unloan CDR_UnsignedLongSeq_unloan
693 
694 /*ci \brief Assign CDR_LongSeq_has_ownership as alias of CDR_UnsignedLongSeq_has_ownership */
695 #define CDR_LongSeq_has_ownership CDR_UnsignedLongSeq_has_ownership
696 
697 /*ci \brief Assign CDR_LongSeq_get_contiguous_buffer as alias of CDR_UnsignedLongSeq_get_contiguous_buffer */
698 #define CDR_LongSeq_get_contiguous_buffer (CDR_Long *)CDR_UnsignedLongSeq_get_contiguous_buffer
699 
700 /*ci \brief Assign CDR_LongSeq_set_contiguous_buffer as alias of CDR_UnsignedLongSeq_set_contiguous_buffer */
701 #define CDR_LongSeq_set_contiguous_buffer(self_,buff_) CDR_UnsignedLongSeq_set_contiguous_buffer(self_,(CDR_UnsignedLong*)(buff_))
702 
703 /*ci \brief Assign CDR_LongSeq_has_discontiguous_buffer as alias of CDR_UnsignedLongSeq_has_discontiguous_buffer */
704 #define CDR_LongSeq_has_discontiguous_buffer CDR_UnsignedLongSeq_has_discontiguous_buffer
705 
706 /*ci \brief Assign CDR_LongSeq_ensure_length as alias of CDR_UnsignedLongSeq_ensure_length */
707 #define CDR_LongSeq_ensure_length CDR_UnsignedLongSeq_ensure_length
708 
709 /*ci \brief Assign CDR_LongSeq_to_array as alias of CDR_UnsignedLongSeq_to_array */
710 #define CDR_LongSeq_to_array(seq_,elms_seq_,length_) CDR_UnsignedLongSeq_to_array(seq_,(CDR_UnsignedLong*)elms_seq_,length_)
711 
712 /*ci \brief Assign CDR_LongSeq_from_array as alias of CDR_UnsignedLongSeq_from_array */
713 #define CDR_LongSeq_from_array(seq_,elms_seq_,length_) CDR_UnsignedLongSeq_from_array(seq_,(const CDR_UnsignedLong*)elms_seq_,length_)
714 
715 /* CDR_EnumSeq operations */
716 
717 /*ci \brief Assign CDR_EnumSeq_is_equal as alias of CDR_UnsignedLongSeq_is_equal */
718 #define CDR_EnumSeq_is_equal CDR_UnsignedLongSeq_is_equal
719 
720 /*ci \brief Assign CDR_EnumSeq_loan_contiguous as alias of CDR_UnsignedLongSeq_loan_contiguous */
721 #define CDR_EnumSeq_loan_contiguous CDR_UnsignedLongSeq_loan_contiguous
722 
723 /*ci \brief Assign CDR_EnumSeq_loan_discontiguous as alias of CDR_UnsignedLongSeq_loan_discontiguous */
724 #define CDR_EnumSeq_loan_discontiguous CDR_UnsignedLongSeq_loan_discontiguous
725 
726 /*ci \brief Assign CDR_EnumSeq_unloan as alias of CDR_UnsignedLongSeq_unloan */
727 #define CDR_EnumSeq_unloan CDR_UnsignedLongSeq_unloan
728 
729 /*ci \brief Assign CDR_EnumSeq_has_ownership as alias of CDR_UnsignedLongSeq_has_ownership */
730 #define CDR_EnumSeq_has_ownership CDR_UnsignedLongSeq_has_ownership
731 
732 /*ci \brief Assign CDR_EnumSeq_get_contiguous_buffer as alias of CDR_UnsignedLongSeq_get_contiguous_buffer */
733 #define CDR_EnumSeq_get_contiguous_buffer (CDR_Enum*)CDR_UnsignedLongSeq_get_contiguous_buffer
734 
735 /*ci \brief Assign CDR_EnumSeq_set_contiguous_buffer as alias of CDR_UnsignedLongSeq_set_contiguous_buffer */
736 #define CDR_EnumSeq_set_contiguous_buffer(self_,buff_) CDR_UnsignedLongSeq_set_contiguous_buffer(self_,(CDR_UnsignedLong*)(buff_))
737 
738 /*ci \brief Assign CDR_EnumSeq_has_discontiguous_buffer as alias of CDR_UnsignedLongSeq_has_discontiguous_buffer */
739 #define CDR_EnumSeq_has_discontiguous_buffer CDR_UnsignedLongSeq_has_discontiguous_buffer
740 
741 /*ci \brief Assign CDR_EnumSeq_ensure_length as alias of CDR_UnsignedLongSeq_ensure_length */
742 #define CDR_EnumSeq_ensure_length CDR_UnsignedLongSeq_ensure_length
743 
744 /*ci \brief Assign CDR_EnumSeq_to_array as alias of CDR_UnsignedLongSeq_to_array */
745 #define CDR_EnumSeq_to_array(seq_,elms_seq_,length_) CDR_UnsignedLongSeq_to_array(seq_,(CDR_UnsignedLong*)elms_seq_,length_)
746 
747 /*ci \brief Assign CDR_EnumSeq_from_array as alias of CDR_UnsignedLongSeq_from_array */
748 #define CDR_EnumSeq_from_array(seq_,elms_seq_,length_) CDR_UnsignedLongSeq_from_array(seq_,(const CDR_UnsignedLong*)elms_seq_,length_)
749 
750 /* CDR_WcharSeq operations */
751 
752 /*ci \brief Assign CDR_WcharSeq_is_equal as alias of CDR_UnsignedLongSeq_is_equal */
753 #define CDR_WcharSeq_is_equal CDR_UnsignedLongSeq_is_equal
754 
755 /*ci \brief Assign CDR_WcharSeq_loan_contiguous as alias of CDR_UnsignedLongSeq_loan_contiguous */
756 #define CDR_WcharSeq_loan_contiguous CDR_UnsignedLongSeq_loan_contiguous
757 
758 /*ci \brief Assign CDR_WcharSeq_loan_discontiguous as alias of CDR_UnsignedLongSeq_loan_discontiguous */
759 #define CDR_WcharSeq_loan_discontiguous CDR_UnsignedLongSeq_loan_discontiguous
760 
761 /*ci \brief Assign CDR_WcharSeq_unloan as alias of CDR_UnsignedLongSeq_unloan */
762 #define CDR_WcharSeq_unloan CDR_UnsignedLongSeq_unloan
763 
764 /*ci \brief Assign CDR_WcharSeq_has_ownership as alias of CDR_UnsignedLongSeq_has_ownership */
765 #define CDR_WcharSeq_has_ownership CDR_UnsignedLongSeq_has_ownership
766 
767 /*ci \brief Assign CDR_WcharSeq_get_contiguous_buffer as alias of CDR_UnsignedLongSeq_get_contiguous_buffer */
768 #define CDR_WcharSeq_get_contiguous_buffer (CDR_Wchar *)CDR_UnsignedLongSeq_get_contiguous_buffer
769 
770 /*ci \brief Assign CDR_WcharSeq_set_contiguous_buffer as alias of CDR_UnsignedLongSeq_set_contiguous_buffer */
771 #define CDR_WcharSeq_set_contiguous_buffer(self_,buff_) CDR_UnsignedLongSeq_set_contiguous_buffer(self_,(CDR_UnsignedLong*)(buff_))
772 
773 /*ci \brief Assign CDR_WcharSeq_has_discontiguous_buffer as alias of CDR_UnsignedLongSeq_has_discontiguous_buffer */
774 #define CDR_WcharSeq_has_discontiguous_buffer CDR_UnsignedLongSeq_has_discontiguous_buffer
775 
776 /*ci \brief Assign CDR_WcharSeq_ensure_length as alias of CDR_UnsignedLongSeq_ensure_length */
777 #define CDR_WcharSeq_ensure_length CDR_UnsignedLongSeq_ensure_length
778 
779 /*ci \brief Assign CDR_WcharSeq_to_array as alias of CDR_UnsignedLongSeq_to_array */
780 #define CDR_WcharSeq_to_array(seq_,elms_seq_,length_) CDR_UnsignedLongSeq_to_array(seq_,(CDR_UnsignedLong*)elms_seq_,length_)
781 
782 /*ci \brief Assign CDR_WcharSeq_from_array as alias of CDR_UnsignedLongSeq_from_array */
783 #define CDR_WcharSeq_from_array(seq_,elms_seq_,length_) CDR_UnsignedLongSeq_from_array(seq_,(const CDR_UnsignedLong*)elms_seq_,length_)
784 
785 /* CDR_FloatSeq operations */
786 
787 /*ci \brief Assign CDR_FloatSeq_is_equal as alias of CDR_UnsignedLongSeq_is_equal */
788 #define CDR_FloatSeq_is_equal CDR_UnsignedLongSeq_is_equal
789 
790 /*ci \brief Assign CDR_FloatSeq_loan_contiguous as alias of CDR_UnsignedLongSeq_loan_contiguous */
791 #define CDR_FloatSeq_loan_contiguous CDR_UnsignedLongSeq_loan_contiguous
792 
793 /*ci \brief Assign CDR_FloatSeq_loan_discontiguous as alias of CDR_UnsignedLongSeq_loan_discontiguous */
794 #define CDR_FloatSeq_loan_discontiguous CDR_UnsignedLongSeq_loan_discontiguous
795 
796 /*ci \brief Assign CDR_FloatSeq_unloan as alias of CDR_UnsignedLongSeq_unloan */
797 #define CDR_FloatSeq_unloan CDR_UnsignedLongSeq_unloan
798 
799 /*ci \brief Assign CDR_FloatSeq_has_ownership as alias of CDR_UnsignedLongSeq_has_ownership */
800 #define CDR_FloatSeq_has_ownership CDR_UnsignedLongSeq_has_ownership
801 
802 /*ci \brief Assign CDR_FloatSeq_get_contiguous_buffer as alias of CDR_UnsignedLongSeq_get_contiguous_buffer */
803 #define CDR_FloatSeq_get_contiguous_buffer (CDR_Float*)CDR_UnsignedLongSeq_get_contiguous_buffer
804 
805 /*ci \brief Assign CDR_FloatSeq_set_contiguous_buffer as alias of CDR_UnsignedLongSeq_set_contiguous_buffer */
806 #define CDR_FloatSeq_set_contiguous_buffer(self_,buff_) CDR_UnsignedLongSeq_set_contiguous_buffer(self_,(CDR_UnsignedLong*)(buff_))
807 
808 /*ci \brief Assign CDR_FloatSeq_has_discontiguous_buffer as alias of CDR_UnsignedLongSeq_has_discontiguous_buffer */
809 #define CDR_FloatSeq_has_discontiguous_buffer CDR_UnsignedLongSeq_has_discontiguous_buffer
810 
811 /*ci \brief Assign CDR_FloatSeq_ensure_length as alias of CDR_UnsignedLongSeq_ensure_length */
812 #define CDR_FloatSeq_ensure_length CDR_UnsignedLongSeq_ensure_length
813 
814 /*ci \brief Assign CDR_FloatSeq_to_array as alias of CDR_UnsignedLongSeq_to_array */
815 #define CDR_FloatSeq_to_array(seq_,elms_seq_,length_) CDR_UnsignedLongSeq_to_array(seq_,(CDR_UnsignedLong*)elms_seq_,length_)
816 
817 /*ci \brief Assign CDR_FloatSeq_from_array as alias of CDR_UnsignedLongSeq_from_array */
818 #define CDR_FloatSeq_from_array(seq_,elms_seq_,length_) CDR_UnsignedLongSeq_from_array(seq_,(const CDR_UnsignedLong*)elms_seq_,length_)
819 
820 /* CDR_LongLongSeq operations */
821 
822 /*ci \brief Assign CDR_LongLongSeq_is_equal as alias of CDR_UnsignedLongLongSeq_is_equal */
823 #define CDR_LongLongSeq_is_equal CDR_UnsignedLongLongSeq_is_equal
824 
825 /*ci \brief Assign CDR_LongLongSeq_loan_contiguous as alias of CDR_UnsignedLongLongSeq_loan_contiguous */
826 #define CDR_LongLongSeq_loan_contiguous CDR_UnsignedLongLongSeq_loan_contiguous
827 
828 /*ci \brief Assign CDR_LongLongSeq_loan_discontiguous as alias of CDR_UnsignedLongLongSeq_loan_discontiguous */
829 #define CDR_LongLongSeq_loan_discontiguous CDR_UnsignedLongLongSeq_loan_discontiguous
830 
831 /*ci \brief Assign CDR_LongLongSeq_unloan as alias of CDR_UnsignedLongLongSeq_unloan */
832 #define CDR_LongLongSeq_unloan CDR_UnsignedLongLongSeq_unloan
833 
834 /*ci \brief Assign CDR_LongLongSeq_has_ownership as alias of CDR_UnsignedLongLongSeq_has_ownership */
835 #define CDR_LongLongSeq_has_ownership CDR_UnsignedLongLongSeq_has_ownership
836 
837 /*ci \brief Assign CDR_LongLongSeq_get_contiguous_buffer as alias of CDR_UnsignedLongLongSeq_get_contiguous_buffer */
838 #define CDR_LongLongSeq_get_contiguous_buffer (CDR_LongLong*)CDR_UnsignedLongLongSeq_get_contiguous_buffer
839 
840 /*ci \brief Assign CDR_LongLongSeq_set_contiguous_buffer as alias of CDR_UnsignedLongLongSeq_set_contiguous_buffer */
841 #define CDR_LongLongSeq_set_contiguous_buffer(self_,buff_) CDR_UnsignedLongLongSeq_set_contiguous_buffer(self_,(CDR_UnsignedLongLong*)(buff_))
842 
843 /*ci \brief Assign CDR_LongLongSeq_has_discontiguous_buffer as alias of CDR_UnsignedLongLongSeq_has_discontiguous_buffer */
844 #define CDR_LongLongSeq_has_discontiguous_buffer CDR_UnsignedLongLongSeq_has_discontiguous_buffer
845 
846 /*ci \brief Assign CDR_LongLongSeq_ensure_length as alias of CDR_UnsignedLongLongSeq_ensure_length */
847 #define CDR_LongLongSeq_ensure_length CDR_UnsignedLongLongSeq_ensure_length
848 
849 /*ci \brief Assign CDR_LongLongSeq_to_array as alias of CDR_UnsignedLongLongSeq_to_array */
850 #define CDR_LongLongSeq_to_array(seq_,elms_seq_,length_) CDR_UnsignedLongLongSeq_to_array(seq_,(CDR_UnsignedLongLong*)elms_seq_,length_)
851 
852 /*ci \brief Assign CDR_LongLongSeq_from_array as alias of CDR_UnsignedLongLongSeq_from_array */
853 #define CDR_LongLongSeq_from_array(seq_,elms_seq_,length_) CDR_UnsignedLongLongSeq_from_array(seq_,(const CDR_UnsignedLongLong*)elms_seq_,length_)
854 
855 /* CDR_DoubleSeq operations */
856 
857 /*ci \brief Assign CDR_DoubleSeq_is_equal as alias of CDR_UnsignedLongLongSeq_is_equal */
858 #define CDR_DoubleSeq_is_equal CDR_UnsignedLongLongSeq_is_equal
859 
860 /*ci \brief Assign CDR_DoubleSeq_loan_contiguous as alias of CDR_UnsignedLongLongSeq_loan_contiguous */
861 #define CDR_DoubleSeq_loan_contiguous CDR_UnsignedLongLongSeq_loan_contiguous
862 
863 /*ci \brief Assign CDR_DoubleSeq_loan_discontiguous as alias of CDR_UnsignedLongLongSeq_loan_discontiguous */
864 #define CDR_DoubleSeq_loan_discontiguous CDR_UnsignedLongLongSeq_loan_discontiguous
865 
866 /*ci \brief Assign CDR_DoubleSeq_unloan as alias of CDR_UnsignedLongLongSeq_unloan */
867 #define CDR_DoubleSeq_unloan CDR_UnsignedLongLongSeq_unloan
868 
869 /*ci \brief Assign CDR_DoubleSeq_has_ownership as alias of CDR_UnsignedLongLongSeq_has_ownership */
870 #define CDR_DoubleSeq_has_ownership CDR_UnsignedLongLongSeq_has_ownership
871 
872 /*ci \brief Assign CDR_DoubleSeq_get_contiguous_buffer as alias of CDR_UnsignedLongLongSeq_get_contiguous_buffer */
873 #define CDR_DoubleSeq_get_contiguous_buffer (CDR_Double *)CDR_UnsignedLongLongSeq_get_contiguous_buffer
874 
875 /*ci \brief Assign CDR_DoubleSeq_set_contiguous_buffer as alias of CDR_UnsignedLongLongSeq_set_contiguous_buffer */
876 #define CDR_DoubleSeq_set_contiguous_buffer(self_,buff_) CDR_UnsignedLongLongSeq_set_contiguous_buffer(self_,(CDR_UnsignedLongLong*)(buff_))
877 
878 /*ci \brief Assign CDR_DoubleSeq_has_discontiguous_buffer as alias of CDR_UnsignedLongLongSeq_has_discontiguous_buffer */
879 #define CDR_DoubleSeq_has_discontiguous_buffer CDR_UnsignedLongLongSeq_has_discontiguous_buffer
880 
881 /*ci \brief Assign CDR_DoubleSeq_ensure_length as alias of CDR_UnsignedLongLongSeq_ensure_length */
882 #define CDR_DoubleSeq_ensure_length CDR_UnsignedLongLongSeq_ensure_length
883 
884 /*ci \brief Assign CDR_DoubleSeq_to_array as alias of CDR_UnsignedLongLongSeq_to_array */
885 #define CDR_DoubleSeq_to_array(seq_,elms_seq_,length_) CDR_UnsignedLongLongSeq_to_array(seq_,(CDR_UnsignedLongLong*)elms_seq_,length_)
886 
887 /*ci \brief Assign CDR_DoubleSeq_from_array as alias of CDR_UnsignedLongLongSeq_from_array */
888 #define CDR_DoubleSeq_from_array(seq_,elms_seq_,length_) CDR_UnsignedLongLongSeq_from_array(seq_,(const CDR_UnsignedLongLong*)elms_seq_,length_)
889 
890 #endif
891 
892 #endif /* REDA_SEQUENCE_API_USER_DEFAULT > REDA_SEQUENCE_API_BASIC */
893 
894 #if REDA_SEQUENCE_API > REDA_SEQUENCE_API_FULL
895 #error "REDA_SEQUENCE_API_UNTYPED <= REDA_SEQUENCE_API <= REDA_SEQUENCE_API_FULL"
896 #endif
897 
898 
899 /*ci \brief Property Sequence */
900 #define T struct CDR_Property
901 #define TSeq CDR_PropertySeq
902 #define REDA_SEQUENCE_API REDA_SEQUENCE_API_UNTYPED
903 #define TSeq_initialize
904 #define TSeq_get_length
905 #define TSeq_set_length
906 #define TSeq_get_reference
907 #include <reda/reda_sequence_decl.h>
908 
909 /* ================================================================= */
910 /* CDR Primitive Type Enumeration and Attributes */
911 /* ================================================================= */
912 /*ci \brief Primitive type enum */
913 typedef enum
914 {
915  CDR_CHAR_TYPE,
916  CDR_WCHAR_TYPE,
917  CDR_OCTET_TYPE,
918  CDR_SHORT_TYPE,
919  CDR_UNSIGNED_SHORT_TYPE,
920  CDR_LONG_TYPE,
921  CDR_UNSIGNED_LONG_TYPE,
922  CDR_LONG_LONG_TYPE,
923  CDR_UNSIGNED_LONG_LONG_TYPE,
924  CDR_FLOAT_TYPE,
925  CDR_DOUBLE_TYPE,
926  CDR_LONG_DOUBLE_TYPE,
927  CDR_BOOLEAN_TYPE,
928  CDR_ENUM_TYPE,
929 } CdrPrimitiveType;
930 
931 /*ci \brief Boolean type size */
932 #define CDR_BOOLEAN_SIZE 1
933 
934 /*ci \brief Octet type size */
935 #define CDR_OCTET_SIZE 1
936 
937 /*ci \brief Char type size */
938 #define CDR_CHAR_SIZE 1
939 
940 /*ci \brief Short type size */
941 #define CDR_SHORT_SIZE 2
942 
943 /*ci \brief Unsigned Short type size */
944 #define CDR_UNSIGNED_SHORT_SIZE 2
945 
946 /*ci \brief Long type size */
947 #define CDR_LONG_SIZE 4
948 
949 /*ci \brief Unsigned Long type size */
950 #define CDR_UNSIGNED_LONG_SIZE 4
951 
952 /*ci \brief Float type size */
953 #define CDR_FLOAT_SIZE 4
954 
955 /*ci \brief WChar type size */
956 #define CDR_WCHAR_SIZE 4
957 
958 /*ci \brief Enum type size */
959 #define CDR_ENUM_SIZE 4
960 
961 /*ci \brief Long Long type size */
962 #define CDR_LONG_LONG_SIZE 8
963 
964 /*ci \brief Unsigned Long Long type size */
965 #define CDR_UNSIGNED_LONG_LONG_SIZE 8
966 
967 /*ci \brief Double type size */
968 #define CDR_DOUBLE_SIZE 8
969 
970 /*ci \brief Long Double type size */
971 #define CDR_LONG_DOUBLE_SIZE 16
972 
973 /******************************************************************************/
974 /*ci \brief Octet type alignment */
975 #define CDR_OCTET_ALIGN 1
976 
977 /*ci \brief Short type alignment */
978 #define CDR_SHORT_ALIGN 2
979 
980 /*ci \brief Long type alignment */
981 #define CDR_LONG_ALIGN 4
982 
983 /*ci \brief Float type alignment */
984 #define CDR_FLOAT_ALIGN 4
985 
986 /*ci \brief Long Long type alignment */
987 #define CDR_LONG_LONG_ALIGN 8
988 
989 /*ci \brief Double type alignment */
990 #define CDR_DOUBLE_ALIGN 8
991 
992 /*ci \brief Long Double type alignment */
993 #define CDR_LONG_DOUBLE_ALIGN 8
994 
995 /*ci \brief Get alignment of a given type
996  *
997  * \param[in] type Type to get alignment
998  *
999  * \return Alignment in bytes of input type
1000  */
1001 RTI_UINT32
1002 CDR_Primitive_get_alignment(CdrPrimitiveType type);
1003 
1004 
1005 /*ci \brief Get size of a given type
1006  *
1007  * \param[in] type Type to get size
1008  *
1009  * \return Size in bytes of input type
1010  */
1011 RTI_UINT32
1012 CDR_Primitive_get_size(CdrPrimitiveType type);
1013 
1014 
1015 /* ================================================================= */
1016 /* Type Specific Initialization & Copy */
1017 /* ================================================================= */
1018 /* not all types are atomic so we define macros to emulate as needed */
1019 
1020 /*ci \brief Initialize Char
1021  * \param[inout] value Pointer to value to initialize
1022  */
1023 #define CDR_Primitive_init_char(value) *(value) = 0
1024 
1025 /*ci \brief Initialize Octet
1026  * \param[inout] value Pointer to value to initialize
1027  */
1028 #define CDR_Primitive_init_octet(value) *(value) = 0
1029 
1030 /*ci \brief Initialize Boolean
1031  * \param[inout] value Pointer to value to initialize
1032  */
1033 #define CDR_Primitive_init_boolean(value) *(value) = 0
1034 
1035 /*ci \brief Initialize Short
1036  * \param[inout] value Pointer to value to initialize
1037  */
1038 #define CDR_Primitive_init_short(value) *(value) = 0
1039 
1040 /*ci \brief Initialize Unsigned Short
1041  * \param[inout] value Pointer to value to initialize
1042  */
1043 #define CDR_Primitive_init_unsigned_short(value) *(value) = 0
1044 
1045 /*ci \brief Initialize Long
1046  * \param[inout] value Pointer to value to initialize
1047  */
1048 #define CDR_Primitive_init_long(value) *(value) = 0
1049 
1050 /*ci \brief Initialize Unsigned Long
1051  * \param[inout] value Pointer to value to initialize
1052  */
1053 #define CDR_Primitive_init_unsigned_long(value) *(value) = 0
1054 
1055 /*ci \brief Initialize WChar
1056  * \param[inout] value Pointer to value to initialize
1057  */
1058 #define CDR_Primitive_init_wchar(value) *(value) = 0
1059 
1060 /*ci \brief Initialize Enum
1061  * \param[inout] value Pointer to value to initialize
1062  */
1063 #define CDR_Primitive_init_enum(value) *(value) = 0
1064 
1065 /*ci \brief Initialize Float
1066  * \param[inout] value Pointer to value to initialize
1067  */
1068 #define CDR_Primitive_init_float(value) *(value) = 0
1069 
1070 /*ci \brief Initialize Long Long
1071  * \param[inout] value Pointer to value to initialize
1072  */
1073 #define CDR_Primitive_init_long_long(value) *(value) = 0
1074 
1075 /*ci \brief Initialize Unsigned Long Long
1076  * \param[inout] value Pointer to value to initialize
1077  */
1078 #define CDR_Primitive_init_unsigned_long_long(value) *(value) = 0
1079 
1080 /*ci \brief Initialize Double
1081  * \param[inout] value Pointer to value to initialize
1082  */
1083 #define CDR_Primitive_init_double(value) *(value) = 0
1084 
1085 /*ci \brief Initialize Long Double
1086  * \param[inout] value Pointer to value to initialize
1087  */
1088 #ifdef RTI_HAVE_LONG_DOUBLE
1089 #define CDR_Primitive_init_long_double(value) *(value) = 0
1090 #else
1091 #define CDR_Primitive_init_long_double(value) \
1092  OSAPI_Memory_zero(value,sizeof(RTI_DOUBLE128))
1093 #endif
1094 
1095 /*ci \brief Initialize String
1096  * \param[inout] value Pointer to String to initialize
1097  * \param[in] maxsize Maximum string size
1098  */
1099 #define CDR_Primitive_init_string(value,maxsize) \
1100  OSAPI_Memory_zero(value,maxsize)
1101 
1102 /*ci \brief Initialize WString
1103  * \param[inout] value Pointer to WString to initialize
1104  * \param[in] maxsize Maximum string size
1105  */
1106 #define CDR_Primitive_init_wstring(value,maxsize) \
1107  OSAPI_Memory_zero(value,((maxsize)*CDR_WCHAR_SIZE))
1108 
1109 /*ci \brief Initialize Array
1110  * \param[inout] value Pointer to array to initialize
1111  * \param[in] maxsize Maximum Array length
1112  */
1113 #define CDR_Primitive_init_array(value,maxsize) \
1114  OSAPI_Memory_zero(value,maxsize)
1115 
1116 /******************************************************************************/
1117 /*ci \brief Copy Char
1118  * \param[inout] dst Destination of copy
1119  * \param[in] src Source to copy
1120  */
1121 #define CDR_Primitive_copy_char(dst,src) *(dst) = *(src)
1122 
1123 /*ci \brief Copy Octet
1124  * \param[inout] dst Destination of copy
1125  * \param[in] src Source to copy
1126  */
1127 #define CDR_Primitive_copy_octet(dst,src) *(dst) = *(src)
1128 
1129 /*ci \brief Copy Boolean
1130  * \param[inout] dst Destination of copy
1131  * \param[in] src Source to copy
1132  */
1133 #define CDR_Primitive_copy_boolean(dst,src) *(dst) = *(src)
1134 
1135 /*ci \brief Copy Short
1136  * \param[inout] dst Destination of copy
1137  * \param[in] src Source to copy
1138  */
1139 #define CDR_Primitive_copy_short(dst,src) *(dst) = *(src)
1140 
1141 /*ci \brief Copy Unsigned Short
1142  * \param[inout] dst Destination of copy
1143  * \param[in] src Source to copy
1144  */
1145 #define CDR_Primitive_copy_unsigned_short(dst,src) *(dst) = *(src)
1146 
1147 /*ci \brief Copy Long
1148  * \param[inout] dst Destination of copy
1149  * \param[in] src Source to copy
1150  */
1151 #define CDR_Primitive_copy_long(dst,src) *(dst) = *(src)
1152 
1153 /*ci \brief Copy Unsigned Long
1154  * \param[inout] dst Destination of copy
1155  * \param[in] src Source to copy
1156  */
1157 #define CDR_Primitive_copy_unsigned_long(dst,src) *(dst) = *(src)
1158 
1159 /*ci \brief Copy WChar
1160  * \param[inout] dst Destination of copy
1161  * \param[in] src Source to copy
1162  */
1163 #define CDR_Primitive_copy_wchar(dst,src) *(dst) = *(src)
1164 
1165 /*ci \brief Copy Enum
1166  * \param[inout] dst Destination of copy
1167  * \param[in] src Source to copy
1168  */
1169 #define CDR_Primitive_copy_enum(dst,src) *(dst) = *(src)
1170 
1171 /*ci \brief Copy Float
1172  * \param[inout] dst Destination of copy
1173  * \param[in] src Source to copy
1174  */
1175 #define CDR_Primitive_copy_float(dst,src) *(dst) = *(src)
1176 
1177 /*ci \brief Copy Long Long
1178  * \param[inout] dst Destination of copy
1179  * \param[in] src Source to copy
1180  */
1181 #define CDR_Primitive_copy_long_long(dst,src) *(dst) = *(src)
1182 
1183 /*ci \brief Copy Unsigned Long Long
1184  * \param[inout] dst Destination of copy
1185  * \param[in] src Source to copy
1186  */
1187 #define CDR_Primitive_copy_unsigned_long_long(dst,src) *(dst) = *(src)
1188 
1189 /*ci \brief Copy Double
1190  * \param[inout] dst Destination of copy
1191  * \param[in] src Source to copy
1192  */
1193 #define CDR_Primitive_copy_double(dst,src) *(dst) = *(src)
1194 
1195 /*ci \brief Copy Long Double
1196  * \param[inout] dst Destination of copy
1197  * \param[in] src Source to copy
1198  */
1199 #ifdef RTI_HAVE_LONG_DOUBLE
1200 #define CDR_Primitive_copy_long_double(dst,src) *(dst) = *(src)
1201 #else
1202 #define CDR_Primitive_copy_long_double(dst,src) \
1203  OSAPI_Memory_copy((void*)dst,(void*)src,sizeof(RTI_DOUBLE128))
1204 #endif
1205 
1206 /*ci \brief Copy String
1207  * \param[inout] dst Destination of copy
1208  * \param[in] src Source to copy
1209  */
1210 #define CDR_Primitive_copy_string(dst,src,maxsize) \
1211  OSAPI_Memory_copy((void*)dst,(void*)src,maxsize)
1212 
1213 /*ci \brief Copy WString
1214  * \param[inout] dst Destination of copy
1215  * \param[in] src Source to copy
1216  */
1217 #define CDR_Primitive_copy_wstring(dst,src,maxsize) \
1218  OSAPI_Memory_copy((void*)dst,(void*)src,((maxsize)*CDR_WCHAR_SIZE))
1219 
1220 /*ci \brief Copy Array
1221  * \param[inout] dst Destination of copy
1222  * \param[in] src Source to copy
1223  */
1224 #define CDR_Primitive_copy_array(dst,src,maxsize) \
1225  OSAPI_Memory_copy((void*)dst,(void*)src,maxsize)
1226 
1227 /*==============================================================================
1228  * Type Helper Functions and
1229  * String Sequence support wrapper functions to convert from String* to Char*
1230  * ===========================================================================*/
1231 
1232 /*ci
1233  * \brief
1234  * Initialize memory for string
1235  *
1236  * \param[inout] string String to initialize
1237  * \param[in] max_str_len Maximum string length
1238  *
1239  * \return RTI_TRUE on success, RTI_FALSE on failure
1240  */
1241 MUST_CHECK_RETURN CDRDllExport RTI_BOOL
1242 CDR_String_initialize(CDR_String *, RTI_UINT32 max_str_len);
1243 
1244 /*ci
1245  * \brief
1246  * Finalize string
1247  *
1248  * \details
1249  * Note, CDR_String_finalize is required to return an RTI_BOOL to comply with
1250  * the expected interface for finalize functions needed by sequence methods
1251  *
1252  * \param[inout] string String to finalize
1253  *
1254  * \return RTI_TRUE on success, RTI_FALSE on failure
1255  */
1256 SHOULD_CHECK_RETURN CDRDllExport RTI_BOOL
1257 CDR_String_finalize(CDR_String * string);
1258 
1259 /*ci
1260  * \brief
1261  * Copy from source to destination string
1262  *
1263  * \param[inout] dst Destination string
1264  * \param[in] src Source string
1265  * \param[in] max_str_len Maximum length of source string
1266  *
1267  * \return RTI_TRUE on success, RTI_FALSE on failure
1268  */
1269 MUST_CHECK_RETURN CDRDllExport RTI_BOOL
1270 CDR_String_copy(CDR_String * dst, const CDR_String * src, RTI_UINT32 max_str_len);
1271 
1272 /*ci
1273  * \brief
1274  * Compare two strings
1275  *
1276  * \param[in] left Left string
1277  * \param[in] right Right string
1278  *
1279  * \return 1, 0, or -1 if the left string is greater than, equal to, or less
1280  * than the right string, respectively.
1281  */
1282 MUST_CHECK_RETURN CDRDllExport RTI_INT32
1283 CDR_String_compare(const CDR_String * left, const CDR_String * right);
1284 
1285 /*ci
1286  * \brief
1287  * Allocates and initializes memory for a wide char string
1288  *
1289  * \param[inout] Wstring to initialize
1290  * \param[in] max_str_len
1291  *
1292  * \return RTI_BOOL on success with wstring initialized, RTI_FALSE on failure.
1293  */
1294 MUST_CHECK_RETURN CDRDllExport RTI_BOOL
1295 CDR_Wstring_initialize(CDR_Wstring *, RTI_UINT32 max_str_len);
1296 
1297 /*ci
1298  * \brief
1299  * Finalize a wide char string
1300  *
1301  * \details
1302  * Note, CDR_Wstring_finalize is required to return an RTI_BOOL to comply with
1303  * the expected interface for finalize functions needed by sequence methods
1304  *
1305  * \param[in] wstring Wstring to finalize
1306  *
1307  * \return RTI_TRUE
1308  */
1309 SHOULD_CHECK_RETURN CDRDllExport RTI_BOOL
1310 CDR_Wstring_finalize(CDR_Wstring * wstring);
1311 
1312 /*ci
1313  * \brief
1314  * Returns length in bytes of wide char string
1315  *
1316  * \param[in] wstring
1317  *
1318  * \return Length of wstring in bytes
1319  */
1320 CDRDllExport RTI_SIZE_T
1321 CDR_Wstring_length(const CDR_Wchar * wstring);
1322 
1323 /*ci
1324  * \brief
1325  * Copy from source to destination wide char string
1326  *
1327  * \param[inout] dst Destination string
1328  * \param[in] src Source string
1329  * \param[in] max_str_len Maximum length of source string
1330  *
1331  * \return RTI_TRUE on success, RTI_FALSE on failure
1332  */
1333 MUST_CHECK_RETURN CDRDllExport RTI_BOOL
1334 CDR_Wstring_copy(CDR_Wstring * dst, const CDR_Wstring * src,
1335  RTI_UINT32 max_str_len);
1336 
1337 /*ci
1338  * \brief
1339  * Compare two wide char strings
1340  *
1341  * \param[in] left Left string
1342  * \param[in] right Right string
1343  *
1344  * \return 1, 0, or -1 if the left string is greater than, equal to, or less
1345  * than the right string, respectively.
1346  */
1347 MUST_CHECK_RETURN CDRDllExport RTI_INT32
1348 CDR_Wstring_compare(const CDR_Wstring * left, const CDR_Wstring * right);
1349 
1350 /*ci
1351  * \brief
1352  * Initialize an array of char or wide char strings
1353  *
1354  * \param[inout] value Preallocated buffer for array
1355  * \param[in] length Length of array
1356  * \param[in] max_str_len Maximum length of each string
1357  * \param[in] type Char or Wide Char type of string
1358  *
1359  * \return RTI_TRUE on success with each string of array initialized,
1360  * RTI_FALSE on failure
1361  */
1362 MUST_CHECK_RETURN CDRDllExport RTI_BOOL
1363 CDR_StringArray_initialize(void *value, RTI_UINT32 length,
1364  RTI_UINT32 max_str_len,
1365  CdrPrimitiveType type);
1366 
1367 /*ci
1368  * \brief
1369  * Finalize an array of char or wide char strings
1370  *
1371  * \param[inout] value Array pointer
1372  * \param[in] length Length of array
1373  * \param[in] type Char or Wide Char type of string
1374  *
1375  * \return RTI_TRUE on success with each string of array finalized,
1376  * RTI_FALSE on failure
1377  */
1378 SHOULD_CHECK_RETURN CDRDllExport RTI_BOOL
1379 CDR_StringArray_finalize(void *value, RTI_UINT32 length,
1380  CdrPrimitiveType type);
1381 
1382 /*ci
1383  * \brief
1384  * Copy an array of char or wide char strings to another array
1385  *
1386  * \param[out] out Destination array
1387  * \param[in] in Source array
1388  * \param[in] max_str_len Maximum string length of source
1389  * \param[in] type Char or Wide Char type of string
1390  *
1391  * \return RTI_TRUE on success, RTI_FALSE on failure
1392  */
1393 MUST_CHECK_RETURN CDRDllExport RTI_BOOL
1394 CDR_StringArray_copy(void *out, const void* in,
1395  RTI_UINT32 length,
1396  RTI_UINT32 max_str_len,
1397  CdrPrimitiveType type);
1398 
1399 /*==============================================================================
1400  * ===========================================================================*/
1401 
1402 #ifdef __cplusplus
1403 }
1404 #endif /* __cplusplus */
1405 
1406 
1407 #endif /* cdr_cdr_type_h */
1408 
1409 /*ci @} */

RTI Connext DDS Micro Version 2.4.8 Copyright © Tue Apr 12 2016 Real-Time Innovations, Inc