RTI Connext Modern C++ API  Version 7.0.0

Built-in objects created by RTI Connext but accessible to the application. More...


 Participant Built-in Topics
 Builtin topic for accessing information about the DomainParticipants discovered by RTI Connext.
 Topic Built-in Topics
 Builtin topic for accessing information about the Topics discovered by RTI Connext.
 Publication Built-in Topics
 Builtin topic for accessing information about the Publications discovered by RTI Connext.
 Subscription Built-in Topics
 Builtin topic for accessing information about the Subscriptions discovered by RTI Connext.
 ServiceRequest Built-in Topic
 Builtin topic for accessing requests from different services within RTI Connext.

Detailed Description

Built-in objects created by RTI Connext but accessible to the application.

RTI Connext must discover and keep track of the remote entities, such as new participants in the domain. This information may also be important to the application, which may want to react to this discovery, or else access it on demand.

A set of built-in topics and corresponding dds::sub::DataReader objects are introduced to be used by the application to access these discovery information.

The information can be accessed as if it was normal application data. This allows the application to know when there are any changes in those values by means of the Listener or the dds::core::cond::Condition mechanisms.

The built-in data-readers all belong to a built-in dds::sub::Subscriber, which can be retrieved by using the method dds::sub::builtin_subscriber. The built-in dds::sub::DataReader objects can be retrieved by using the operation dds::sub::find, with the topic name as a parameter.

Built-in entities have default listener settings as well. The built-in dds::sub::Subscriber and all of its built-in topics have 'nil' listeners with all statuses appearing in their listener masks (acting as a NO-OP listener that does not reset communication status). The built-in DataReaders have null listeners with no statuses in their masks.

The information that is accessible about the remote entities by means of the built-in topics includes all the QoS policies that apply to the corresponding remote Entity. This QoS policies appear as normal 'data' fields inside the data read by means of the built-in Topic. Additional information is provided to identify the Entity and facilitate the application logic.

The built-in dds::sub::DataReader will not provide data pertaining to entities created from the same dds::domain::DomainParticipant under the assumption that such entities are already known to the application that created them.

Refer to dds::topic::ParticipantBuiltinTopicData, dds::topic::TopicBuiltinTopicData, dds::topic::SubscriptionBuiltinTopicData and dds::topic::PublicationBuiltinTopicData for a description of all the built-in topics and their contents.

The QoS of the built-in dds::sub::Subscriber and dds::sub::DataReader objects is given by the following table:

QoS of built-in dds::sub::Subscriber and dds::sub::DataReader
QoS Value
dds::core::policy::UserData 0-length sequence
dds::core::policy::TopicData 0-length sequence
dds::core::policy::GroupData 0-length sequence
dds::core::policy::Durability dds::core::policy::DurabilityKind::TRANSIENT_LOCAL
dds::core::policy::DurabilityService Does not apply as dds::core::policy::DurabilityKind is dds::core::policy::DurabilityKind::TRANSIENT_LOCAL
dds::core::policy::Presentation access_scope = dds::core::policy::PresentationAccessScopeKind_def::TOPIC coherent_access = false ordered_access = false
dds::core::policy::Deadline Period = infinite
dds::core::policy::LatencyBudget duration = 0
dds::core::policy::Ownership dds::core::policy::OwnershipKind_def::SHARED
dds::core::policy::OwnershipStrength value = 0
dds::core::policy::Liveliness kind = dds::core::policy::LivelinessKind::AUTOMATIC lease_duration = 0
dds::core::policy::TimeBasedFilter minimum_separation = 0
dds::core::policy::Partition 0-length sequence
dds::core::policy::Reliability kind = dds::core::policy::ReliabilityKind_def::RELIABLE max_blocking_time = 100 milliseconds
dds::core::policy::DestinationOrder dds::core::policy::DestinationOrderKind::BY_RECEPTION_TIMESTAMP
dds::core::policy::History kind = dds::core::policy::HistoryKind::KEEP_LAST depth = 1
dds::core::policy::ResourceLimits max_samples = dds::core::LENGTH_UNLIMITED max_instances = dds::core::LENGTH_UNLIMITED max_samples_per_instance = dds::core::LENGTH_UNLIMITED
dds::core::policy::ReaderDataLifecycle autopurge_nowriter_samples_delay = infinite autopurge_disposed_samples_delay = infinite

autoenable_created_entities = true