RTI Connext DDS Micro C++ API  Version 3.0.2
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Groups
DDS_ResourceLimitsQosPolicy Struct Reference

<<cert>> Specifies the resources that RTI Connext DDS Micro can consume in order to meet the requested QoS. More...

#include <dds_c_infrastructure.h>

List of all members.

Public Attributes

DDS_Long max_samples
 Represents the maximum samples the middleware can store for any one DDSDataWriter (or DDSDataReader).
DDS_Long max_instances
 Represents the maximum number of instances a DDSDataWriter (or DDSDataReader) can manage.
DDS_Long max_samples_per_instance
 Represents the maximum number of samples of any one instance a DDSDataWriter (or DDSDataReader) can manage.

Detailed Description

<<cert>> Specifies the resources that RTI Connext DDS Micro can consume in order to meet the requested QoS.

Entity:
DDSTopic, DDSDataReader, DDSDataWriter
Status:
DDS_SAMPLE_REJECTED_STATUS, DDS_SampleRejectedStatus
Properties:
RxO = NO
Changeable = NO

Usage

This policy controls the resources that RTI Connext DDS Micro can use in order to meet the requirements imposed by the application and other QoS settings.

If DDSDataWriter objects are communicating samples faster than they are ultimately taken by the DDSDataReader objects, the middleware will eventually hit against some of the QoS-imposed resource limits. Note that this may occur when just a single DDSDataReader cannot keep up with its corresponding DDSDataWriter. The behavior in this case depends on the setting for the RELIABILITY. If reliability is DDS_BEST_EFFORT_RELIABILITY_QOS then RTI Connext DDS Micro is allowed to drop samples. If the reliability is DDS_RELIABLE_RELIABILITY_QOS, RTI Connext DDS Micro will block the DDSDataWriter or discard the sample at the DDSDataReader in order not to lose existing samples.

See also:
DDS_ReliabilityQosPolicy
DDS_HistoryQosPolicy

Consistency

All limits must be set to positive finite values. Furthermore, max_samples must be large enough to contain all samples for all instances:

The setting of RESOURCE_LIMITS max_samples_per_instance must be consistent with the HISTORY depth. For these two QoS to be consistent, they must verify that depth <= max_samples_per_instance.

See also:
DDS_HistoryQosPolicy

Member Data Documentation

DDS_Long DDS_ResourceLimitsQosPolicy::max_samples

Represents the maximum samples the middleware can store for any one DDSDataWriter (or DDSDataReader).

Specifies the maximum number of data samples a DDSDataWriter (or DDSDataReader) can manage across all the instances associated with it.

For unkeyed types this value has to be equal to max_samples_per_instance.

[default] 1

[range] [1, 100 million] >= (max_samples_per_instance * max_instances),

DDS_Long DDS_ResourceLimitsQosPolicy::max_instances

Represents the maximum number of instances a DDSDataWriter (or DDSDataReader) can manage.

[default] 1

[range] [1, 1 million]

DDS_Long DDS_ResourceLimitsQosPolicy::max_samples_per_instance

Represents the maximum number of samples of any one instance a DDSDataWriter (or DDSDataReader) can manage.

For unkeyed types this value has to be equal to max_samples.

[default] 1

[range] [1, 100 million], <= max_samples, >= DDS_HistoryQosPolicy::depth


RTI Connext DDS Micro C++ API Version 3.0.2 Copyright © Thu Dec 12 2019 Real-Time Innovations, Inc