DISCOVERY_CONFIG
[QoS Policies]

<<eXtension>> Specifies the discovery configuration QoS. More...

Classes

struct  DDS::BuiltinTopicReaderResourceLimits_t
 Built-in topic reader's resource limits. More...
class  DDS::DiscoveryConfigQosPolicy
 Settings for discovery configuration. More...

Enumerations

enum  DDS::RemoteParticipantPurgeKind {
  DDS::LIVELINESS_BASED_REMOTE_PARTICIPANT_PURGE,
  DDS::NO_REMOTE_PARTICIPANT_PURGE
}
 Available behaviors for halting communication with remote participants (and their contained entities) with which discovery communication has been lost. More...

Functions

static System::String^ DDS::DiscoveryConfigQosPolicy::get_discoveryconfig_qos_policy_name ()
 Stringified human-readable name for DDS::DiscoveryConfigQosPolicy.

Detailed Description

<<eXtension>> Specifies the discovery configuration QoS.


Enumeration Type Documentation

Available behaviors for halting communication with remote participants (and their contained entities) with which discovery communication has been lost.

When discovery communication with a remote participant has been lost, the local participant must make a decision about whether to continue attempting to communicate with that participant and its contained entities. This "kind" is used to select the desired behavior.

This "kind" does not pertain to the situation in which a remote participant has been gracefully deleted and notification of that deletion have been successfully received by its peers. In that case, the local participant will immediately stop attempting to communicate with those entities and will remove the associated remote entity records from its internal database.

See also:
DDS::DiscoveryConfigQosPolicy::remote_participant_purge_kind
Enumerator:
LIVELINESS_BASED_REMOTE_PARTICIPANT_PURGE  [default] Maintain knowledge of the remote participant for as long as it maintains its liveliness contract.

A participant will continue attempting communication with its peers, even if discovery communication with them is lost, as long as the remote participants maintain their liveliness. If both discovery communication and participant liveliness are lost, however, the local participant will remove all records of the remote participant and its contained endpoints, and no further data communication with them will occur until and unless they are rediscovered.

The liveliness contract a participant promises to its peers -- its "liveliness lease duration" -- is specified in its DDS::DiscoveryConfigQosPolicy::participant_liveliness_lease_duration QoS field. It maintains that contract by writing data to those other participants with a writer that has a DDS::LivelinessQosPolicyKind of DDS::LivelinessQosPolicyKind::AUTOMATIC_LIVELINESS_QOS or DDS::LivelinessQosPolicyKind::MANUAL_BY_PARTICIPANT_LIVELINESS_QOS and by asserting itself (at the DDS::DiscoveryConfigQosPolicy::participant_liveliness_assert_period) over the Simple Discovery Protocol.

NO_REMOTE_PARTICIPANT_PURGE  Never "forget" a remote participant with which discovery communication has been lost.

If a participant with this behavior loses discovery communication with a remote participant, it will nevertheless remember that remote participant and its endpoints and continue attempting to communicate with them indefinitely.

This value has consequences for a participant's resource usage. If discovery communication with a remote participant is lost, but the same participant is later rediscovered, any relevant records that remain in the database will be reused. However, if it is not rediscovered, the records will continue to take up space in the database for as long as the local participant remains in existence.


Function Documentation

static System::String ^ DDS::DiscoveryConfigQosPolicy::get_discoveryconfig_qos_policy_name (  )  [inline, static, inherited]

Stringified human-readable name for DDS::DiscoveryConfigQosPolicy.


RTI Data Distribution Service .Net APIs Version 4.5c Copyright © 9 Jun 2010 Real-Time Innovations, Inc