PUBLISH_MODE
[QoS Policies]

<<eXtension>> Specifies how RTI Data Distribution Service sends application data on the network. This QoS policy can be used to tell RTI Data Distribution Service to use its own thread to send data, instead of the user thread. More...

Data Structures

struct  DDS_PublishModeQosPolicy
 Specifies how RTI Data Distribution Service sends application data on the network. This QoS policy can be used to tell RTI Data Distribution Service to use its own thread to send data, instead of the user thread. More...

Enumerations

enum  DDS_PublishModeQosPolicyKind {
  DDS_SYNCHRONOUS_PUBLISH_MODE_QOS,
  DDS_ASYNCHRONOUS_PUBLISH_MODE_QOS
}
 Kinds of publishing mode. More...

Variables

const char *const DDS_PUBLISHMODE_QOS_POLICY_NAME
 Stringified human-readable name for DDS_PublishModeQosPolicy.

Detailed Description

<<eXtension>> Specifies how RTI Data Distribution Service sends application data on the network. This QoS policy can be used to tell RTI Data Distribution Service to use its own thread to send data, instead of the user thread.


Enumeration Type Documentation

Kinds of publishing mode.

QoS:
DDS_PublishModeQosPolicy
Enumerator:
DDS_SYNCHRONOUS_PUBLISH_MODE_QOS  Indicates to send data synchronously.

If DDS_DataWriterProtocolQosPolicy::push_on_write is DDS_BOOLEAN_TRUE, data is sent immediately in the context of FooDataWriter_write.

As data is sent immediately in the context of the user thread, no flow control is applied.

See also:
DDS_DataWriterProtocolQosPolicy::push_on_write
[default] for DDS_DataWriter
DDS_ASYNCHRONOUS_PUBLISH_MODE_QOS  Indicates to send data asynchronously.

Configures the DDS_DataWriter to delegate the task of data transmission to a separate publishing thread. The FooDataWriter_write call does not send the data, but instead schedules the data to be sent later by its associated DDS_Publisher.

Each DDS_Publisher uses its dedicated publishing thread (DDS_PublisherQos::asynchronous_publisher) to send data for all its asynchronous DataWriters. For each asynchronous DataWriter, the associated DDS_FlowController determines when the publishing thread is allowed to send the data.

DDS_DataWriter_wait_for_asynchronous_publishing and DDS_Publisher_wait_for_asynchronous_publishing enable you to determine when the data has actually been sent.

Note: DDS_DataWriterProtocolQosPolicy::push_on_write must be TRUE for Asynchronous DataWriters. Otherwise, samples will never be sent.

See also:
DDS_FlowController

DDS_HistoryQosPolicy

DDS_DataWriter_wait_for_asynchronous_publishing

DDS_Publisher_wait_for_asynchronous_publishing

NDDS_Transport_Property_t::gather_send_buffer_count_max


Variable Documentation

Stringified human-readable name for DDS_PublishModeQosPolicy.


RTI Data Distribution Service C API Version 4.5c Copyright © 9 Jun 2010 Real-Time Innovations, Inc