RTI Connext Modern C++ API
Version 6.0.1
|
The domain namespace contains types, classes, and functions related to DomainParticipants. More...
Namespaces | |
namespace | qos |
Contains DomainParticipantQos. | |
Classes | |
class | DomainParticipantListener |
The listener class for DomainParticipants. More... | |
class | DomainParticipant |
<<reference-type>> Container for all dds::core::Entity objects. More... | |
Functions | |
void | ignore (const dds::domain::DomainParticipant &participant, const dds::core::InstanceHandle &handle) |
Instructs RTI Connext to locally ignore a remote dds::domain::DomainParticipant. | |
template<typename FwdIterator > | |
void | ignore (const dds::domain::DomainParticipant &participant, FwdIterator begin, FwdIterator end) |
Instructs RTI Connext to locally ignore a group of remote dds::domain::DomainParticipant. | |
dds::core::InstanceHandleSeq | discovered_participants (const dds::domain::DomainParticipant &participant) |
<<extension>> Retrieves the list of other participants discovered by this participant | |
template<typename FwdIterator > | |
FwdIterator | discovered_participants (const dds::domain::DomainParticipant &participant, FwdIterator begin, FwdIterator end) |
<<extension>> Retrieves the list of other participants discovered by this participant | |
dds::topic::ParticipantBuiltinTopicData | discovered_participant_data (const dds::domain::DomainParticipant &participant, const dds::core::InstanceHandle &participant_handle) |
<<extension>> Retrieves the information about one participant discovered by this participant | |
DomainParticipant | find (int32_t domain_id) |
Locates an existing dds::domain::DomainParticipant. | |
The domain namespace contains types, classes, and functions related to DomainParticipants.
void ignore | ( | const dds::domain::DomainParticipant & | participant, |
const dds::core::InstanceHandle & | handle | ||
) |
Instructs RTI Connext to locally ignore a remote dds::domain::DomainParticipant.
#include
<dds/domain/discovery.hpp>
From the time of this call onwards, RTI Connext will locally behave as if the remote participant did not exist. This means it will ignore any topic, publication, or subscription that originates on that dds::domain::DomainParticipant.
There is no way to reverse this operation.
This operation can be used in conjunction with the discovery of remote participants offered by means of the dds::topic::ParticipantBuiltinTopicData to provide access control.
Application data can be associated with a dds::domain::DomainParticipant by means of the USER_DATA policy. This application data is propagated as a field in the built-in topic and can be used by an application to implement its own access control policy.
The dds::domain::DomainParticipant to ignore is identified by the handle
argument. This handle
is the one that appears in the dds::sub::SampleInfo retrieved when reading the data-samples available for the built-in dds::sub::DataReader to the dds::domain::DomainParticipant
topic. The built-in dds::sub::DataReader is read with the same dds::sub::DataReader::read and dds::sub::DataReader::take operations used for any dds::sub::DataReader.
participant | The DomainParticipant for which the remote entity will be ignored. |
handle | The dds::core::InstanceHandle of the remote entity that will be ignored. |
void ignore | ( | const dds::domain::DomainParticipant & | participant, |
FwdIterator | begin, | ||
FwdIterator | end | ||
) |
Instructs RTI Connext to locally ignore a group of remote dds::domain::DomainParticipant.
#include
<dds/domain/discovery.hpp>
The series of entities whose instance handles are made available via the provided iterators will be ignored.
participant | The DomainParticipant for which the remote entity will be ignored |
begin | The begin iterator for the series of InstanceHandles to ignore |
end | The end iterator for the series of InstanceHandles to ignore |
dds::core::InstanceHandleSeq discovered_participants | ( | const dds::domain::DomainParticipant & | participant | ) |
<<extension>> Retrieves the list of other participants discovered by this participant
#include
<dds/domain/discovery.hpp>
This operation retrieves the list of dds::domain::DomainParticipant entities that have been discovered in the domain and that the application has not indicated should be "ignored" by means of the dds::domain::DomainParticipant::ignore(const dds::domain::DomainParticipant & participant, const dds::core::InstanceHandle & handle) operation.
participant | The DomainParticipant where to look up the discovered participants |
InstanceHandles
that can be passed to rti::domain::discovered_participant_data(). One | of the Standard Exceptions or dds::core::NotEnabledError |
FwdIterator discovered_participants | ( | const dds::domain::DomainParticipant & | participant, |
FwdIterator | begin, | ||
FwdIterator | end | ||
) |
<<extension>> Retrieves the list of other participants discovered by this participant
#include
<dds/domain/discovery.hpp>
FwdIterator | A forward iterator whose value type is dds::core::InstanceHandleSeq |
This overload copies the instance handles into an iterator range.
participant | The participant whose discovered participants are looked up |
begin | The begin iterator where to copy the instance handles |
end | One past the last position where instance handles are copied |
dds::topic::ParticipantBuiltinTopicData discovered_participant_data | ( | const dds::domain::DomainParticipant & | participant, |
const dds::core::InstanceHandle & | participant_handle | ||
) |
<<extension>> Retrieves the information about one participant discovered by this participant
#include
<dds/domain/discovery.hpp>
This operation retrieves information on a dds::domain::DomainParticipant that has been discovered on the network. The participant must be in the same domain as the participant on which this operation is invoked and must not have been "ignored" by means of the dds::domain::DomainParticipant::ignore(const dds::domain::DomainParticipant & participant, const dds::core::InstanceHandle & handle) operation.
The participant_handle
must correspond to such a DomainParticipant. Otherwise, the operation will fail with dds::core::PreconditionNotMetError.
Use the operation rti::domain::discovered_participants() to find the dds::domain::DomainParticipant entities that are currently discovered.
Note: This operation does not retrieve the dds::topic::ParticipantBuiltinTopicData::property. This information is available through dds::sub::DataReaderListener::on_data_available() (if a reader listener is installed on the ParticipantBuiltinTopicDataDataReader).
participant | The DomainParticipant where to look up the information |
participant_handle | <<in>> dds::core::InstanceHandle of dds::domain::DomainParticipant. |
participant_handle
One | of the Standard Exceptions, dds::core::PreconditionNotMetError or dds::core::NotEnabledError |
DomainParticipant find | ( | int32_t | domain_id | ) |
Locates an existing dds::domain::DomainParticipant.
If no such DomainParticipant exists, the operation will return dds::core::null.
If multiple DomainParticipants belonging to that domain id exist, then the operation will return one of them. It is not specified which one.
domain_id | The domain id of the DomainParticipant to find |