CoreDX Data Distribution Service
The High Performance, Small Footprint DDS from Twin Oaks Computing, Inc
DataWriterI< T > Class Template Reference
Inheritance diagram for DataWriterI< T >:
DataWriter IDataWriter< T > DomainEntity Entity

Public Member Functions

ReturnCode_t get_key_value (T key_holder, InstanceHandle_t handle)
 
InstanceHandle_t lookup_instance (T instance_data)
 
InstanceHandle_t register_instance (T instance_data)
 
InstanceHandle_t register_instance_w_timestamp (T instance_data, Time_t ts)
 
ReturnCode_t unregister_instance (T instance_data, InstanceHandle_t handle)
 
ReturnCode_t unregister_instance_w_timestamp (T instance_data, InstanceHandle_t handle, Time_t timestamp)
 
ReturnCode_t write (T instance_data, InstanceHandle_t handle)
 
ReturnCode_t write_w_timestamp (T instance_data, InstanceHandle_t handle, Time_t timestamp)
 
ReturnCode_t dispose (T instance_data, InstanceHandle_t handle)
 
ReturnCode_t dispose_w_timestamp (T instance_data, InstanceHandle_t handle, Time_t timestamp)
 
- Public Member Functions inherited from DataWriter
override ReturnCode_t enable ()
 
override InstanceHandle_t get_instance_handle ()
 
ReturnCode_t set_qos (DataWriterQos qos)
 
ReturnCode_t get_qos (DataWriterQos qos)
 
ReturnCode_t set_listener (DataWriterListener new_listener, uint mask)
 
DataWriterListener get_listener ()
 
Topic get_topic ()
 
Publisher get_publisher ()
 
ReturnCode_t wait_for_acknowledgments (Duration_t max_wait)
 
ReturnCode_t assert_liveliness ()
 
ReturnCode_t get_liveliness_lost_status (out LivelinessLostStatus status)
 
ReturnCode_t get_offered_deadline_missed_status (out OfferedDeadlineMissedStatus status)
 
ReturnCode_t get_offered_incompatible_qos_status (out OfferedIncompatibleQosStatus status)
 
ReturnCode_t get_publication_matched_status (out PublicationMatchedStatus status)
 
ReturnCode_t get_matched_subscriptions (List< InstanceHandle_t > subscription_handles)
 
ReturnCode_t get_matched_subscription_data (SubscriptionBuiltinTopicData subscription_data, InstanceHandle_t subscription_handle)
 
ReturnCode_t get_guid (GUID_t g)
 
- Public Member Functions inherited from Entity
virtual StatusCondition get_statuscondition ()
 
virtual uint get_status_changes ()
 

Detailed Description

The DataWriterI class defines the type specific operations of a DataWriter

This class is templatized on the Type of the data that the writer handles.

Type Constraints
T :DdsType 

Member Function Documentation

◆ dispose()

ReturnCode_t dispose ( instance_data,
InstanceHandle_t  handle 
)
inline

Indicates that the instance no longer exists. If handle is not HANDLE_NIL, then handle must identify a valid instance that has been previously registered or written by this DataWriter. The current time is used as the source timstamp.

Implements IDataWriter< T >.

◆ dispose_w_timestamp()

ReturnCode_t dispose_w_timestamp ( instance_data,
InstanceHandle_t  handle,
Time_t  timestamp 
)
inline

Indicates that the instance no longer exists. If handle is not HANDLE_NIL, then handle must identify a valid instance that has been previously registered or written by this DataWriter. The source_timestamp is used as the source timstamp for the published message.

Implements IDataWriter< T >.

◆ get_key_value()

ReturnCode_t get_key_value ( key_holder,
InstanceHandle_t  handle 
)
inline

This routine will populate the data structure indicated by key_holder with the key infomation identified by handle.

This routine is data type specific. The generated type specific DataWriter includes an implementation of this routine which should be used to support type-safety.

Implements IDataWriter< T >.

◆ lookup_instance()

InstanceHandle_t lookup_instance ( instance_data)
inline

Returns the handle that identifies the data instance provided in instance_data. The 'key' field values of the data are associated with a unique handle.

Implements IDataWriter< T >.

◆ register_instance()

InstanceHandle_t register_instance ( instance_data)
inline

Declares the existance of an instance identified by the 'key fields' in instance_data. The handle that uniquely identifies the instance is returned. The current time is used as the source timestamp.

Implements IDataWriter< T >.

◆ register_instance_w_timestamp()

InstanceHandle_t register_instance_w_timestamp ( instance_data,
Time_t  ts 
)
inline

Declares the existance of an instance identified by the 'key fields' in instance_data. The handle that uniquely identifies the instance is returned. The source_timestamp is used as the source timestamp.

Implements IDataWriter< T >.

◆ unregister_instance()

ReturnCode_t unregister_instance ( instance_data,
InstanceHandle_t  handle 
)
inline

Indicates that the writer will no longer be providing updates the specified instance. If handle is not HANDLE_NIL, then handle must identify a valid instance that has been previously registered or written by this DataWriter. The current time is used as the source timstamp.

Implements IDataWriter< T >.

◆ unregister_instance_w_timestamp()

ReturnCode_t unregister_instance_w_timestamp ( instance_data,
InstanceHandle_t  handle,
Time_t  timestamp 
)
inline

Indicates that the writer will no longer be providing updates the specified instance. If handle is not HANDLE_NIL, then handle must identify a valid instance that has been previously registered or written by this DataWriter. The provided source_timestamp is used as the source timstamp.

Implements IDataWriter< T >.

◆ write()

ReturnCode_t write ( instance_data,
InstanceHandle_t  handle 
)
inline

Publishes the provided instance_data. If handle is HANDLE_NIL, then the handle is determined from the 'key fields' of instance_data.

The current time is used as the source timestamp for the published data.

This routine may block if RELIABILITY kind == RELIABLE, RESOURCE_LIMITS are not UNLIMITED, and the local resources are exhausted. The routine will block at most 'max_blocking_time' as configured in the RELIABLITY QoS. If the routine is still unable to handle the data, after blocking, then RETCODE_TIMEOUT is returned.

The routine may return RETCODE_OUT_OF_RESOURCES if it is determined that no amount of blocking will allow the data to be processed.

On success, RETCODE_OK is returned.

Implements IDataWriter< T >.

◆ write_w_timestamp()

ReturnCode_t write_w_timestamp ( instance_data,
InstanceHandle_t  handle,
Time_t  timestamp 
)
inline

Publishes the provided instance_data. If handle is HANDLE_NIL, then the handle is determined from the 'key fields' of instance_data.

The source_timestamp is used as the source timestamp for the published data.

This routine may block if RELIABILITY kind == RELIABLE, RESOURCE_LIMITS are not UNLIMITED, and the local resources are exhausted. The routine will block at most 'max_blocking_time' as configured in the RELIABLITY QoS. If the routine is still unable to handle the data, after blocking, then RETCODE_TIMEOUT is returned.

The routine may return RETCODE_OUT_OF_RESOURCES if it is determined that no amount of blocking will allow the data to be processed.

On success, RETCODE_OK is returned.

Implements IDataWriter< T >.


© 2009-2020 Twin Oaks Computing, Inc
Castle Rock, CO 80108
All rights reserved.