RTI Connext C API  Version 5.0.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.
 
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.
 
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.
 
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.
 
DDS_Long unacknowledged_sample_count
 The current number of unacknowledged samples in the writer's cache.
 
DDS_Long unacknowledged_sample_count_peak
 The highest value that unacknowledged_sample_count has reached until now.
 

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

struct DDS_ReliableWriterCacheEventCount DDS_ReliableWriterCacheChangedStatus::empty_reliable_writer_cache

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

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 DDS_LENGTH_UNLIMITED).

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

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.

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.

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.

DDS_Long DDS_ReliableWriterCacheChangedStatus::unacknowledged_sample_count_peak

The highest value that unacknowledged_sample_count has reached until now.


RTI Connext C API Version 5.0.0 Copyright © Thu Aug 30 2012 Real-Time Innovations, Inc