62.2 QoS Profiles
A QoS Profile groups a set of related QoS policies, by entity (e.g., <datawriter_qos>), identified by a name. For example:
<qos_profile name="StrictReliableCommunicationProfile">
<datawriter_qos> <history> <kind>KEEP_ALL_HISTORY_QOS</kind> </history> <reliability> <kind>RELIABLE_RELIABILITY_QOS</kind> </reliability> </datawriter_qos> <datareader_qos> <history> <kind>KEEP_ALL_HISTORY_QOS</kind> </history> <reliability> <kind>RELIABLE_RELIABILITY_QOS</kind> </reliability> </datareader_qos> </qos_profile>
Duplicate QoS profiles are not allowed. To overwrite a QoS profile, use 62.2.3 QoS Profile Inheritance and Composition.
There are functions that allow you to create Entities using profiles, such as create_participant_with_profile() (19.3.1 Creating a DomainParticipant), create_topic_with_profile() (21.1.1 Creating Topics), etc.
If you create an entity using a profile without a QoS definition or an inherited QoS definition (see 62.2.3 QoS Profile Inheritance and Composition) for that class of entity, Connext uses the default QoS.
Example 1:
<qos_profile name=
"BatchStrictReliableCommunicationProfile"
base_name="StrictReliableCommunicationProfile">
<datawriter_qos>
<batch>
<enable>true</enable>
</batch>
</datawriter_qos>
</qos_profile>
The DataReader QoS value in the profile BatchStrictReliableCommunicationProfile is inherited from the profile StrictReliableCommunicationProfile.
Example 2:
<qos_profile name="BatchProfile">
<datawriter_qos>
<batch>
<enable>true</enable>
</batch>
</datawriter_qos>
</qos_profile>
The DataReader QoS value in the profile BatchProfile is the default Connext QoS.