Skip to main content

Module status

Module status 

Source
Expand description

Block-F: DDS status mapping (spec idl4-cpp-1.0 §7.4 + dds-1.4 §2.2.4.1).

Emits the 13 OMG DCPS status structures as a C++17 header in the dds::core::status namespace. The classes follow the reference pattern from C5.1-a (private storage field_, mutable + const getter, setter).

Spec sources:

  • DDS-PSM-CXX 1.0 §7.5.5 (Listener / Status / Condition).
  • DDS 1.4 §2.2.4.1 (communication status).

§List of the 13 status classes

StatusCounter fields
InconsistentTopicStatustotal_count, total_count_change
SampleLostStatustotal_count, total_count_change
SampleRejectedStatustotal_count, total_count_change, last_reason, last_instance_handle
LivelinessChangedStatusalive_count, not_alive_count, alive_count_change, not_alive_count_change, last_publication_handle
RequestedDeadlineMissedStatustotal_count, total_count_change, last_instance_handle
RequestedIncompatibleQosStatustotal_count, total_count_change, last_policy_id, policies
OfferedDeadlineMissedStatustotal_count, total_count_change, last_instance_handle
OfferedIncompatibleQosStatustotal_count, total_count_change, last_policy_id, policies
LivelinessLostStatustotal_count, total_count_change
PublicationMatchedStatustotal_count, total_count_change, current_count, current_count_change, last_subscription_handle
SubscriptionMatchedStatustotal_count, total_count_change, current_count, current_count_change, last_publication_handle
DataAvailableStatus(marker only)
DataOnReadersStatus(marker only)

The statuses marked (marker only) are pure notification markers without counter (spec DDS 1.4 §2.2.4.1.1.1). They are emitted as empty classes anyway so that listener signatures are uniform.

Functions§

emit_status_header
Writes the complete status header into out.
status_class_names
Returns the list of all emitted status class names.