RTI Connext Modern C++ API
Version 5.3.1
|
<<extension>> Configures the properties of a channel in rti::core::policy::MultiChannel More...
#include <rti/core/policy/CorePolicy.hpp>
Public Member Functions | |
ChannelSettings (const TransportMulticastSettingsSeq &the_multicast_settings, const std::string &the_filter_expression, int32_t the_priority) | |
Creates an instance with the specified multicast settings, filter expression and priority. | |
ChannelSettings & | multicast_settings (const TransportMulticastSettingsSeq &the_multicast_settings) |
A sequence of rti::core::TransportMulticastSettings used to configure the multicast addresses associated with a channel. | |
TransportMulticastSettingsSeq | multicast_settings () const |
Getter (see the setter with the same name) | |
ChannelSettings & | filter_expression (const std::string &the_filter_expression) |
A logical expression used to determine the data that will be published in the channel. | |
std::string | filter_expression () const |
Getter (see the setter with the same name) | |
ChannelSettings & | priority (int32_t the_priority) |
Publication priority. | |
int32_t | priority () const |
Getter (see the setter with the same name) | |
<<extension>> Configures the properties of a channel in rti::core::policy::MultiChannel
|
inline |
Creates an instance with the specified multicast settings, filter expression and priority.
See individual setters.
ChannelSettings& rti::core::ChannelSettings::multicast_settings | ( | const TransportMulticastSettingsSeq & | the_multicast_settings | ) |
A sequence of rti::core::TransportMulticastSettings used to configure the multicast addresses associated with a channel.
The sequence cannot be empty.
The maximum number of multicast locators in a channel is limited to 16 (a locator is defined by a transport alias, a multicast address and a port). Note that this is a hard limit that cannot be increased. However, this limit can be decreased by configuring the 'dds.domain_participant.max_announced_locator_list_size' property in the rti::core::policy::Property associated with the dds::domain::qos::DomainParticipantQos.
[default] Empty sequence (invalid value)
TransportMulticastSettingsSeq rti::core::ChannelSettings::multicast_settings | ( | ) | const |
Getter (see the setter with the same name)
|
inline |
A logical expression used to determine the data that will be published in the channel.
If the expression evaluates to TRUE, a sample will be published on the channel.
An empty string always evaluates the expression to TRUE.
The syntax of the expression will depend on the value of rti::core::policy::MultiChannel::filter_name
The filter expression length (including NULL-terminated character) cannot be greater than rti::core::policy::DomainParticipantResourceLimits::channel_filter_expression_max_length.
[default] NULL (invalid value)
|
inline |
Getter (see the setter with the same name)
|
inline |
Publication priority.
A positive integer value designating the relative priority of the channel, used to determine the transmission order of pending writes.
Use of publication priorities requires the asynchronous publisher (rti::core::policy::PublishModeKind_def::ASYNCHRONOUS) with rti::pub::FlowControllerProperty::scheduling_policy set to FlowControllerSchedulingPolicy_def::HIGHEST_PRIORITY_FIRST.
Larger numbers have higher priority.
If the publication priority of the channel is any value other than PUBLICATION_PRIORITY_UNDEFINED, then the channel's priority will take precedence over the data writer's priority.
If the publication priority of the channel is set to PUBLICATION_PRIORITY_UNDEFINED, then the channel's priority will be set to the value of the data writer's priority.
If the publicaton priority of both the data writer and the channel are PUBLICATION_PRIORITY_UNDEFINED, the channel will be assigned the lowest priority value.
If the publication priority of the channel is PUBLICATION_PRIORITY_AUTOMATIC, then the channel will be assigned the priority of the largest publication priority of all samples in the channel. The publication priority of each sample can be set in the rti::pub::WriteParams of the dds::pub::DataWriter::write(const T&,rti::pub::WriteParams&) function.
[default] PUBLICATION_PRIORITY_UNDEFINED
|
inline |
Getter (see the setter with the same name)