RTI Connext C API Version 7.3.0
DDS_ReliableWriterCacheChangedStatus Struct Reference

<<extension>> A summary of the state of a data writer's cache of unacknowledged samples written. More...

Data Fields

struct DDS_ReliableWriterCacheEventCount empty_reliable_writer_cache
 The number of times the reliable writer's cache of unacknowledged samples has become empty. More...
 
struct DDS_ReliableWriterCacheEventCount full_reliable_writer_cache
 The number of times the reliable writer's cache, or send window, of unacknowledged samples has become full. More...
 
struct DDS_ReliableWriterCacheEventCount low_watermark_reliable_writer_cache
 The number of times the reliable writer's cache of unacknowledged samples has fallen to the low watermark. More...
 
struct DDS_ReliableWriterCacheEventCount high_watermark_reliable_writer_cache
 The number of times the reliable writer's cache of unacknowledged samples has risen to the high watermark. More...
 
DDS_Long unacknowledged_sample_count
 The current number of unacknowledged samples in the writer's cache. More...
 
DDS_Long unacknowledged_sample_count_peak
 The highest value that unacknowledged_sample_count has reached until now. More...
 
DDS_LongLong replaced_unacknowledged_sample_count
 The number of unacknowledged samples that have been replaced in the writer's cache. More...
 

Detailed Description

<<extension>> A summary of the state of a data writer's cache of unacknowledged samples written.

Entity:
DDS_DataWriter
Listener:
DDS_DataWriterListener

A written sample is unacknowledged (and therefore accounted for in this status) if the writer is reliable and one or more readers matched with the writer has not yet sent an acknowledgement to the writer declaring that it has received the sample.

If the low watermark is zero and the unacknowledged sample count decreases to zero, both the low watermark and cache empty events are considered to have taken place. A single callback will be dispatched (assuming the user has requested one) that contains both status changes. The same logic applies when the high watermark is set equal to the maximum number of samples and the cache becomes full.

Field Documentation

◆ empty_reliable_writer_cache

struct DDS_ReliableWriterCacheEventCount DDS_ReliableWriterCacheChangedStatus::empty_reliable_writer_cache

The number of times the reliable writer's cache of unacknowledged samples has become empty.

◆ full_reliable_writer_cache

struct DDS_ReliableWriterCacheEventCount DDS_ReliableWriterCacheChangedStatus::full_reliable_writer_cache

The number of times the reliable writer's cache, or send window, of unacknowledged samples has become full.

Applies to writer's cache when the send window is enabled (when both DDS_RtpsReliableWriterProtocol_t::min_send_window_size and DDS_RtpsReliableWriterProtocol_t::max_send_window_size are not DDS_LENGTH_UNLIMITED).

Otherwise, applies when the number of unacknowledged samples has reached the send window limit.

◆ low_watermark_reliable_writer_cache

struct DDS_ReliableWriterCacheEventCount DDS_ReliableWriterCacheChangedStatus::low_watermark_reliable_writer_cache

The number of times the reliable writer's cache of unacknowledged samples has fallen to the low watermark.

A low watermark event will only be considered to have taken place when the number of unacknowledged samples in the writer's cache decreases to this value. A sample count that increases to this value will not result in a callback or in a change to the total count of low watermark events.

When the writer's send window is enabled, the low watermark is scaled down, if necessary, to fit within the current send window.

Set the low watermark value using the DDS_RtpsReliableWriterProtocol_t::low_watermark field of the DDS_RtpsReliableWriterProtocol_t structure.

◆ high_watermark_reliable_writer_cache

struct DDS_ReliableWriterCacheEventCount DDS_ReliableWriterCacheChangedStatus::high_watermark_reliable_writer_cache

The number of times the reliable writer's cache of unacknowledged samples has risen to the high watermark.

A high watermark event will only be considered to have taken place when the number of unacknowledged sampled increases to this value. A sample count that was above this value and then decreases back to it will not trigger an event.

When the writer's send window is enabled, the high watermark is scaled down, if necessary, to fit within the current send window.

Set the high watermark value using the DDS_RtpsReliableWriterProtocol_t::high_watermark field of the DDS_RtpsReliableWriterProtocol_t structure.

◆ unacknowledged_sample_count

DDS_Long DDS_ReliableWriterCacheChangedStatus::unacknowledged_sample_count

The current number of unacknowledged samples in the writer's cache.

A sample is considered unacknowledged if the writer has failed to receive an acknowledgement from one or more reliable readers matched to it.

◆ unacknowledged_sample_count_peak

DDS_Long DDS_ReliableWriterCacheChangedStatus::unacknowledged_sample_count_peak

The highest value that unacknowledged_sample_count has reached until now.

◆ replaced_unacknowledged_sample_count

DDS_LongLong DDS_ReliableWriterCacheChangedStatus::replaced_unacknowledged_sample_count

The number of unacknowledged samples that have been replaced in the writer's cache.

Total number of unacknowledged samples that have been replaced by a DataWriter after applying DDS_KEEP_LAST_HISTORY_QOS policy.