CoreDX Data Distribution Service
The High Performance, Small Footprint DDS from Twin Oaks Computing, Inc
|
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) |
The IDataWriter interface defines the type specific operations of a DataWriter
This interface is templatized on the Type of the data that the writer handles.
T | : | DdsType |
ReturnCode_t dispose | ( | T | instance_data, |
InstanceHandle_t | handle | ||
) |
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.
Implemented in DataWriterI< T >.
ReturnCode_t dispose_w_timestamp | ( | T | instance_data, |
InstanceHandle_t | handle, | ||
Time_t | timestamp | ||
) |
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.
Implemented in DataWriterI< T >.
ReturnCode_t get_key_value | ( | T | key_holder, |
InstanceHandle_t | handle | ||
) |
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.
Implemented in DataWriterI< T >.
InstanceHandle_t lookup_instance | ( | T | instance_data | ) |
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.
Implemented in DataWriterI< T >.
InstanceHandle_t register_instance | ( | T | instance_data | ) |
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.
Implemented in DataWriterI< T >.
InstanceHandle_t register_instance_w_timestamp | ( | T | instance_data, |
Time_t | ts | ||
) |
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.
Implemented in DataWriterI< T >.
ReturnCode_t unregister_instance | ( | T | instance_data, |
InstanceHandle_t | handle | ||
) |
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.
Implemented in DataWriterI< T >.
ReturnCode_t unregister_instance_w_timestamp | ( | T | instance_data, |
InstanceHandle_t | handle, | ||
Time_t | timestamp | ||
) |
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.
Implemented in DataWriterI< T >.
ReturnCode_t write | ( | T | instance_data, |
InstanceHandle_t | handle | ||
) |
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.
Implemented in DataWriterI< T >.
ReturnCode_t write_w_timestamp | ( | T | instance_data, |
InstanceHandle_t | handle, | ||
Time_t | timestamp | ||
) |
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.
Implemented in DataWriterI< T >.