RTI Connext .NET API (legacy)  Version 6.1.1
DDS::DynamicDataTypeSerializationProperty_t Class Reference

Properties that govern how data of a certain type will be serialized on the network. More...

#include <managed_dynamicdata.h>

Public Attributes

System::Boolean use_42e_compatible_alignment
 [No longer supported] Use RTI Connext 4.2e-compatible alignment for large primitive types. More...
 
System::Boolean trim_to_size
 Controls the growth of the buffer in a DynamicData object. More...
 
System::UInt32 max_size_serialized
 [No longer supported] If you were previously using this property, use DDS::DynamicDataProperty_t::buffer_max_size instead. The maximum number of bytes that objects of a given type could consume when serialized on the network. More...
 
System::UInt32 min_size_serialized
 [No longer supported] If you were previously using this property, use DDS::DynamicDataProperty_t::buffer_initial_size instead. The minimum number of bytes that objects of a given type could consume when serialized on the network. More...
 

Detailed Description

Properties that govern how data of a certain type will be serialized on the network.

Member Data Documentation

◆ use_42e_compatible_alignment

System::Boolean DDS::DynamicDataTypeSerializationProperty_t::use_42e_compatible_alignment
getset

[No longer supported] Use RTI Connext 4.2e-compatible alignment for large primitive types.

In RTI Connext 4.2e, the default alignment for large primitive types – System::Int64, System::UInt64, System::Double, and DDS::LongDouble – was not RTPS-compliant. This compatibility mode allows applications targeting post-4.2e versions of RTI Connext to interoperate with 4.2e-based applications, regardless of the data types they use.

If this flag is not set, all data will be serialized in an RTPS-compliant manner, which for the types listed above, will not be interoperable with RTI Connext 4.2e.

◆ trim_to_size

System::Boolean DDS::DynamicDataTypeSerializationProperty_t::trim_to_size
getset

Controls the growth of the buffer in a DynamicData object.

This property only applies to DynamicData samples that are obtained from the sample pool that is created by each DynamicData DataReader.

If set to 0 (default): The buffer will not be reallocated unless the deserialized size of the incoming sample is greater than the current buffer size.

If set to 1: The buffer of a DynamicData object obtained from the DDS sample pool will be freed and re-allocated for each sample to just fit the size of the deserialized data of the incoming sample. The newly allocated size will not be smaller than DDS::DynamicDataProperty_t::buffer_initial_size.

◆ max_size_serialized

System::UInt32 DDS::DynamicDataTypeSerializationProperty_t::max_size_serialized

[No longer supported] If you were previously using this property, use DDS::DynamicDataProperty_t::buffer_max_size instead. The maximum number of bytes that objects of a given type could consume when serialized on the network.

This value is used to set the sizes of certain internal middleware buffers.

The effective value of the maximum serialized size will be the value of this field or the size automatically inferred from the type's DDS::TypeCode, whichever is smaller.

◆ min_size_serialized

System::UInt32 DDS::DynamicDataTypeSerializationProperty_t::min_size_serialized

[No longer supported] If you were previously using this property, use DDS::DynamicDataProperty_t::buffer_initial_size instead. The minimum number of bytes that objects of a given type could consume when serialized on the network.

This value is used to set the sizes of certain internal middleware buffers.

Default: 0xFFFFFFFF, a sentinel that indicates that this value must be equal to the value specified in max_size_serialized.