Class astutedds::dcps::DataWriter

ClassList > astutedds > dcps > DataWriter

Publishes data samples to a topic.

  • #include <dcps.hpp>

Inherited by the following classes: astutedds::xtypes::builtin::BuiltinDataWriter

Public Types

Type Name
typedef std::function< void()> HeartbeatCallback
typedef std::function< void(const rtps::GUID_t &)> LivelinessAssertHook
typedef std::function< LivelinessLostStatus()> LivelinessLostStatusHook
typedef std::function< void(const std::vector< uint8_t > &data, const rtps::GUID_t &writer_guid, const rtps::SequenceNumber_t &sequence_number)> LocalDeliverCallback
typedef std::function< void(const std::vector< uint8_t > &data, const rtps::GUID_t &writer_guid, const rtps::SequenceNumber_t &sequence_number, uint64_t coherent_set_start_sn, bool end_of_coherent_set)> LocalDeliverCoherentCallback
typedef std::function< void(const std::vector< uint8_t > &)> SendCallback
typedef std::function< void(const std::vector< uint8_t > &xcdr1Data, const std::vector< uint8_t > &xcdr2Data, uint64_t in_coherent_set_start_sn, bool end_of_coherent_set, uint64_t &out_coherent_set_start_sn)> SendCoherentCallback
typedef std::function< void(const std::vector< uint8_t > &xcdr1Data, const std::vector< uint8_t > &xcdr2Data, uint32_t statusInfoBits, int64_t tsSecondsOverride, uint32_t tsFractionOverride)> SendDisposeCallback
typedef std::function< void(const std::vector< uint8_t > &, const std::vector< uint8_t > &)> SendDualCallback

Public Functions

Type Name
DataWriter (Topic * topic, Publisher * publisher)
DataWriter (const DataWriter &) = delete
void add_matched_reader (const rtps::GUID_t & reader_guid)
bool assert_liveliness ()
Explicitly assert liveliness on this writer (DDS §2.2.2.4.2.22). Required for MANUAL_BY_TOPIC writers when no write() is happening. A no-op for AUTOMATIC writers. Returns false if the writer has not been registered with the participant's liveliness manager (e.g. participant not enabled yet).
bool dispose (uint64_t handle)
Dispose a type instance.
bool dispose (const std::vector< uint8_t > & xcdr1Data)
bool dispose (const std::vector< uint8_t > & xcdr1Data, const std::vector< uint8_t > & xcdr2Data)
bool dispose_w_timestamp (uint64_t handle, const DdsTime_t & source_timestamp)
bool dispose_w_timestamp (const std::vector< uint8_t > & xcdr1Data, const DdsTime_t & source_timestamp)
bool dispose_w_timestamp (const std::vector< uint8_t > & xcdr1Data, const std::vector< uint8_t > & xcdr2Data, const DdsTime_t & source_timestamp)
ReturnCode_t enable () noexcept
InstanceHandle_t get_instance_handle () noexcept const
ReturnCode_t get_key_value (std::vector< uint8_t > & key_holder, InstanceHandle_t handle) const
Copy the cached key bytes for handle intokey_holder (DDS §2.2.2.4.2.9). Returns RETCODE_OK when the handle was previously registered or written, RETCODE_BAD_PARAMETER for HANDLE_NIL and unknown handles. Mirrors the same signature theDataReader exposes.
DataWriterListener * get_listener () const
StatusMask get_listener_mask () const
LivelinessLostStatus get_liveliness_lost_status () const
Get liveliness-lost status (DDS §2.2.4.1.6). Only meaningful for MANUAL_BY_TOPIC / MANUAL_BY_PARTICIPANT writers — bumps each time the writer's lease expires without an assertion. total_count_change is reset on read.
ReturnCode_t get_matched_subscription_data (SubscriptionBuiltinTopicData & data, InstanceHandle_t handle) const
ReturnCode_t get_matched_subscriptions (std::vector< InstanceHandle_t > & handles) const
OfferedDeadlineMissedStatus get_offered_deadline_missed_status ()
Get offered-deadline-missed status (DDS §2.2.4.1.7). Bumps every time the writer fails to publish within its DEADLINE QoS period. total_count_change reset on read.
void get_offered_incompatible_qos_status (OfferedIncompatibleQosStatus & out)
void get_publication_matched_status (PublicationMatchedStatus & out)
const DataWriterQos & get_qos () const
StatusMask get_status_changes () noexcept const
EntityStatusCondition * get_statuscondition () noexcept
Topic * get_topic () const
const rtps::GUID_t & guid () const
const std::deque< CacheChange > & history_cache () const
bool is_enabled () noexcept const
uint64_t lookup_instance (const std::vector< uint8_t > & xcdr1Data) const
Look up the InstanceHandle_t for xcdr1Data without registering. Returns HANDLE_NIL if the key has never been seen by this writer. DDS §2.2.2.4.2.7.
void note_offered_incompatible_qos (QosPolicyId_t failed_policy_id)
void notify_write (InstanceHandle_t handle)
DataWriter & operator= (const DataWriter &) = delete
void process_acknack (const rtps::GUID_t & reader_guid, const std::set< uint32_t > & requested_sns, rtps::Count_t count)
Publisher * publisher () const
uint64_t register_instance ()
Register a type instance (no-arg legacy API).
uint64_t register_instance (const std::vector< uint8_t > & xcdr1Data)
Register a type instance from a serialized sample.
uint64_t register_instance (const std::vector< uint8_t > & xcdr1Data, const std::vector< uint8_t > & xcdr2Data)
uint64_t register_instance_w_timestamp (const std::vector< uint8_t > & xcdr1Data, const DdsTime_t & source_timestamp)
uint64_t register_instance_w_timestamp (const std::vector< uint8_t > & xcdr1Data, const std::vector< uint8_t > & xcdr2Data, const DdsTime_t & source_timestamp)
void remove_expired_samples ()
void remove_matched_reader (const rtps::GUID_t & reader_guid)
void set_deadline_timer_service (TimerService * ts)
void set_guid (const rtps::GUID_t & guid)
void set_heartbeat_callback (HeartbeatCallback callback)
void set_listener (DataWriterListener * listener, StatusMask mask=STATUS_MASK_ALL)
void set_liveliness_assert_hook (LivelinessAssertHook hook)
void set_liveliness_lost_hook (LivelinessLostStatusHook hook)
void set_local_deliver_callback (LocalDeliverCallback callback)
void set_local_deliver_coherent_callback (LocalDeliverCoherentCallback callback)
void set_qos (const DataWriterQos & qos)
void set_send_callback (SendCallback callback)
void set_send_coherent_callback (SendCoherentCallback callback)
void set_send_dispose_callback (SendDisposeCallback callback)
void set_send_dual_callback (SendDualCallback callback)
void start_deadline_timer ()
void stop_deadline_timer ()
Topic * topic () const
bool unregister_instance (uint64_t handle)
Unregister a type instance previously registered or written.
bool unregister_instance (const std::vector< uint8_t > & xcdr1Data)
bool unregister_instance (const std::vector< uint8_t > & xcdr1Data, const std::vector< uint8_t > & xcdr2Data)
bool unregister_instance_w_timestamp (uint64_t handle, const DdsTime_t & source_timestamp)
bool unregister_instance_w_timestamp (const std::vector< uint8_t > & xcdr1Data, const DdsTime_t & source_timestamp)
bool unregister_instance_w_timestamp (const std::vector< uint8_t > & xcdr1Data, const std::vector< uint8_t > & xcdr2Data, const DdsTime_t & source_timestamp)
ReturnCode_t wait_for_acknowledgments (const Duration_t & max_wait)
Wait for acknowledgments from all matched readers.
bool write (const std::vector< uint8_t > & data)
Write a serialized data sample.
bool write (const std::vector< uint8_t > & xcdr1Data, const std::vector< uint8_t > & xcdr2Data)
Write dual-encoded data (XCDR1 + XCDR2)
uint64_t write_coherent (const std::vector< uint8_t > & xcdr1Data, const std::vector< uint8_t > & xcdr2Data, uint64_t in_start_sn, bool end_of_set)
Phase 3.d — write a sample as part of an active coherent set.
bool write_w_timestamp (const std::vector< uint8_t > & data, const DdsTime_t & source_timestamp)
bool write_w_timestamp (const std::vector< uint8_t > & xcdr1Data, const std::vector< uint8_t > & xcdr2Data, const DdsTime_t & source_timestamp)
virtual ~DataWriter () = default

Public Types Documentation

typedef HeartbeatCallback

using astutedds::dcps::DataWriter::HeartbeatCallback =  std::function<void()>;

typedef LivelinessAssertHook

using astutedds::dcps::DataWriter::LivelinessAssertHook =  std::function<void(const rtps::GUID_t&)>;

Hook installed by Publisher::create_datawriter — wires this writer's assert_liveliness() / write() to the participant's LivelinessManager. Not part of the public DDS API.


typedef LivelinessLostStatusHook

using astutedds::dcps::DataWriter::LivelinessLostStatusHook =  std::function<LivelinessLostStatus()>;

typedef LocalDeliverCallback

using astutedds::dcps::DataWriter::LocalDeliverCallback =  std::function<void(const std::vector<uint8_t> &data, const rtps::GUID_t &writer_guid, const rtps::SequenceNumber_t &sequence_number)>;

typedef LocalDeliverCoherentCallback

using astutedds::dcps::DataWriter::LocalDeliverCoherentCallback =  std::function<void(const std::vector<uint8_t> &data, const rtps::GUID_t &writer_guid, const rtps::SequenceNumber_t &sequence_number, uint64_t coherent_set_start_sn, bool end_of_coherent_set)>;

typedef SendCallback

using astutedds::dcps::DataWriter::SendCallback =  std::function<void(const std::vector<uint8_t> &)>;

typedef SendCoherentCallback

using astutedds::dcps::DataWriter::SendCoherentCallback =  std::function<void( const std::vector<uint8_t> &xcdr1Data, const std::vector<uint8_t> &xcdr2Data, uint64_t in_coherent_set_start_sn, bool end_of_coherent_set, uint64_t &out_coherent_set_start_sn)>;

typedef SendDisposeCallback

using astutedds::dcps::DataWriter::SendDisposeCallback =  std::function<void(const std::vector<uint8_t> &xcdr1Data, const std::vector<uint8_t> &xcdr2Data, uint32_t statusInfoBits, int64_t tsSecondsOverride, uint32_t tsFractionOverride)>;

typedef SendDualCallback

using astutedds::dcps::DataWriter::SendDualCallback =  std::function<void(const std::vector<uint8_t> &, const std::vector<uint8_t> &)>;

Public Functions Documentation

function DataWriter [1/2]

astutedds::dcps::DataWriter::DataWriter (
    Topic * topic,
    Publisher * publisher
) 

function DataWriter [2/2]

astutedds::dcps::DataWriter::DataWriter (
    const DataWriter &
) = delete

function add_matched_reader

void astutedds::dcps::DataWriter::add_matched_reader (
    const rtps::GUID_t & reader_guid
) 

function assert_liveliness

Explicitly assert liveliness on this writer (DDS §2.2.2.4.2.22). Required for MANUAL_BY_TOPIC writers when no write() is happening. A no-op for AUTOMATIC writers. Returns false if the writer has not been registered with the participant's liveliness manager (e.g. participant not enabled yet).

bool astutedds::dcps::DataWriter::assert_liveliness () 


function dispose [1/3]

Dispose a type instance.

bool astutedds::dcps::DataWriter::dispose (
    uint64_t handle
) 

DDS §2.2.2.4.2.13 / RTPS §8.7.4.1. Emits a DATA submessage with the K flag set and PID_STATUS_INFO carrying the DISPOSED bit (0x00000001) so remote readers transition the instance to NOT_ALIVE_DISPOSED_INSTANCE_STATE. The (uint64_t) overload requires the handle to have been registered or previously written; use the sample-based overloads for stateless dispose.


function dispose [2/3]

bool astutedds::dcps::DataWriter::dispose (
    const std::vector< uint8_t > & xcdr1Data
) 

function dispose [3/3]

bool astutedds::dcps::DataWriter::dispose (
    const std::vector< uint8_t > & xcdr1Data,
    const std::vector< uint8_t > & xcdr2Data
) 

function dispose_w_timestamp [1/3]

bool astutedds::dcps::DataWriter::dispose_w_timestamp (
    uint64_t handle,
    const DdsTime_t & source_timestamp
) 

function dispose_w_timestamp [2/3]

bool astutedds::dcps::DataWriter::dispose_w_timestamp (
    const std::vector< uint8_t > & xcdr1Data,
    const DdsTime_t & source_timestamp
) 

function dispose_w_timestamp [3/3]

bool astutedds::dcps::DataWriter::dispose_w_timestamp (
    const std::vector< uint8_t > & xcdr1Data,
    const std::vector< uint8_t > & xcdr2Data,
    const DdsTime_t & source_timestamp
) 

function enable

inline ReturnCode_t astutedds::dcps::DataWriter::enable () noexcept

function get_instance_handle

inline InstanceHandle_t astutedds::dcps::DataWriter::get_instance_handle () noexcept const

function get_key_value

Copy the cached key bytes for handle intokey_holder (DDS §2.2.2.4.2.9). Returns RETCODE_OK when the handle was previously registered or written, RETCODE_BAD_PARAMETER for HANDLE_NIL and unknown handles. Mirrors the same signature theDataReader exposes.

ReturnCode_t astutedds::dcps::DataWriter::get_key_value (
    std::vector< uint8_t > & key_holder,
    InstanceHandle_t handle
) const


function get_listener

inline DataWriterListener * astutedds::dcps::DataWriter::get_listener () const

function get_listener_mask

inline StatusMask astutedds::dcps::DataWriter::get_listener_mask () const

function get_liveliness_lost_status

Get liveliness-lost status (DDS §2.2.4.1.6). Only meaningful for MANUAL_BY_TOPIC / MANUAL_BY_PARTICIPANT writers — bumps each time the writer's lease expires without an assertion. total_count_change is reset on read.

LivelinessLostStatus astutedds::dcps::DataWriter::get_liveliness_lost_status () const


function get_matched_subscription_data

ReturnCode_t astutedds::dcps::DataWriter::get_matched_subscription_data (
    SubscriptionBuiltinTopicData & data,
    InstanceHandle_t handle
) const

§2.2.2.4.1.10 — retrieve SubscriptionBuiltinTopicData for a specific matched subscription. Returns RETCODE_BAD_PARAMETER if handle does not correspond to any currently matched subscription of this writer, RETCODE_NOT_ENABLED if the writer has not been enabled, RETCODE_OK on success.


function get_matched_subscriptions

ReturnCode_t astutedds::dcps::DataWriter::get_matched_subscriptions (
    std::vector< InstanceHandle_t > & handles
) const

§2.2.2.4.1.9 — retrieve the list of subscriptions currently matched by this DataWriter. handles is cleared and populated with a stable-per-process InstanceHandle_t for each matched reader (derived from its RTPS GUID via liveliness_handle_from_guid()). Returns RETCODE_NOT_ENABLED if the writer has not been enabled, RETCODE_OK otherwise.


function get_offered_deadline_missed_status

Get offered-deadline-missed status (DDS §2.2.4.1.7). Bumps every time the writer fails to publish within its DEADLINE QoS period. total_count_change reset on read.

OfferedDeadlineMissedStatus astutedds::dcps::DataWriter::get_offered_deadline_missed_status () 


function get_offered_incompatible_qos_status

void astutedds::dcps::DataWriter::get_offered_incompatible_qos_status (
    OfferedIncompatibleQosStatus & out
) 

function get_publication_matched_status

void astutedds::dcps::DataWriter::get_publication_matched_status (
    PublicationMatchedStatus & out
) 

function get_qos

inline const DataWriterQos & astutedds::dcps::DataWriter::get_qos () const

function get_status_changes

inline StatusMask astutedds::dcps::DataWriter::get_status_changes () noexcept const

function get_statuscondition

inline EntityStatusCondition * astutedds::dcps::DataWriter::get_statuscondition () noexcept

function get_topic

inline Topic * astutedds::dcps::DataWriter::get_topic () const

function guid

inline const rtps::GUID_t & astutedds::dcps::DataWriter::guid () const

function history_cache

inline const std::deque< CacheChange > & astutedds::dcps::DataWriter::history_cache () const

function is_enabled

inline bool astutedds::dcps::DataWriter::is_enabled () noexcept const

function lookup_instance

Look up the InstanceHandle_t for xcdr1Data without registering. Returns HANDLE_NIL if the key has never been seen by this writer. DDS §2.2.2.4.2.7.

uint64_t astutedds::dcps::DataWriter::lookup_instance (
    const std::vector< uint8_t > & xcdr1Data
) const


function note_offered_incompatible_qos

void astutedds::dcps::DataWriter::note_offered_incompatible_qos (
    QosPolicyId_t failed_policy_id
) 

Record that a remote DataReader was seen with QoS incompatible with this writer's offered QoS. Bumps the OfferedIncompatibleQosStatus counters and, if a listener is registered, delivers a copy of the updated status.


function notify_write

void astutedds::dcps::DataWriter::notify_write (
    InstanceHandle_t handle
) 

function operator=

DataWriter & astutedds::dcps::DataWriter::operator= (
    const DataWriter &
) = delete

function process_acknack

void astutedds::dcps::DataWriter::process_acknack (
    const rtps::GUID_t & reader_guid,
    const std::set< uint32_t > & requested_sns,
    rtps::Count_t count
) 

function publisher

inline Publisher * astutedds::dcps::DataWriter::publisher () const

function register_instance [1/3]

Register a type instance (no-arg legacy API).

uint64_t astutedds::dcps::DataWriter::register_instance () 

Always returns 0. Prefer the sample-based overloads for real per-instance handles (DDS §2.2.2.4.2.5).


function register_instance [2/3]

Register a type instance from a serialized sample.

uint64_t astutedds::dcps::DataWriter::register_instance (
    const std::vector< uint8_t > & xcdr1Data
) 

DDS §2.2.2.4.2.5. Returns a stable handle derived from the @key fields of xcdr1Data. The key bytes are cached so a later dispose(handle) / unregister_instance(handle) call can emit a keyed DATA(K) on the wire without the caller needing to re-supply the sample. Returns HANDLE_NIL for unkeyed topics.


function register_instance [3/3]

uint64_t astutedds::dcps::DataWriter::register_instance (
    const std::vector< uint8_t > & xcdr1Data,
    const std::vector< uint8_t > & xcdr2Data
) 

function register_instance_w_timestamp [1/2]

uint64_t astutedds::dcps::DataWriter::register_instance_w_timestamp (
    const std::vector< uint8_t > & xcdr1Data,
    const DdsTime_t & source_timestamp
) 

function register_instance_w_timestamp [2/2]

uint64_t astutedds::dcps::DataWriter::register_instance_w_timestamp (
    const std::vector< uint8_t > & xcdr1Data,
    const std::vector< uint8_t > & xcdr2Data,
    const DdsTime_t & source_timestamp
) 

function remove_expired_samples

void astutedds::dcps::DataWriter::remove_expired_samples () 

function remove_matched_reader

void astutedds::dcps::DataWriter::remove_matched_reader (
    const rtps::GUID_t & reader_guid
) 

function set_deadline_timer_service

inline void astutedds::dcps::DataWriter::set_deadline_timer_service (
    TimerService * ts
) 

§1.1b-B — hook installed by Publisher::create_datawriter to share the participant's TimerService. Null when no participant is attached (e.g. unit tests constructing DataWriter directly).


function set_guid

inline void astutedds::dcps::DataWriter::set_guid (
    const rtps::GUID_t & guid
) 

function set_heartbeat_callback

inline void astutedds::dcps::DataWriter::set_heartbeat_callback (
    HeartbeatCallback callback
) 

function set_listener

inline void astutedds::dcps::DataWriter::set_listener (
    DataWriterListener * listener,
    StatusMask mask=STATUS_MASK_ALL
) 

function set_liveliness_assert_hook

inline void astutedds::dcps::DataWriter::set_liveliness_assert_hook (
    LivelinessAssertHook hook
) 

function set_liveliness_lost_hook

inline void astutedds::dcps::DataWriter::set_liveliness_lost_hook (
    LivelinessLostStatusHook hook
) 

function set_local_deliver_callback

inline void astutedds::dcps::DataWriter::set_local_deliver_callback (
    LocalDeliverCallback callback
) 

function set_local_deliver_coherent_callback

inline void astutedds::dcps::DataWriter::set_local_deliver_coherent_callback (
    LocalDeliverCoherentCallback callback
) 

function set_qos

void astutedds::dcps::DataWriter::set_qos (
    const DataWriterQos & qos
) 

function set_send_callback

inline void astutedds::dcps::DataWriter::set_send_callback (
    SendCallback callback
) 

function set_send_coherent_callback

inline void astutedds::dcps::DataWriter::set_send_coherent_callback (
    SendCoherentCallback callback
) 

function set_send_dispose_callback

inline void astutedds::dcps::DataWriter::set_send_dispose_callback (
    SendDisposeCallback callback
) 

function set_send_dual_callback

inline void astutedds::dcps::DataWriter::set_send_dual_callback (
    SendDualCallback callback
) 

function start_deadline_timer

void astutedds::dcps::DataWriter::start_deadline_timer () 

function stop_deadline_timer

void astutedds::dcps::DataWriter::stop_deadline_timer () 

function topic

inline Topic * astutedds::dcps::DataWriter::topic () const

function unregister_instance [1/3]

Unregister a type instance previously registered or written.

bool astutedds::dcps::DataWriter::unregister_instance (
    uint64_t handle
) 

DDS §2.2.2.4.2.6. Emits a DATA submessage with the K flag set and PID_STATUS_INFO carrying the UNREGISTERED bit (0x00000002) so remote readers transition the instance to NOT_ALIVE_UNREGISTERED_INSTANCE_STATE. Returns false if the handle is unknown (i.e. never registered nor written).


function unregister_instance [2/3]

bool astutedds::dcps::DataWriter::unregister_instance (
    const std::vector< uint8_t > & xcdr1Data
) 

function unregister_instance [3/3]

bool astutedds::dcps::DataWriter::unregister_instance (
    const std::vector< uint8_t > & xcdr1Data,
    const std::vector< uint8_t > & xcdr2Data
) 

function unregister_instance_w_timestamp [1/3]

bool astutedds::dcps::DataWriter::unregister_instance_w_timestamp (
    uint64_t handle,
    const DdsTime_t & source_timestamp
) 

function unregister_instance_w_timestamp [2/3]

bool astutedds::dcps::DataWriter::unregister_instance_w_timestamp (
    const std::vector< uint8_t > & xcdr1Data,
    const DdsTime_t & source_timestamp
) 

function unregister_instance_w_timestamp [3/3]

bool astutedds::dcps::DataWriter::unregister_instance_w_timestamp (
    const std::vector< uint8_t > & xcdr1Data,
    const std::vector< uint8_t > & xcdr2Data,
    const DdsTime_t & source_timestamp
) 

function wait_for_acknowledgments

Wait for acknowledgments from all matched readers.

inline ReturnCode_t astutedds::dcps::DataWriter::wait_for_acknowledgments (
    const Duration_t & max_wait
) 

Parameters:

  • max_wait Maximum time to wait

Returns:

RETCODE_OK or RETCODE_TIMEOUT


function write [1/2]

Write a serialized data sample.

bool astutedds::dcps::DataWriter::write (
    const std::vector< uint8_t > & data
) 

Parameters:

  • data Serialized data bytes

Returns:

true on success


function write [2/2]

Write dual-encoded data (XCDR1 + XCDR2)

bool astutedds::dcps::DataWriter::write (
    const std::vector< uint8_t > & xcdr1Data,
    const std::vector< uint8_t > & xcdr2Data
) 

Parameters:

  • xcdr1Data XCDR1 serialized data
  • xcdr2Data XCDR2 serialized data

Returns:

true on success


function write_coherent

Phase 3.d — write a sample as part of an active coherent set.

uint64_t astutedds::dcps::DataWriter::write_coherent (
    const std::vector< uint8_t > & xcdr1Data,
    const std::vector< uint8_t > & xcdr2Data,
    uint64_t in_start_sn,
    bool end_of_set
) 

Called from Publisher::end_coherent_changes() when draining the writer's buffered samples (§2.2.2.4.1.5 / RTPS §8.7.6). Behaves like write(xcdr1Data, xcdr2Data) but routes through the transport's publish_coherent() path so PID_COHERENT_SET (and PID_END_COHERENT_SET on the last sample) are emitted in the DATA submessage's inline QoS.

Parameters:

  • xcdr1Data XCDR1 serialised payload.
  • xcdr2Data XCDR2 serialised payload.
  • in_start_sn Start SN of the current coherent set; 0 means "allocate this sample's SN as the set start".
  • end_of_set When true, emit PID_END_COHERENT_SET so peer readers flush the buffered set on receipt of this sample.

Returns:

The coherent-set start SN that was stamped on the wire (equals in_start_sn unless it was 0).


function write_w_timestamp [1/2]

bool astutedds::dcps::DataWriter::write_w_timestamp (
    const std::vector< uint8_t > & data,
    const DdsTime_t & source_timestamp
) 

function write_w_timestamp [2/2]

bool astutedds::dcps::DataWriter::write_w_timestamp (
    const std::vector< uint8_t > & xcdr1Data,
    const std::vector< uint8_t > & xcdr2Data,
    const DdsTime_t & source_timestamp
) 

function ~DataWriter

virtual astutedds::dcps::DataWriter::~DataWriter () = default


The documentation for this class was generated from the following file include/astutedds/dcps/dcps.hpp