#include <managed_infrastructure.h>
Static Public Member Functions | |
static System::String^ | get_discoveryconfig_qos_policy_name () |
Stringified human-readable name for DDS::DiscoveryConfigQosPolicy. | |
Public Attributes | |
Duration_t | participant_liveliness_lease_duration |
The liveliness lease duration for the participant. | |
Duration_t | participant_liveliness_assert_period |
The period to assert liveliness for the participant. | |
RemoteParticipantPurgeKind | remote_participant_purge_kind |
The participant's behavior for maintaining knowledge of remote participants (and their contained entities) with which discovery communication has been lost. | |
Duration_t | max_liveliness_loss_detection_period |
The maximum amount of time between when a remote entity stops maintaining its liveliness and when the matched local entity realizes that fact. | |
System::Int32 | initial_participant_announcements |
The number of initial announcements sent when a participant is first enabled or when a remote participant is newly discovered. | |
Duration_t | min_initial_participant_announcement_period |
The minimum period between initial announcements when a participant is first enabled or when a remote participant is newly discovered. | |
Duration_t | max_initial_participant_announcement_period |
The maximum period between initial announcements when a participant is first enabled or when a remote participant is newly discovered. | |
BuiltinTopicReaderResourceLimits_t | participant_reader_resource_limits |
Resource limits. | |
RtpsReliableReaderProtocol_t | publication_reader |
RTPS protocol-related configuration settings for a built-in publication reader. | |
BuiltinTopicReaderResourceLimits_t | publication_reader_resource_limits |
Resource limits. | |
RtpsReliableReaderProtocol_t | subscription_reader |
RTPS protocol-related configuration settings for a built-in subscription reader. | |
BuiltinTopicReaderResourceLimits_t | subscription_reader_resource_limits |
Resource limits. | |
RtpsReliableWriterProtocol_t | publication_writer |
RTPS protocol-related configuration settings for a built-in publication writer. | |
RtpsReliableWriterProtocol_t | subscription_writer |
RTPS protocol-related configuration settings for a built-in subscription writer. | |
System::Int32 | builtin_discovery_plugins |
The kind mask for built-in discovery plugins. | |
RtpsReliableReaderProtocol_t | participant_message_reader |
RTPS protocol-related configuration settings for a built-in participant message reader. | |
RtpsReliableWriterProtocol_t | participant_message_writer |
RTPS protocol-related configuration settings for a built-in participant message writer. |
This QoS policy is an extension to the DDS standard.
This QoS policy controls the amount of delay in discovering entities in the system and the amount of discovery traffic in the network.
The amount of network traffic required by the discovery process can vary widely, based on how your application has chosen to configure the middleware's network addressing (e.g., unicast vs. multicast, multicast TTL, etc.), the size of the system, whether all applications are started at the same time or whether start times are staggered, and other factors. Your application can use this policy to make tradeoffs between discovery completion time and network bandwidth utilization. In addition, you can introduce random back-off periods into the discovery process to decrease the probability of network contention when many applications start simultaneously.
The liveliness lease duration for the participant.
This is the same as the expiration time of the DomainParticipant as defined in the RTPS protocol.
If the participant has not refreshed its own liveliness to other participants at least once within this period, it may be considered as stale by other participants in the network.
Should be strictly greater than DDS::DiscoveryConfigQosPolicy::participant_liveliness_assert_period.
[default] 100 seconds
[range] [1 nanosec,1 year], > participant_liveliness_assert_period
The period to assert liveliness for the participant.
The period at which the participant will refresh its liveliness to all the peers.
Should be strictly less than DDS::DiscoveryConfigQosPolicy::participant_liveliness_lease_duration.
[default] 30 seconds
[range] [1 nanosec,1 year), < participant_liveliness_lease_duration
The participant's behavior for maintaining knowledge of remote participants (and their contained entities) with which discovery communication has been lost.
Most users will not need to change this value from its default, DDS::RemoteParticipantPurgeKind::LIVELINESS_BASED_REMOTE_PARTICIPANT_PURGE. However, DDS::RemoteParticipantPurgeKind::NO_REMOTE_PARTICIPANT_PURGE may be a good choice if the following conditions apply:
[default] DDS::RemoteParticipantPurgeKind::LIVELINESS_BASED_REMOTE_PARTICIPANT_PURGE
The maximum amount of time between when a remote entity stops maintaining its liveliness and when the matched local entity realizes that fact.
Notification of the loss of liveliness of a remote entity may come more quickly that this duration, depending on the liveliness contract between the local and remote entities and the capabilities of the discovery mechanism in use. For example, a DDS::DataReader will learn of the loss of liveliness of a matched DDS::DataWriter within the reader's offered liveliness lease duration.
Shortening this duration will increase the responsiveness of entities to communication failures. However, it will also increase the CPU usage of the application, as the liveliness of remote entities will be examined more frequently.
[default] 60 seconds
[range] [0, 1 year]
The number of initial announcements sent when a participant is first enabled or when a remote participant is newly discovered.
Also, when a new remote participant appears, the local participant can announce itself to the peers multiple times controlled by this parameter.
[default] 5
[range] [0,1 million]
The minimum period between initial announcements when a participant is first enabled or when a remote participant is newly discovered.
A random delay between this and DDS::DiscoveryConfigQosPolicy::max_initial_participant_announcement_period is introduced in between initial announcements when a new remote participant is discovered.
The setting of DDS::DiscoveryConfigQosPolicy::min_initial_participant_announcement_period must be consistent with DDS::DiscoveryConfigQosPolicy::max_initial_participant_announcement_period. For these two values to be consistent, they must verify that:
DDS::DiscoveryConfigQosPolicy::min_initial_participant_announcement_period <= DDS::DiscoveryConfigQosPolicy::max_initial_participant_announcement_period.
[default] 1 second
[range] [1 nanosec,1 year]
The maximum period between initial announcements when a participant is first enabled or when a remote participant is newly discovered.
A random delay between DDS::DiscoveryConfigQosPolicy::min_initial_participant_announcement_period and this is introduced in between initial announcements when a new remote participant is discovered.
The setting of DDS::DiscoveryConfigQosPolicy::max_initial_participant_announcement_period must be consistent with DDS::DiscoveryConfigQosPolicy::min_initial_participant_announcement_period. For these two values to be consistent, they must verify that:
DDS::DiscoveryConfigQosPolicy::min_initial_participant_announcement_period <= DDS::DiscoveryConfigQosPolicy::max_initial_participant_announcement_period.
[default] 1 second
[range] [1 nanosec,1 year]
BuiltinTopicReaderResourceLimits_t DDS::DiscoveryConfigQosPolicy::participant_reader_resource_limits |
Resource limits.
Resource limit of the built-in topic participant reader. For details, see DDS::BuiltinTopicReaderResourceLimits_t.
RTPS protocol-related configuration settings for a built-in publication reader.
For details, refer to the DDS::DataReaderQos
BuiltinTopicReaderResourceLimits_t DDS::DiscoveryConfigQosPolicy::publication_reader_resource_limits |
Resource limits.
Resource limit of the built-in topic publication reader. For details, see DDS::BuiltinTopicReaderResourceLimits_t.
RTPS protocol-related configuration settings for a built-in subscription reader.
For details, refer to the DDS::DataReaderQos
BuiltinTopicReaderResourceLimits_t DDS::DiscoveryConfigQosPolicy::subscription_reader_resource_limits |
Resource limits.
Resource limit of the built-in topic subscription reader. For details, see DDS::BuiltinTopicReaderResourceLimits_t.
RTPS protocol-related configuration settings for a built-in publication writer.
For details, refer to the DDS::DataWriterQos
RTPS protocol-related configuration settings for a built-in subscription writer.
For details, refer to the DDS::DataWriterQos
System::Int32 DDS::DiscoveryConfigQosPolicy::builtin_discovery_plugins |
The kind mask for built-in discovery plugins.
There are several built-in discovery plugin. This mask enables the different plugins. Any plugin not enabled will not be created.
[default] DDS::DiscoveryConfigBuiltinPluginKind::DISCOVERYCONFIG_BUILTIN_SDP
RTPS protocol-related configuration settings for a built-in participant message reader.
For details, refer to the DDS::DataReaderQos
RTPS protocol-related configuration settings for a built-in participant message writer.
For details, refer to the DDS::DataWriterQos