DDS_DomainParticipantResourceLimitsQosPolicy Struct Reference
[DOMAIN_PARTICIPANT_RESOURCE_LIMITS]

Various settings that configure how a DDS_DomainParticipant allocates and uses physical memory for internal resources, including the maximum sizes of various properties. More...


Data Fields

struct DDS_AllocationSettings_t local_writer_allocation
 Allocation settings applied to local DataWriters.
struct DDS_AllocationSettings_t local_reader_allocation
 Allocation settings applied to local DataReaders.
struct DDS_AllocationSettings_t local_publisher_allocation
 Allocation settings applied to local Publisher.
struct DDS_AllocationSettings_t local_subscriber_allocation
 Allocation settings applied to local Subscriber.
struct DDS_AllocationSettings_t local_topic_allocation
 Allocation settings applied to local Topic.
struct DDS_AllocationSettings_t remote_writer_allocation
 Allocation settings applied to remote DataWriters.
struct DDS_AllocationSettings_t remote_reader_allocation
 Allocation settings applied to remote DataReaders.
struct DDS_AllocationSettings_t remote_participant_allocation
 Allocation settings applied to remote DomainParticipants.
struct DDS_AllocationSettings_t matching_writer_reader_pair_allocation
 Allocation settings applied to matching local writer and remote/local reader pairs.
struct DDS_AllocationSettings_t matching_reader_writer_pair_allocation
 Allocation settings applied to matching local reader and remote/local writer pairs.
struct DDS_AllocationSettings_t ignored_entity_allocation
 Allocation settings applied to ignored entities.
struct DDS_AllocationSettings_t content_filtered_topic_allocation
 Allocation settings applied to content filtered topic.
struct DDS_AllocationSettings_t content_filter_allocation
 Allocation settings applied to content filter.
struct DDS_AllocationSettings_t read_condition_allocation
 Allocation settings applied to read condition pool.
struct DDS_AllocationSettings_t query_condition_allocation
 Allocation settings applied to query condition pool.
struct DDS_AllocationSettings_t outstanding_asynchronous_sample_allocation
 Allocation settings applied to the maximum number of samples (from all DDS_DataWriter) waiting to be asynchronously written.
struct DDS_AllocationSettings_t flow_controller_allocation
 Allocation settings applied to flow controllers.
DDS_Long local_writer_hash_buckets
 Hash_Buckets settings applied to local DataWriters.
DDS_Long local_reader_hash_buckets
 Number of hash buckets for local DataReaders.
DDS_Long local_publisher_hash_buckets
 Number of hash buckets for local Publisher.
DDS_Long local_subscriber_hash_buckets
 Number of hash buckets for local Subscriber.
DDS_Long local_topic_hash_buckets
 Number of hash buckets for local Topic.
DDS_Long remote_writer_hash_buckets
 Number of hash buckets for remote DataWriters.
DDS_Long remote_reader_hash_buckets
 Number of hash buckets for remote DataReaders.
DDS_Long remote_participant_hash_buckets
 Number of hash buckets for remote DomainParticipants.
DDS_Long matching_writer_reader_pair_hash_buckets
 Number of hash buckets for matching local writer and remote/local reader pairs.
DDS_Long matching_reader_writer_pair_hash_buckets
 Number of hash buckets for matching local reader and remote/local writer pairs.
DDS_Long ignored_entity_hash_buckets
 Number of hash buckets for ignored entities.
DDS_Long content_filtered_topic_hash_buckets
 Number of hash buckets for content filtered topics.
DDS_Long content_filter_hash_buckets
 Number of hash buckets for content filters.
DDS_Long flow_controller_hash_buckets
 Number of hash buckets for flow controllers.
DDS_Long max_gather_destinations
 Maximum number of destinations per RTI Data Distribution Service send.
DDS_Long participant_user_data_max_length
 Maximum length of user data in DDS_DomainParticipantQos and DDS_ParticipantBuiltinTopicData.
DDS_Long topic_data_max_length
 Maximum length of topic data in DDS_TopicQos, DDS_TopicBuiltinTopicData, DDS_PublicationBuiltinTopicData and DDS_SubscriptionBuiltinTopicData.
DDS_Long publisher_group_data_max_length
 Maximum length of group data in DDS_PublisherQos and DDS_PublicationBuiltinTopicData.
DDS_Long subscriber_group_data_max_length
 Maximum length of group data in DDS_SubscriberQos and DDS_SubscriptionBuiltinTopicData.
DDS_Long writer_user_data_max_length
 Maximum length of user data in DDS_DataWriterQos and DDS_PublicationBuiltinTopicData.
DDS_Long reader_user_data_max_length
 Maximum length of user data in DDS_DataReaderQos and DDS_SubscriptionBuiltinTopicData.
DDS_Long max_partitions
 Maximum number of partition name strings allowable in a DDS_PartitionQosPolicy.
DDS_Long max_partition_cumulative_characters
 Maximum number of combined characters allowable in all partition names in a DDS_PartitionQosPolicy.
DDS_Long type_code_max_serialized_length
 Maximum size of serialized string for type code.
DDS_Long contentfilter_property_max_length
 This field is the maximum length of all data related to a Content-filtered topic.
DDS_Long channel_seq_max_length
 Maximum number of channels that can be specified in DDS_MultiChannelQosPolicy for MultiChannel DataWriters.
DDS_Long channel_filter_expression_max_length
 Maximum length of a channel DDS_ChannelSettings_t::filter_expression in a MultiChannel DataWriter.
DDS_Long participant_property_list_max_length
 Maximum number of properties associated with the DDS_DomainParticipant.
DDS_Long participant_property_string_max_length
 Maximum string length of the properties associated with the DDS_DomainParticipant.
DDS_Long writer_property_list_max_length
 Maximum number of properties associated with a DDS_DataWriter.
DDS_Long writer_property_string_max_length
 Maximum string length of the properties associated with a DDS_DataWriter.
DDS_Long reader_property_list_max_length
 Maximum number of properties associated with a DDS_DataReader.
DDS_Long reader_property_string_max_length
 Maximum string length of the properties associated with a DDS_DataReader.
DDS_Long max_endpoint_groups
 Maximum number of DDS_EndpointGroup_t allowable in a DDS_AvailabilityQosPolicy.
DDS_Long max_endpoint_group_cumulative_characters
 Maximum number of combined role_name characters allowable in all DDS_EndpointGroup_t in a DDS_AvailabilityQosPolicy.


Detailed Description

Various settings that configure how a DDS_DomainParticipant allocates and uses physical memory for internal resources, including the maximum sizes of various properties.

This QoS policy sets maximum size limits on variable-length parameters used by the participant and its contained Entities. It also controls the initial and maximum sizes of data structures used by the participant to store information about locally-created and remotely-discovered entities (such as DataWriters/DataReaders), as well as parameters used by the internal database to size the hash tables it uses.

By default, a DDS_DomainParticipant is allowed to dynamically allocate memory as needed as users create local Entities such as DDS_DataWriter and DDS_DataReader objects or as the participant discovers new applications. By setting fixed values for the maximum parameters in this QoS policy, you can bound the memory that can be allocated by a DDS_DomainParticipant. In addition, by setting the initial values to the maximum values, you can prevent DomainParticipants from allocating memory after the initialization period.

The maximum sizes of different variable-length parameters such as the number of partitions that can be stored in the DDS_PartitionQosPolicy, the maximum length of data store in the DDS_UserDataQosPolicy and DDS_GroupDataQosPolicy, and many others can be changed from their defaults using this QoS policy. However, it is important that all DomainParticipants that need to communicate with each other use the same set of maximum values. Otherwise, when these parameters are propagated from one DDS_DomainParticipant to another, a DDS_DomainParticipant with a smaller maximum length may reject the parameter, resulting in an error.

An important parameter in this QoS policy that is often changed by users is DDS_DomainParticipantResourceLimitsQosPolicy::type_code_max_serialized_length.

This QoS policy is an extension to the DDS standard.

Entity:
DDS_DomainParticipant
Properties:
RxO = N/A
Changeable = NO

Field Documentation

Allocation settings applied to local DataWriters.

[default] initial_count = 16; max_count = DDS_LENGTH_UNLIMITED; incremental_count = -1

[range] See allowed ranges in struct DDS_AllocationSettings_t

Allocation settings applied to local DataReaders.

[default] initial_count = 16; max_count = DDS_LENGTH_UNLIMITED; incremental_count = -1

[range] See allowed ranges in struct DDS_AllocationSettings_t

Allocation settings applied to local Publisher.

[default] initial_count = 4; max_count = DDS_LENGTH_UNLIMITED; incremental_count = -1

[range] See allowed ranges in struct DDS_AllocationSettings_t

Allocation settings applied to local Subscriber.

[default] initial_count = 4; max_count = DDS_LENGTH_UNLIMITED; incremental_count = -1

[range] See allowed ranges in struct DDS_AllocationSettings_t

Allocation settings applied to local Topic.

[default] initial_count = 16; max_count = DDS_LENGTH_UNLIMITED; incremental_count = -1

[range] See allowed ranges in struct DDS_AllocationSettings_t

Allocation settings applied to remote DataWriters.

Remote DataWriters include all DataWriters, both local and remote.

[default] initial_count = 64; max_count = DDS_LENGTH_UNLIMITED; incremental_count = -1

[range] See allowed ranges in struct DDS_AllocationSettings_t

Allocation settings applied to remote DataReaders.

Remote DataReaders include all DataReaders, both local and remote.

[default] initial_count = 64; max_count = DDS_LENGTH_UNLIMITED; incremental_count = -1

[range] See allowed ranges in struct DDS_AllocationSettings_t

Allocation settings applied to remote DomainParticipants.

Remote DomainParticipants include all DomainParticipants, both local and remote.

[default] initial_count = 16; max_count = DDS_LENGTH_UNLIMITED; incremental_count = -1

[range] See allowed ranges in struct DDS_AllocationSettings_t

Allocation settings applied to matching local writer and remote/local reader pairs.

[default] initial_count = 32; max_count = DDS_LENGTH_UNLIMITED; incremental_count = -1

[range] See allowed ranges in struct DDS_AllocationSettings_t

Allocation settings applied to matching local reader and remote/local writer pairs.

[default] initial_count = 32; max_count = DDS_LENGTH_UNLIMITED; incremental_count = -1

[range] See allowed ranges in struct DDS_AllocationSettings_t

Allocation settings applied to ignored entities.

[default] initial_count = 8; max_count = DDS_LENGTH_UNLIMITED; incremental_count = -1

[range] See allowed ranges in struct DDS_AllocationSettings_t

Allocation settings applied to content filtered topic.

[default] initial_count = 4; max_count = DDS_LENGTH_UNLIMITED; incremental_count = -1

[range] See allowed ranges in struct DDS_AllocationSettings_t

Allocation settings applied to content filter.

[default] initial_count = 4; max_count = DDS_LENGTH_UNLIMITED; incremental_count = -1

[range] See allowed ranges in struct DDS_AllocationSettings_t

Allocation settings applied to read condition pool.

[default] initial_count = 4; max_count = DDS_LENGTH_UNLIMITED, incremental_count = -1

[range] See allowed ranges in struct DDS_AllocationSettings_t

Allocation settings applied to query condition pool.

[default] initial_count = 4; max_count = DDS_LENGTH_UNLIMITED, incremental_count = -1

[range] See allowed ranges in struct DDS_AllocationSettings_t

Allocation settings applied to the maximum number of samples (from all DDS_DataWriter) waiting to be asynchronously written.

[default] initial_count = 64; max_count = DDS_LENGTH_UNLIMITED, incremental_count = -1

[range] See allowed ranges in struct DDS_AllocationSettings_t

Allocation settings applied to flow controllers.

[default] initial_count = 4; max_count = DDS_LENGTH_UNLIMITED, incremental_count = -1

[range] See allowed ranges in struct DDS_AllocationSettings_t

Hash_Buckets settings applied to local DataWriters.

[default] 4

[range] [1, 10000]

Number of hash buckets for local DataReaders.

[default] 4

[range] [1, 10000]

Number of hash buckets for local Publisher.

[default] 1

[range] [1, 10000]

Number of hash buckets for local Subscriber.

[default] 1

[range] [1, 10000]

Number of hash buckets for local Topic.

[default] 4

[range] [1, 10000]

Number of hash buckets for remote DataWriters.

Remote DataWriters include all DataWriters, both local and remote.

[default] 16

[range] [1, 10000]

Number of hash buckets for remote DataReaders.

Remote DataReaders include all DataReaders, both local and remote.

[default] 16

[range] [1, 10000]

Number of hash buckets for remote DomainParticipants.

Remote DomainParticipants include all DomainParticipants, both local and remote.

[default] 4

[range] [1, 10000]

Number of hash buckets for matching local writer and remote/local reader pairs.

[default] 32

[range] [1, 10000]

Number of hash buckets for matching local reader and remote/local writer pairs.

[default] 32

[range] [1, 10000]

Number of hash buckets for ignored entities.

[default] 1

[range] [1, 10000]

Number of hash buckets for content filtered topics.

[default] 1

[range] [1, 10000]

Number of hash buckets for content filters.

[default] 1

[range] [1, 10000]

Number of hash buckets for flow controllers.

[default] 1

[range] [1, 10000]

Maximum number of destinations per RTI Data Distribution Service send.

When RTI Data Distribution Service sends out a message, it has the capability to send to multiple destinations to be more efficient. The maximum number of destinations per RTI Data Distribution Service send is specified by max_gather_destinations.

[default] 8

[range] [4, 1 million]

Maximum length of user data in DDS_DomainParticipantQos and DDS_ParticipantBuiltinTopicData.

[default] 256

[range] [0,0x7fffffff]

Maximum length of topic data in DDS_TopicQos, DDS_TopicBuiltinTopicData, DDS_PublicationBuiltinTopicData and DDS_SubscriptionBuiltinTopicData.

[default] 256

[range] [0,0x7fffffff]

Maximum length of group data in DDS_PublisherQos and DDS_PublicationBuiltinTopicData.

[default] 256

[range] [0,0x7fffffff]

Maximum length of group data in DDS_SubscriberQos and DDS_SubscriptionBuiltinTopicData.

[default] 256

[range] [0,0x7fffffff]

Maximum length of user data in DDS_DataWriterQos and DDS_PublicationBuiltinTopicData.

[default] 256

[range] [0,0x7fffffff]

Maximum length of user data in DDS_DataReaderQos and DDS_SubscriptionBuiltinTopicData.

[default] 256

[range] [0,0x7fffffff]

Maximum number of partition name strings allowable in a DDS_PartitionQosPolicy.

This value cannot exceed 64.

[default] 64

[range] [0,64]

Maximum number of combined characters allowable in all partition names in a DDS_PartitionQosPolicy.

The maximum number of combined characters should account for a terminating NULL ('\0') character for each partition name string.

This value cannot exceed 256.

[default] 256

[range] [0,256]

Maximum size of serialized string for type code.

This parameter limits the size of the type code that a DDS_DomainParticipant is able to store and propagate for user data types. Type codes can be used by external applications to understand user data types without having the data type predefined in compiled form. However, since type codes contain all of the information of a data structure, including the strings that define the names of the members of a structure, complex data structures can result in type codes larger than the default maximum of 2048 bytes. So it is common for users to set this parameter to a larger value. However, as with all parameters in this QoS policy defining maximum sizes for variable-length elements, all DomainParticipants in the same domain should use the same value for this parameter.

[default] 2048

[range] [0,0xffff]

This field is the maximum length of all data related to a Content-filtered topic.

This is the sum of the length of the content filter name, the length of the related topic name, the length of the filter expression, the length of the filter parameters, and the length of the filter name. The maximum number of combined characters should account for a terminating NULL ('\0') character for each string.

[default] 256

[range] [0,0xffff]

Maximum number of channels that can be specified in DDS_MultiChannelQosPolicy for MultiChannel DataWriters.

[default] 32

[range] [0,0xffff]

Maximum length of a channel DDS_ChannelSettings_t::filter_expression in a MultiChannel DataWriter.

The length should account for a terminating NULL ('\0') character.

[default] 256

[range] [0,0xffff]

Maximum number of properties associated with the DDS_DomainParticipant.

[default] 32

[range] [0,0xffff]

Maximum string length of the properties associated with the DDS_DomainParticipant.

The string length is defined as the cumulative length in bytes of all the pair (name,value) associated with the DDS_DomainParticipant properties.

[default] 1024

[range] [0,0xffff]

Maximum number of properties associated with a DDS_DataWriter.

[range] [0,0xffff]

[default] 32

Maximum string length of the properties associated with a DDS_DataWriter.

The string length is defined as the cumulative length in bytes of all the pair (name,value) associated with the data writer properties.

[default] 1024

[range] [0,0xffff]

Maximum number of properties associated with a DDS_DataReader.

[default] 32

[range] [0,0xffff]

Maximum string length of the properties associated with a DDS_DataReader.

The string length is defined as the cumulative length in bytes of all the pair (name,value) associated with a DDS_DataReader properties.

[default] 1024

[range] [0,0xffff]

Maximum number of DDS_EndpointGroup_t allowable in a DDS_AvailabilityQosPolicy.

[default] 32

[range] [0,65535]

Maximum number of combined role_name characters allowable in all DDS_EndpointGroup_t in a DDS_AvailabilityQosPolicy.

The maximum number of combined characters should account for a terminating NULL character for each role_name string.

[default] 1024

[range] [0,65535]


RTI Data Distribution Service C API Version 4.5e Copyright © 23 Oct 2011 Real-Time Innovations, Inc