RTI Connext DDS Micro  Version 2.4.11
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
dds_c_sequence.h File Reference

DDS sequence definitions. More...

#include "dds_c/dds_c_dll.h"
#include "dds_c/dds_c_common.h"
#include "reda/reda_sequence.h"

Go to the source code of this file.

Data Structures

struct  FooSeq
 <<interface>> <<generic>> <<cert>> A type-safe, ordered collection of elements. The type of these elements is referred to in this documentation as "Foo". More...

Macros

#define DDS_SEQUENCE_INITIALIZER
 An initializer for new sequence instances.

Functions

DDS_Boolean FooSeq_initialize (struct FooSeq *self)
 <<cert>> Initialize sequence instances.
DDS_Boolean FooSeq_finalize (struct FooSeq *self)
 Finalize sequence instances.
DDS_Long FooSeq_get_maximum (const struct FooSeq *self)
 <<cert>> Get the current maximum number of elements that can be stored in this sequence. The maximum of the sequence represents the maximum number of elements that the underlying buffer can hold. It does not represent the current number of elements. The maximum is a non-negative number. It is initialized when the sequence is first created and can only be changed by mean of the FooSeq_set_maximum operation.
DDS_Boolean FooSeq_set_maximum (struct FooSeq *self, DDS_Long new_max)
 <<cert>> Resize this sequence to a new desired maximum.
DDS_Boolean FooSeq_set_maximum_w_max (struct FooSeq *self, DDS_Long new_max, DDS_UnsignedLong max_size)
 <<cert>> Resize this sequence to a new desired maximum and allocate max_size + 1 bytes for each pointer element.
DDS_Long FooSeq_get_length (const struct FooSeq *self)
 <<cert>> Get the logical length of this sequence. Get the length that was last set, or zero if the length has never been set.
DDS_Boolean FooSeq_set_length (struct FooSeq *self, DDS_Long new_length)
 <<cert>> Change the length of this sequence.
Foo * FooSeq_get_reference (const struct FooSeq *self, DDS_Long i)
 <<cert>> Get the pointer to the i-th element of this sequence.
struct FooSeqFooSeq_copy (struct FooSeq *self, const struct FooSeq *src_seq)
 Copy elements from another sequence, resizing the sequence if necessary.
struct FooSeqFooSeq_copy_w_max (struct FooSeq *self, const struct FooSeq *src_seq, DDS_UnsignedLong max_size)
 Copy elements from another sequence, resizing the sequence if necessary.
DDS_Boolean FooSeq_is_equal (struct FooSeq *self, struct FooSeq *other)
 Checks whether two sequences have the same contents.
DDS_Boolean FooSeq_loan_contiguous (struct FooSeq *self, void *buffer, DDS_Long new_length, DDS_Long new_max)
 Loan a contiguous buffer to this sequence.
DDS_Boolean FooSeq_loan_discontiguous (struct FooSeq *self, void *buffer, DDS_Long new_length, DDS_Long new_max)
 Loan a discontiguous buffer to this sequence.
DDS_Boolean FooSeq_unloan (struct FooSeq *self)
 Return the loaned buffer in the sequence and set the maximum to 0.
DDS_Boolean FooSeq_has_ownership (const struct FooSeq *self)
 Return the value of the owned flag.
Foo * FooSeq_get_contiguous_buffer (struct FooSeq *self)
 Access the internal buffer of a sequence.
DDS_Boolean FooSeq_set_contiguous_buffer (struct FooSeq *self, Foo *buffer)
 Set the internal buffer of a sequence.
DDS_Boolean FooSeq_has_discontiguous_buffer (const struct FooSeq *self)
 Check whether a sequence uses a contiguous or discontiguous buffer for its elements.
DDS_Boolean FooSeq_set_token (const struct FooSeq *self, void *token1, void *token2)
 Sets tokens on a sequence.
DDS_Boolean FooSeq_get_token (const struct FooSeq *self, void **token1, void **token2)
 Gets tokens of a sequence.
DDS_Boolean FooSeq_ensure_length (struct FooSeq *self, DDS_Long length, DDS_Long max)
 Set the sequence to the desired length, and resize the sequence if necessary.
DDS_Boolean FooSeq_ensure_length_w_max (struct FooSeq *self, DDS_Long length, DDS_Long max, DDS_UnsignedLong max_size)
 Set the sequence to the desired length, and resize the sequence if necessary, and allocate each pointer element to max_size + 1 bytes.
DDS_Boolean FooSeq_from_array (struct FooSeq *self, const Foo array[], DDS_Long length)
 Copy elements from an array of elements, resizing the sequence if necessary. The original contents of the sequence (if any) are replaced.
DDS_Boolean FooSeq_from_array_w_max (struct FooSeq *self, const Foo array[], DDS_Long length, DDS_UnsignedLong max_size)
 Copy elements from an array of pointer elements, resizing the sequence if necessary, where each pointer elements has been preallocated to max_size. The original contents of the sequence (if any) are replaced.
DDS_Boolean FooSeq_to_array (struct FooSeq *self, const Foo array[], DDS_Long length)
 Copy elements to an array of elements. The original contents of the array (if any) are replaced.
DDS_Boolean FooSeq_to_array_w_max (struct FooSeq *self, const Foo array[], RTI_INT32 length, DDS_UnsignedLong max_size)
 Copy elements to an array of pointer elements, where each pointer element is pre-allocated. The original contents of the array (if any) are replaced.

Detailed Description

DDS sequence definitions.


RTI Connext DDS Micro Version 2.4.11 Copyright © Mon Jul 23 2018 Real-Time Innovations, Inc