RTI Connext Modern C++ API  Version 6.0.1
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
rti::core::status::DataReaderProtocolStatus Class Reference

<<extension>> Information about the status dds::core::status::StatusMask::datareader_protocol() More...

#include <Status.hpp>

Inherits rti::core::NativeValueType< T, NATIVE_T, ADAPTER >.

Public Member Functions

EventCount64 received_sample_count () const
 The number of samples received by a DataReader.
 
EventCount64 received_sample_bytes () const
 The number of bytes received by a DataReader.
 
EventCount64 duplicate_sample_count () const
 The number of samples from a remote DataWriter received, not for the first time, by a local DataReader.
 
EventCount64 duplicate_sample_bytes () const
 The number of samples from a remote DataWriter received, not for the first time, by a local DataReader.
 
EventCount64 received_heartbeat_count () const
 The number of Heartbeats from a remote DataWriter received by a local DataReader.
 
EventCount64 received_heartbeat_bytes () const
 The number of bytes of Heartbeats from a remote DataWriter received by a local DataReader.
 
EventCount64 sent_ack_count () const
 The number of ACKs sent from a local DataReader to a matching remote DataWriter.
 
EventCount64 sent_ack_bytes () const
 The number of bytes of ACKs sent from a local DataReader to a matching remote DataWriter.
 
EventCount64 sent_nack_count () const
 The number of NACKs sent from a local DataReader to a matching remote DataWriter.
 
EventCount64 sent_nack_bytes () const
 The number of bytes of NACKs sent from a local DataReader to a matching remote DataWriter.
 
EventCount64 received_gap_count () const
 The number of GAPs received from remote DataWriter to this DataReader.
 
EventCount64 received_gap_bytes () const
 The number of bytes of GAPs received from remote DataWriter to this DataReader.
 
EventCount64 rejected_sample_count () const
 The number of times a sample is rejected due to exceptions in the receive path.
 
rti::core::SequenceNumber first_available_sample_sequence_number () const
 Sequence number of the first available sample in a matched DataWriters reliability queue.
 
rti::core::SequenceNumber last_available_sample_sequence_number () const
 Sequence number of the last available sample in a matched Datawriter's reliability queue.
 
rti::core::SequenceNumber last_committed_sample_sequence_number () const
 Sequence number of the newest sample received from the matched DataWriter committed to the DataReader's queue.
 
int32_t uncommitted_sample_count () const
 Number of received samples that are not yet available to be read or taken, due to being received out of order.
 

Detailed Description

Member Function Documentation

EventCount64 rti::core::status::DataReaderProtocolStatus::received_sample_count ( ) const
inline

The number of samples received by a DataReader.

Depending on how the rti::core::status::DataReaderProtocol was obtained this may count samples coming from a specific DataWriter or from all the DataWriters that are matched with the DataReader.

If the rti::core::status::DataReaderProtocol is obtained using the dds::sub::DataReader::datareader_protocol_status operation then it will count samples from any DataWriter. If the DataReaderProtocolStatus is obtained using the dds::sub::DataReader::matched_publication_datareader_protocol_status then it will count the samples for the DataWriter specified as a parameter to the function.

Duplicate samples arriving from the DataWriter(s) (e.g. via multiple network paths) are detected prior to increasing this counter. The duplicate samples are counted by rti::core::status::DataReaderProtocol::duplicate_sample_count.

If the DataReader has specified a ContentFilter the received samples that do not pass the filter are part of this counter. The filtered samples are counted by rti::core::status::DataReaderProtocol::filtered_sample_count.

Samples rejected because they do not fit on the DataReader Queue are also part of this counter.

Note the received_sample_count counts samples received from all DataWriters and it does not necessarily match the number of samples accepted into the DataReader Queue. This is because:

  • Samples can also be inserted into the DataReader Queue by lifecycle events that are locally detected like an instance becoming not alive as a result of DataWriters leaving the network.
  • Samples can be filtered out due to ContentFilter or TimeFilter
  • Samples can be rejected because there is no space in DataReader Queue
EventCount64 rti::core::status::DataReaderProtocolStatus::received_sample_bytes ( ) const
inline

The number of bytes received by a DataReader.

See Also
rti::core::status::DataReaderProtocol::received_sample_count
EventCount64 rti::core::status::DataReaderProtocolStatus::duplicate_sample_count ( ) const
inline

The number of samples from a remote DataWriter received, not for the first time, by a local DataReader.

Such samples can be redundant, out-of-order, etc. and are not stored in the reader's queue.

EventCount64 rti::core::status::DataReaderProtocolStatus::duplicate_sample_bytes ( ) const
inline

The number of samples from a remote DataWriter received, not for the first time, by a local DataReader.

Such samples can be redundant, out-of-order, etc. and are not stored in the reader's queue.

EventCount64 rti::core::status::DataReaderProtocolStatus::received_heartbeat_count ( ) const
inline

The number of Heartbeats from a remote DataWriter received by a local DataReader.

EventCount64 rti::core::status::DataReaderProtocolStatus::received_heartbeat_bytes ( ) const
inline

The number of bytes of Heartbeats from a remote DataWriter received by a local DataReader.

EventCount64 rti::core::status::DataReaderProtocolStatus::sent_ack_count ( ) const
inline

The number of ACKs sent from a local DataReader to a matching remote DataWriter.

EventCount64 rti::core::status::DataReaderProtocolStatus::sent_ack_bytes ( ) const
inline

The number of bytes of ACKs sent from a local DataReader to a matching remote DataWriter.

EventCount64 rti::core::status::DataReaderProtocolStatus::sent_nack_count ( ) const
inline

The number of NACKs sent from a local DataReader to a matching remote DataWriter.

EventCount64 rti::core::status::DataReaderProtocolStatus::sent_nack_bytes ( ) const
inline

The number of bytes of NACKs sent from a local DataReader to a matching remote DataWriter.

EventCount64 rti::core::status::DataReaderProtocolStatus::received_gap_count ( ) const
inline

The number of GAPs received from remote DataWriter to this DataReader.

EventCount64 rti::core::status::DataReaderProtocolStatus::received_gap_bytes ( ) const
inline

The number of bytes of GAPs received from remote DataWriter to this DataReader.

EventCount64 rti::core::status::DataReaderProtocolStatus::rejected_sample_count ( ) const
inline

The number of times a sample is rejected due to exceptions in the receive path.

rti::core::SequenceNumber rti::core::status::DataReaderProtocolStatus::first_available_sample_sequence_number ( ) const
inline

Sequence number of the first available sample in a matched DataWriters reliability queue.

Applicable only for reliable DataReaders, and when retrieving matched DataWriter statuses.

Updated upon receiving Heartbeat submessages from a matched reliable DataWriter.

rti::core::SequenceNumber rti::core::status::DataReaderProtocolStatus::last_available_sample_sequence_number ( ) const
inline

Sequence number of the last available sample in a matched Datawriter's reliability queue.

Applicable only for reliable DataReaders, and when retrieving matched DataWriter statuses.

Updated upon receiving Heartbeat submessages from a matched reliable DataWriter.

rti::core::SequenceNumber rti::core::status::DataReaderProtocolStatus::last_committed_sample_sequence_number ( ) const
inline

Sequence number of the newest sample received from the matched DataWriter committed to the DataReader's queue.

Applicable only when retrieving matched DataWriter statuses.

For best-effort DataReaders, this is the sequence number of the latest sample received.

For reliable DataReaders, this is the sequence number of the latest sample that is available to be read or taken from the DataReader's queue.

int32_t rti::core::status::DataReaderProtocolStatus::uncommitted_sample_count ( ) const
inline

Number of received samples that are not yet available to be read or taken, due to being received out of order.

Applicable only when retrieving matched DataWriter statuses.


RTI Connext Modern C++ API Version 6.0.1 Copyright © Sat Nov 23 2019 Real-Time Innovations, Inc