RTI Connext Micro C API Version 4.2.0
|
<<cert>> Specifies the attributes required to discover participants in the domain. More...
#include <dds_c_domain.h>
Data Fields | |
struct DDS_StringSeq | initial_peers |
Determines the initial list of peers that will be contacted by the Discovery mechanism to send announcements about the presence of this participant. | |
struct DDS_StringSeq | enabled_transports |
The transports available for use by the Discovery mechanism. | |
struct DDS_DiscoveryComponent | discovery |
The name of the discovery plugin that will be used to create a discovery plugin for this DDS_DomainParticipant. | |
DDS_Boolean | accept_unknown_peers |
Whether to accept a new participant that is not in the initial peer list. | |
DDS_Boolean | enable_participant_discovery_by_name |
Enable Participant discovery by name. | |
DDS_Boolean | enable_endpoint_discovery_queue |
Enable the endpoint discovery queue and queue endpoint discovery messages if there are no resources to assert the endpoint at the time of discovery. | |
<<cert>> Specifies the attributes required to discover participants in the domain.
This extended Qos is used to define how participants find each other on a network.
struct DDS_StringSeq DDS_DiscoveryQosPolicy::initial_peers |
Determines the initial list of peers that will be contacted by the Discovery mechanism to send announcements about the presence of this participant.
If there is a remote peer DDS_DomainParticipant such as is described this list, it will become aware of this participant and will engage in the Discovery protocol to exchange meta-data with this participant.
Each element of this list must be a peer
descriptor in the proper format.
[default] Empty sequence
[range] Sequence of arbitrary length.
struct DDS_StringSeq DDS_DiscoveryQosPolicy::enabled_transports |
The transports available for use by the Discovery mechanism.
Only these transports can be used by the discovery mechanism to send meta-traffic via the builtin endpoints (built-in DDS_DataReader and DDS_DataWriter).
Also determines the unicast addresses on which the Discovery mechanism will listen for meta-traffic. These along with the domain_id
and participant_id
determine the unicast locators on which the Discovery mechanism can receive meta-data.
The memory for the strings in this sequence is managed according to the conventions described in Conventions. In particular, be careful to avoid a situation in which RTI Connext DDS Micro allocates a string on your behalf and you then reuse that string in such a way that RTI Connext DDS Micro believes it to have more memory allocated to it than it actually does.
[default] Empty sequence.
When an empty sequence is passed to DDS_DomainParticipantFactory_create_participant in the DDS_DomainParticipantQos, the domain participant will automatically add the following locators to listen for discovery traffic on: "_udp://", "_udp://127.0.0.1", and "_udp://239.255.0".
[range] Sequence of non-null,non-empty strings.
struct DDS_DiscoveryComponent DDS_DiscoveryQosPolicy::discovery |
The name of the discovery plugin that will be used to create a discovery plugin for this DDS_DomainParticipant.
The DDS_DomainParticipantFactory will search through a list of registered discovery plugins. If it finds a registered discovery factory with a name matching this factory name, it will use that discovery plugin to create a new instance of the discovery plugin and register the plugin with the DDS_DomainParticipant.
If it does not find a registered discovery factory with this name, it will return DDS_RETCODE_PRECONDITION_NOT_MET
DDS_Boolean DDS_DiscoveryQosPolicy::accept_unknown_peers |
Whether to accept a new participant that is not in the initial peer list.
If DDS_BOOLEAN_FALSE, the participant will only communicate with those in the initial peer list
If DDS_BOOLEAN_TRUE, the participant will also communicate with all discovered remote participants.
[default] DDS_BOOLEAN_TRUE
DDS_Boolean DDS_DiscoveryQosPolicy::enable_participant_discovery_by_name |
Enable Participant discovery by name.
If DDS_BOOLEAN_FALSE, a DDS_DomainParticipant is only identified by its GUID.
If DDS_BOOLEAN_TRUE, a DDS_DomainParticipant is identified by its DDS_DomainParticipantQos::participant_name. Thus, each DDS_DomainParticipant in a domain must be uniquely in the DDS domain. Failure to uniquely name each DDS_DomainParticipant may result in undefined behavior.
Note that DDS_DomainParticipantQos::participant_name cannot be empty when set to DDS_BOOLEAN_TRUE.
[default] DDS_BOOLEAN_FALSE
DDS_Boolean DDS_DiscoveryQosPolicy::enable_endpoint_discovery_queue |
Enable the endpoint discovery queue and queue endpoint discovery messages if there are no resources to assert the endpoint at the time of discovery.
When a remote DDS_DataReader or DDS_DataWriter is discovered, the discovery information is saved, and the discovered entity is matched with local endpoints.
However, if there are insufficient resources to save the information or perform the matching, the discovery message is discarded by default. That is, all information about the discovered endpoint is lost, even if resources are later freed up.
This behavior can be changed by setting this value to DDS_BOOLEAN_TRUE. If there are insufficient resources to store the discovery information, the message is queued and processed when resources becomes available.
Discovery messages that are queued are queued until the DDS_DomainParticipant that published the discovery messages is no longer available.
[default] DDS_BOOLEAN_FALSE