RTI Connext Traditional C++ API
Version 5.2.3
|
<<extension>> QoS libraries and profiles that are automatically built into RTI Connext. More...
Variables | |
const char *const | DDS_BUILTIN_QOS_LIB |
A library of non-experimental QoS profiles. | |
const char *const | DDS_PROFILE_BASELINE_ROOT |
The root baseline QoS values from which all other Baseline.X.X.X profiles inherit. | |
const char *const | DDS_PROFILE_BASELINE |
The most up-to-date QoS default values. | |
const char *const | DDS_PROFILE_BASELINE_5_0_0 |
The QoS default values for version 5.0.0. | |
const char *const | DDS_PROFILE_BASELINE_5_1_0 |
The QoS default values for version 5.1.0. | |
const char *const | DDS_PROFILE_BASELINE_5_2_0 |
The QoS default values for version 5.2.0. | |
const char *const | DDS_PROFILE_GENERIC_COMMON |
A common Participant base profile. | |
const char *const | DDS_PROFILE_GENERIC_MONITORING_COMMON |
Enables RTI Monitoring Library. | |
const char *const | DDS_PROFILE_GENERIC_CONNEXT_MICRO_COMPATIBILITY |
Sets the values necessary to communicate with RTI Connext Micro. | |
const char *const | DDS_PROFILE_GENERIC_OTHER_DDS_VENDOR_COMPATIBILITY |
Sets the values necessary to interoperate with other DDS vendors. | |
const char *const | DDS_PROFILE_GENERIC_510_TRANSPORT_COMPATIBILITY |
Sets the values necessary to interoperate with RTI Connext 5.1.0 using the UDPv6 and/or SHMEM transports. | |
const char *const | DDS_BUILTIN_QOS_LIB_EXP |
A library of experimental QoS profiles. | |
const char *const | DDS_PROFILE_GENERIC_STRICT_RELIABLE |
Enables strict reliability. | |
const char *const | DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE |
Enables keep-last reliability. | |
const char *const | DDS_PROFILE_GENERIC_BEST_EFFORT |
Enables best-effort reliability. | |
const char *const | DDS_PROFILE_GENERIC_STRICT_RELIABLE_HIGH_THROUGHPUT |
A profile that can be used to achieve high throughput. | |
const char *const | DDS_PROFILE_GENERIC_STRICT_RELIABLE_LOW_LATENCY |
A profile that can be used to achieve low latency. | |
const char *const | DDS_PROFILE_GENERIC_PARTICIPANT_LARGE_DATA |
A common Participant base profile to facilitate sending large data. | |
const char *const | DDS_PROFILE_GENERIC_PARTICIPANT_LARGE_DATA_MONITORING |
Configures Participants for large data and monitoring. | |
const char *const | DDS_PROFILE_GENERIC_STRICT_RELIABLE_LARGE_DATA |
Configures endpoints for sending large data with strict reliability. | |
const char *const | DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE_LARGE_DATA |
Configures endpoints for sending large data with keep-last reliability. | |
const char *const | DDS_PROFILE_GENERIC_STRICT_RELIABLE_LARGE_DATA_FAST_FLOW |
Configures strictly reliable communication for large data with a fast flow controller. | |
const char *const | DDS_PROFILE_GENERIC_STRICT_RELIABLE_LARGE_DATA_MEDIUM_FLOW |
Configures strictly reliable communication for large data with a medium flow controller. | |
const char *const | DDS_PROFILE_GENERIC_STRICT_RELIABLE_LARGE_DATA_SLOW_FLOW |
Configures strictly reliable communication for large data with a slow flow controller. | |
const char *const | DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE_LARGE_DATA_FAST_FLOW |
Configures keep-last reliable communication for large data with a fast flow controller. | |
const char *const | DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE_LARGE_DATA_MEDIUM_FLOW |
Configures keep-last reliable communication for large data with a medium flow controller. | |
const char *const | DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE_LARGE_DATA_SLOW_FLOW |
Configures keep-last reliable communication for large data with a slow flow controller. | |
const char *const | DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE_TRANSIENT_LOCAL |
Persists the samples of a DataWriter as long as the entity exists. | |
const char *const | DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE_TRANSIENT |
Persists samples using RTI Persistence Service. | |
const char *const | DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE_PERSISTENT |
Persists samples in permanent storage, like a disk, using RTI Persistence Service. | |
const char *const | DDS_PROFILE_GENERIC_AUTO_TUNING |
Enables the Turbo Mode batching and Auto Throttle experimental features. | |
const char *const | DDS_PROFILE_PATTERN_PERIODIC_DATA |
Used for applications that expect periodic data. | |
const char *const | DDS_PROFILE_PATTERN_STREAMING |
Used for applications that stream data. | |
const char *const | DDS_PROFILE_PATTERN_RELIABLE_STREAMING |
Used for applications that stream data and require reliable communication. | |
const char *const | DDS_PROFILE_PATTERN_EVENT |
Used for applications that handle events. | |
const char *const | DDS_PROFILE_PATTERN_ALARM_EVENT |
Used for applications which handle alarm events. | |
const char *const | DDS_PROFILE_PATTERN_STATUS |
Used for applications whose samples represent statuses. | |
const char *const | DDS_PROFILE_PATTERN_ALARM_STATUS |
Used for applications in which samples represent alarm statuses. | |
const char *const | DDS_PROFILE_PATTERN_LAST_VALUE_CACHE |
Used for applications that only need the last published value. | |
<<extension>> QoS libraries and profiles that are automatically built into RTI Connext.
The built-in profiles can be accessed in QoS XML configuration files and by using any of the APIs that accept library and profiles names by using the constants or string versions as documented on this page.
The built-in profiles are provided as a way to quickly and easily configure RTI Connext applications with a set of QoS values aimed at achieving a specific behavior.
There are three types of profiles:
These profiles can be used as base profiles in XML configuration files and values can be modified to fit a specific system's needs. For example:
The profiles can also be used in any APIs that call for a QoS library and profile name, for example, the create_*_with_profile() APIs. To create a DDSDataWriter configured to send large data:
All the built-in profiles are documented in the BaselineRoot.documentationONLY.xml and BuiltinProfiles.documentationONLY.xml files that are included in the NDDSHOME/xml directory of the RTI Connext installation.
const char* const DDS_BUILTIN_QOS_LIB |
A library of non-experimental QoS profiles.
String-version: "BuiltinQosLib"
const char* const DDS_PROFILE_BASELINE_ROOT |
The root baseline QoS values from which all other Baseline.X.X.X profiles inherit.
This profile contains the root baseline QoS values from which all other Baseline.X.X.X profiles inherit. These values correspond to the default values for RTI Connext 5.0.0.
In Library: DDS_BUILTIN_QOS_LIB
String-version: "Baseline.Root"
const char* const DDS_PROFILE_BASELINE |
The most up-to-date QoS default values.
You can use this profile if you want your application to pick up and use any new QoS default settings each time a new RTI Connext version is released – without changing your application code.
In Library: DDS_BUILTIN_QOS_LIB
String-version: "Baseline"
const char* const DDS_PROFILE_BASELINE_5_0_0 |
The QoS default values for version 5.0.0.
In Library: DDS_BUILTIN_QOS_LIB
String-version: "Baseline.5.0.0"
const char* const DDS_PROFILE_BASELINE_5_1_0 |
The QoS default values for version 5.1.0.
In Library: DDS_BUILTIN_QOS_LIB
String-version: "Baseline.5.1.0"
const char* const DDS_PROFILE_BASELINE_5_2_0 |
The QoS default values for version 5.2.0.
In Library: DDS_BUILTIN_QOS_LIB
String-version: "Baseline.5.2.0"
const char* const DDS_PROFILE_GENERIC_COMMON |
A common Participant base profile.
All Generic.X and Pattern.X profiles inherit from this profile.
In Library: DDS_BUILTIN_QOS_LIB
String-version: "Generic.Common"
const char* const DDS_PROFILE_GENERIC_MONITORING_COMMON |
Enables RTI Monitoring Library.
Enables RTI Monitoring Library using the Baseline QoS defaults. You can use this profile to override the Participant configuration to use monitoring when inheriting profiles. For example:
In Library: DDS_BUILTIN_QOS_LIB
String-version: "Generic.Monitoring.Common"
const char* const DDS_PROFILE_GENERIC_CONNEXT_MICRO_COMPATIBILITY |
Sets the values necessary to communicate with RTI Connext Micro.
RTI Connext Micro only supports the DDS_MANUAL_BY_TOPIC_LIVELINESS_QOS LivelinessQos kind. In order to be compatible with RTI Connext Micro, the DDSDataReader and DDSDataWriter must have their Liveliness kind changed to this value because the default kind in RTI Connext is DDS_AUTOMATIC_LIVELINESS_QOS.
In Library: DDS_BUILTIN_QOS_LIB
String-version: "Generic.ConnextMicroCompatibility"
const char* const DDS_PROFILE_GENERIC_OTHER_DDS_VENDOR_COMPATIBILITY |
Sets the values necessary to interoperate with other DDS vendors.
In Library: DDS_BUILTIN_QOS_LIB
String-version: "Generic.OtherDDSVendorCompatibility"
const char* const DDS_PROFILE_GENERIC_510_TRANSPORT_COMPATIBILITY |
Sets the values necessary to interoperate with RTI Connext 5.1.0 using the UDPv6 and/or SHMEM transports.
In Library: DDS_BUILTIN_QOS_LIB
String-version: "Generic.510TransportCompatibility"
const char* const DDS_BUILTIN_QOS_LIB_EXP |
A library of experimental QoS profiles.
Experimental profiles are new profiles that have been tested internally but have not gone through an extensive validation period. Therefore some of the settings may change in future releases based on customer and internal feedback. After validation, experimental profiles will be moved into the non-experimental library.
String-version: "BuiltinQosLibExp"
const char* const DDS_PROFILE_GENERIC_STRICT_RELIABLE |
Enables strict reliability.
This profile guarantees delivery of every published sample. Samples will not be overwritten, regardless of the DDS_HistoryQosPolicy::depth. Strict reliability ensures in-order delivery and retransmission of lost samples.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Generic.StrictReliable"
const char* const DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE |
Enables keep-last reliability.
Like the Generic.StrictReliable profile, this profile ensures in-order delivery of samples. However, new data can overwrite data that has not yet been acknowledged by the reader, therefore causing possible sample loss.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Generic.KeepLastReliable"
const char* const DDS_PROFILE_GENERIC_BEST_EFFORT |
Enables best-effort reliability.
This profiles enables best-effort communication. No effort or resources are spent to track whether or not sent samples are received. Minimal resources are used. This is the most deterministic method of sending data since there is no indeterministic delay that can be introduced by resending data. Data samples may be lost. This setting is good for periodic data.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Generic.BestEffort"
const char* const DDS_PROFILE_GENERIC_STRICT_RELIABLE_HIGH_THROUGHPUT |
A profile that can be used to achieve high throughput.
This profile extends the DDS_PROFILE_GENERIC_STRICT_RELIABLE profile to perform additional, fine-grained performance tuning specific to applications that send continuously streaming data. The parameters specified here add to and/or override the parameters specified in the Generic.StrictReliable profile.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Generic.StrictReliable.HighThroughput"
const char* const DDS_PROFILE_GENERIC_STRICT_RELIABLE_LOW_LATENCY |
A profile that can be used to achieve low latency.
This profile extends the DDS_PROFILE_GENERIC_STRICT_RELIABLE profile to perform additional, fine-grained performance tuning specific to applications that send continuously streaming data. The parameters specified here add to and/or override the parameters specified in the Generic.StrictReliable profile.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Generic.StrictReliable.LowLatency"
const char* const DDS_PROFILE_GENERIC_PARTICIPANT_LARGE_DATA |
A common Participant base profile to facilitate sending large data.
This is a common Participant base profile that configures three flow controllers (fast, medium, and slow). Each one can be used to throttle application data flow at different rates.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Generic.Participant.LargeData"
const char* const DDS_PROFILE_GENERIC_PARTICIPANT_LARGE_DATA_MONITORING |
Configures Participants for large data and monitoring.
This is a common base Participant profile to configure participants to handle large data and use RTI Monitoring Library.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Generic.Participant.LargeData.Monitoring"
const char* const DDS_PROFILE_GENERIC_STRICT_RELIABLE_LARGE_DATA |
Configures endpoints for sending large data with strict reliability.
This profile extends the DDS_PROFILE_GENERIC_PARTICIPANT_LARGE_DATA profile to handle sending large samples while providing strict reliability. This profile optimizes the memory usage per sample within the middleware and enables asynchronous publication (necessary for strict reliability), but it does not perform any flow control.
If you need flow control, consider using one of the three profiles (Generic.StrictReliable.LargeData.*Flow) that use this profile as a common base profile. Each of those three profiles use one of the three flow controllers (fast, medium, or slow) defined in DDS_PROFILE_GENERIC_PARTICIPANT_LARGE_DATA to throttle application data flow.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Generic.StrictReliable.LargeData"
const char* const DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE_LARGE_DATA |
Configures endpoints for sending large data with keep-last reliability.
This profile is similar to the DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE_LARGE_DATA profile but inherits from Generic.StrictReliable.LargeData in order to handle sending large data. You can use this profile directly, which enables the default flow controller (that is, NO flow control) or use one of three profiles (Generic.KeepLastReliable.LargeData.*Flow) that use this profile as a common base profile. Each of those three profiles use one of the three flow controllers defined in DDS_PROFILE_GENERIC_PARTICIPANT_LARGE_DATA to throttle application data flow.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Generic.KeepLastReliable.LargeData"
const char* const DDS_PROFILE_GENERIC_STRICT_RELIABLE_LARGE_DATA_FAST_FLOW |
Configures strictly reliable communication for large data with a fast flow controller.
This profile configures strictly reliable communication for large data with a 100 MB/sec (838 Mb/sec) flow controller.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Generic.StrictReliable.LargeData.FastFlow"
const char* const DDS_PROFILE_GENERIC_STRICT_RELIABLE_LARGE_DATA_MEDIUM_FLOW |
Configures strictly reliable communication for large data with a medium flow controller.
This profile configures strictly reliable communication for large data with a 25 MB/sec (209 Mb/sec) flow controller.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Generic.StrictReliable.LargeData.MediumFlow"
const char* const DDS_PROFILE_GENERIC_STRICT_RELIABLE_LARGE_DATA_SLOW_FLOW |
Configures strictly reliable communication for large data with a slow flow controller.
This profile configures strictly reliable communication for large data with a 6.25 MB/sec (52 Mb/sec) flow controller.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Generic.StrictReliable.LargeData.SlowFlow"
const char* const DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE_LARGE_DATA_FAST_FLOW |
Configures keep-last reliable communication for large data with a fast flow controller.
This profile configures keep-last reliable communication for large data with a 100 MB/sec (838 Mb/sec) flow controller.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Generic.KeepLastReliable.LargeData.FastFlow"
const char* const DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE_LARGE_DATA_MEDIUM_FLOW |
Configures keep-last reliable communication for large data with a medium flow controller.
This profile configures keep-last reliable communication for large data with a 25 MB/sec (209 Mb/sec) flow controller.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Generic.KeepLastReliable.LargeData.MediumFlow"
const char* const DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE_LARGE_DATA_SLOW_FLOW |
Configures keep-last reliable communication for large data with a slow flow controller.
This profile configures keep-last reliable communication for large data with a 6.25 MB/sec (52 Mb/sec) flow controller.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Generic.KeepLastReliable.LargeData.SlowFlow"
const char* const DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE_TRANSIENT_LOCAL |
Persists the samples of a DataWriter as long as the entity exists.
This profile extends the DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE profile, but persists the samples of a DataWriter as long as the entity exists in order to deliver them to late-joining DataReaders.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Generic.KeepLastReliable.TransientLocal"
const char* const DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE_TRANSIENT |
Persists samples using RTI Persistence Service.
This profile extends the DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE profile, but persists samples using Persistence Service in order to deliver them to late-joining DataReaders.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Generic.KeepLastReliable.Transient"
const char* const DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE_PERSISTENT |
Persists samples in permanent storage, like a disk, using RTI Persistence Service.
This profile extends the DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE profile, but persists samples in permanent storage, such as a disk, using Persistence Service in order to deliver them to late-joining DataReaders.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Generic.KeepLastReliable.Persistent"
const char* const DDS_PROFILE_GENERIC_AUTO_TUNING |
Enables the Turbo Mode batching and Auto Throttle experimental features.
Turbo Mode batching adjusts the maximum number of bytes of a batch based on how frequently samples are being written. Auto Throttle auto-adjusts the speed at which a writer will write samples, based on the number of unacknowledged samples in its queue.
These features are designed to auto-adjust the publishing behavior within a system in order to achieve the best possible performance with regards to throughput and latency.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Generic.AutoTuning"
const char* const DDS_PROFILE_PATTERN_PERIODIC_DATA |
Used for applications that expect periodic data.
This profile is intended to be used for applications that expect periodic data such as sensor data. The deadline that is set in this profile can be used to detect when DataWriters are not publishing data with the expected periodicity.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Pattern.PeriodicData"
const char* const DDS_PROFILE_PATTERN_STREAMING |
Used for applications that stream data.
The data sent in streaming applications is commonly periodic. Therefore this profile simply inherits from the DDS_PROFILE_PATTERN_PERIODIC_DATA profile. Note: With this profile, the application may lose data, which may be acceptable in use cases such as video conferencing.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Pattern.Streaming"
const char* const DDS_PROFILE_PATTERN_RELIABLE_STREAMING |
Used for applications that stream data and require reliable communication.
Sometimes streaming applications require reliable communication while still tolerating some data loss. In this case, we inherit from the DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE profile and increase the DDS_HistoryQosPolicy::depth to reduce the probability of losing samples.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Pattern.ReliableStreaming"
const char* const DDS_PROFILE_PATTERN_EVENT |
Used for applications that handle events.
This profile can be used by applications in which samples represent events such as button pushes or alerts. When events are triggered, the system should almost always do something, meaning that we do not want to lose the event. Thus, there is a need for strictly reliable communication. Therefore, we inherit from the DDS_PROFILE_GENERIC_STRICT_RELIABLE profile. Since events and alerts are critical and non-periodic data, it is important to detect situations in which communication between a DDSDataWriter and DDSDataReader is broken. This is why this profile sets the DDS_LivelinessQosPolicy. If the DDSDataWriter does not assert its liveliness in a timely manner, the DDSDataReader will report 'loss of liveliness' to the application.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Pattern.Event"
const char* const DDS_PROFILE_PATTERN_ALARM_EVENT |
Used for applications which handle alarm events.
An alarm is a type of event; therefore this profile simply inherits from DDS_PROFILE_PATTERN_EVENT.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Pattern.AlarmEvent"
const char* const DDS_PROFILE_PATTERN_STATUS |
Used for applications whose samples represent statuses.
This profile can be used by applications in which samples represent state variables whose values remain valid as long as they don't explicitly change. State variables typically do not change periodically. State variables and their values should also be available to applications that appear after the value originally changed because it is unreasonable to have to wait until the next change of state, which may be indeterminate.
Whether to use this profile or Pattern.PeriodicData can often be an application choice. For example, if a DataWriter is publishing temperature sensor data, it could use the Pattern.PeriodicData profile and publish the data at a fixed rate or it could use the Pattern.Status profile and only publish the temperature when it changes more than 1 degree.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Pattern.Status"
const char* const DDS_PROFILE_PATTERN_ALARM_STATUS |
Used for applications in which samples represent alarm statuses.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Pattern.AlarmStatus"
const char* const DDS_PROFILE_PATTERN_LAST_VALUE_CACHE |
Used for applications that only need the last published value.
With this profile, a DDSDataWriter will keep in its queue the last value that was published for each sample instance. Late-joining DataReaders will get that value when they join the system. This profile inherits from DDS_PROFILE_GENERIC_KEEP_LAST_RELIABLE_TRANSIENT_LOCAL because the use case requires delivery to late-joiners.
In Library: DDS_BUILTIN_QOS_LIB_EXP
String-version: "Pattern.LastValueCache"