DDS_WriteParams_t Struct Reference
[WriteParams]

<<eXtension>> Input parameters for writing with FooDataWriter_write_w_params, FooDataWriter_dispose_w_params, FooDataWriter_register_instance_w_params, FooDataWriter_unregister_instance_w_params More...


Data Fields

struct DDS_SampleIdentity_t identity
 Identity of the sample.
struct DDS_Time_t source_timestamp
 Source timestamp upon write.
struct DDS_Cookie_t cookie
 Octet sequence identifying written data sample.
DDS_InstanceHandle_t handle
 Instance handle.
DDS_Long priority
 Publication priority.


Detailed Description

<<eXtension>> Input parameters for writing with FooDataWriter_write_w_params, FooDataWriter_dispose_w_params, FooDataWriter_register_instance_w_params, FooDataWriter_unregister_instance_w_params

Field Documentation

Identity of the sample.

Identifies the sample being written. The identity consist of a pair (Vitual Writer GUID, SequenceNumber).

Use the default value to let RTI Data Distribution Service determine the sample identity as follows:

  • The sequence number is increased by one with respect to the previous value.
The virtual sequence numbers for a virtual writer must be strictly monotonically increasing. If you try to write a sample with a sequence number smaller or equal to the last sequence number, the write operation will fail.

[default] DDS_AUTO_SAMPLE_IDENTITY.

Source timestamp upon write.

Specifies the source timestamp that will be available to the DDS_DataReader objects by means of the source_timestamp attribute within the DDS_SampleInfo.

[default] DDS_TIME_INVALID.

Octet sequence identifying written data sample.

The maximum size of the cookie is configurable using the field DDS_DataWriterResourceLimitsQosPolicy::cookie_max_length.

[default] Empty sequence (zero-length).

Instance handle.

Either the handle returned by a previous call to FooDataWriter_register_instance, or else the special value DDS_HANDLE_NIL.

[default] DDS_HANDLE_NIL

Publication priority.

A positive integer value designating the relative priority of the sample, used to determine the transmission order of pending writes.

Use of publication priorities requires an asynchronous publisher (DDS_ASYNCHRONOUS_PUBLISH_MODE_QOS) with DDS_FlowControllerProperty_t::scheduling_policy set to DDS_HPF_FLOW_CONTROLLER_SCHED_POLICY.

Larger numbers have higher priority.

For multi-channel DataWriters, the publication priority of a sample may be used as a filter criteria for determining channel membership.

If the publication priority of the parent DataWriter, or for multi-channel DataWriters, if the publication priority of the parent channel, is set to DDS_PUBLICATION_PRIORITY_AUTOMATIC, then the DataWriter or channel will be assigned the priority of the largest publication priority of all samples in the DataWriter or channel.

If the publication priority of the parent DataWriter, and for multi-channel DataWriters, if the publication priority of the parent channel, are set to DDS_PUBLICATION_PRIORITY_UNDEFINED, then the DataWriter or channel will be assigned the lowest priority, regardless of the value of the publication priorities of samples written to the DataWriter or channel.

The publication priority of each sample can be set in the DDS_WriteParams of FooDataWriter_write_w_params.

For dispose and unregister samples, use the DDS_WriteParams of FooDataWriter_dispose_w_params and FooDataWriter_unregister_instance_w_params.

[default] 0 (lowest priority)


RTI Data Distribution Service C API Version 4.5e Copyright © 23 Oct 2011 Real-Time Innovations, Inc