RTI Connext Traditional C++ API Version 7.1.0
DDS_LifespanQosPolicy Struct Reference

Specifies how long the data written by the DDSDataWriter is considered valid. More...

Public Attributes

struct DDS_Duration_t duration
 Maximum duration for the data's validity. More...
 

Detailed Description

Specifies how long the data written by the DDSDataWriter is considered valid.

Each data sample written by the DDSDataWriter has an associated expiration time beyond which the data should not be delivered to any application. Once the sample expires, the data will be removed from the DDSDataReader caches as well as from the transient and persistent information caches.

The expiration time of each sample from the DDSDataWriter's cache is computed by adding the duration specified by this QoS policy to the time when the sample is added to the DDSDataWriter's cache. This timestamp is not necessarily equal to the sample's source timestamp that can be provided by the user using the FooDataWriter::write_w_timestamp or FooDataWriter::write_w_params API.

The expiration time of each sample from the DDSDataReader's cache is computed by adding the duration to the reception timestamp.

See also
FooDataWriter::write
FooDataWriter::write_w_timestamp
Entity:
DDSTopic, DDSDataWriter
Properties:
RxO = N/A
Changeable = YES

Usage

The Lifespan QoS policy can be used to control how much data is stored by RTI Connext. Even if it is configured to store "all" of the data sent or received for a topic (see DDS_HistoryQosPolicy), the total amount of data it stores may be limited by this QoS policy.

You may also use this QoS policy to ensure that applications do not receive or act on data, commands or messages that are too old and have 'expired.'

To avoid inconsistencies, multiple writers of the same instance should have the same lifespan.

See also
DDS_SampleInfo::source_timestamp
DDS_SampleInfo::reception_timestamp

Member Data Documentation

◆ duration

struct DDS_Duration_t DDS_LifespanQosPolicy::duration

Maximum duration for the data's validity.

[default] DDS_DURATION_INFINITE

[range] [1 nanosec, 1 year] or DDS_DURATION_INFINITE