2.4.2. Configuring Quality of Service (QoS)
The QoS view allows you to add Qualities of Service and organize them in QoS Libraries and QoS Profiles.
To add new QoS to your model, click in the QoS view
or right-click QoS Libraries in the tree:
![Adding a QoS library](_images/qos_tab_add_library.png)
To add a QoS Library, enter the Library Name and the destination file:
![Entering a QoS library name and destination file](_images/qos_libraries_enter_name.png)
You can add QoS Profiles to that library by using
in the main panel while a QoS Library is selected or by
right-clicking on the QoS Library:
![Adding a QoS profile to a library](_images/add_qos_profile.png)
A pop-up window will guide you to select the profile name, the destination file, the profile you want to inherit from, and other attributes as shown in the screenshot below:
![Popup for adding profile details](_images/add_qos_profile_popup.png)
Some profiles cannot be defined as Snippets because they inherit from a base profile.
For more information on Entities and Profiles, see these sections of the RTI Connext DDS Core Libraries User’s Manual:
Once you have your profiles, you can select one of them and add QoS for a specific Entity:
![Adding QoS for a specific entity](_images/add_qos_for_entity.png)
When an Entity is selected, you can set all the QoS related to that Entity in the Structured view:
![Setting QoS in the Structured view](_images/add_qos_structured_view.png)
See QosPolicies in the RTI Connext DDS Core Libraries User’s Manual for more information on the QoS available for each entity.
You can browse all of the QoS policies and select the
button to set and get more information
on a specific setting within a policy:
![Expanding modified QoS policies](_images/expand_modified_qos.png)
If you don’t create a QoS Profile or policy for an Entity, the default QoS is used for that Entity.
A short explanation is shown, and a link to [More…] information for that specific policy is provided.
For each QoS policy, suggestions and checks are provided:
![Suggested settings](_images/history_kinds.png)
Once the QoS is set, it will be highlighted in green to indicate that it is being set locally:
![Highlighted QoS](_images/qos_highlighted.png)
If your profile is inheriting from another profile, System Designer will
highlight the values that are inherited from the base profile in blue. To
inherit the values from another profile click on next to the Base
QoS(s) field, and then select the QoS profile where you want to inherit from:
![Inheriting from a QoS](_images/qos_inheritance.png)
You can see where a value is coming from by selecting next
to the QoS value:
![Seeing the base QoS](_images/base_qos.png)
A summary will be presented to you displaying all the inheritance:
![Seeing the inheritance chain](_images/show_all_inheritance.png)
The XML view allows you to check the XML results and manually edit each XML file:
![Seeing the resulting XML](_images/check_xml_results.png)
Note
If you later edit a profile name that’s already being used in
an entity (such as in a <datawriter_qos>
),
the entity does not get updated with your change. You will get a warning
when this occurs:
![Warnings](_images/warning_unresolved_profile.png)
You can select and edit the Entity QoS in the Structured view to use the new name, or edit the XML file directly to use the new name. System Designer allows you to change an already used name to give you flexibility in trying out your model. For instance, you may want to use your newly named profile in different entities. Entities that use the old (now unrecognized) name will revert to the default QoS.
Note
About using default QoS: If you create an Entity QoS but don’t modify its defaults, you won’t see it the next time you open the project. Entities with no changes to the default QoS use the default settings and won’t be displayed.
![Entity with default QoS](_images/entity_using_default_qos.png)