8.3.5 Checking DataReader Status and StatusConditions

You can access individual communication status for a DataReader with the operations shown in Table 1 DataReader Status Operations.

Table 1 DataReader Status Operations

Use this operation...

...to retrieve this status:

get_datareader_cache_status

8.3.7.2 DATA_READER_CACHE_STATUS

get_datareader_protocol_status

8.3.7.3 DATA_READER_PROTOCOL_STATUS

get_matched_publication_
datareader_protocol_status

get_liveliness_changed_status

8.3.7.4 LIVELINESS_CHANGED Status

get_sample_lost_status

8.3.7.7 SAMPLE_LOST Status

get_sample_rejected_status

8.3.7.8 SAMPLE_REJECTED Status

get_requested_deadline_missed_status

8.3.7.5 REQUESTED_DEADLINE_MISSED Status

get_requested_incompatible_qos_status

8.3.7.6 REQUESTED_INCOMPATIBLE_QOS Status

get_subscription_match_status

8.3.7.9 SUBSCRIPTION_MATCHED Status

get_status_changes

All of the above

get_statuscondition

See 4.6.8 StatusConditions

These methods are useful in the event that no Listener callback is set to receive notifications of status changes. If a Listener is used, the callback will contain the new status information, in which case calling these methods is unlikely to be necessary.

The get_status_changes() operation provides a list of statuses that have changed since the last time the status changes were ‘reset.’ A status change is reset each time the application calls the corresponding get_*_status(), as well as each time Connext DDS returns from calling the Listener callback associated with that status.

For more on status, see 8.3.4 Setting Up DataReaderListeners, 8.3.7 Statuses for DataReaders, and 4.4 Listeners.

© 2020 RTI