Class dds::pub::DataWriter
template <typename T>
ClassList > dds > pub > DataWriter
Public Functions
| Type | Name |
|---|---|
| DataWriter (Publisher & publisher, dds::topic::Topic< T > & topic, const astutedds::dcps::DataWriterQos & qos={}) |
|
| DataWriter (const DataWriter &) = delete |
|
| bool | dispose_instance (astutedds::dcps::InstanceHandle_t handle) DDS §2.2.2.4.2.13 — dispose_instance(handle). |
| bool | dispose_instance (const T & sample) DDS §2.2.2.4.2.13 — dispose_instance(sample). |
| astutedds::dcps::InstanceHandle_t | lookup_instance (const T & sample) const DDS §2.2.2.4.2.7 — lookup_instance(sample) const. |
| DataWriter & | operator= (const DataWriter &) = delete |
| astutedds::dcps::DataWriter * | raw () const |
| astutedds::dcps::InstanceHandle_t | register_instance (const T & sample) DDS §2.2.2.4.2.5 — register_instance(sample). |
| bool | unregister_instance (astutedds::dcps::InstanceHandle_t handle) DDS §2.2.2.4.2.6 — unregister_instance(handle). |
| bool | unregister_instance (const T & sample) DDS §2.2.2.4.2.6 — unregister_instance(sample). |
| bool | write (const T & sample) Serialize and publish a typed sample. |
| ~DataWriter () |
Public Functions Documentation
function DataWriter [1/2]
inline dds::pub::DataWriter::DataWriter (
Publisher & publisher,
dds::topic::Topic < T > & topic,
const astutedds::dcps::DataWriterQos & qos={}
)
function DataWriter [2/2]
dds::pub::DataWriter::DataWriter (
const DataWriter &
) = delete
function dispose_instance [1/2]
DDS §2.2.2.4.2.13 — dispose_instance(handle).
inline bool dds::pub::DataWriter::dispose_instance (
astutedds::dcps::InstanceHandle_t handle
)
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.
function dispose_instance [2/2]
DDS §2.2.2.4.2.13 — dispose_instance(sample).
inline bool dds::pub::DataWriter::dispose_instance (
const T & sample
)
Serialises the @key fields of sample as XCDR1 and disposes by key, so the caller does not have to have retained the handle returned by register_instance(). This is the RTI-Connext / Cyclone DDS spelling used by the pattern:
auto h = writer.lookup_instance(sample);
if (h != dds::core::HANDLE_NIL)
writer.dispose_instance(h);
function lookup_instance
DDS §2.2.2.4.2.7 — lookup_instance(sample) const.
inline astutedds::dcps::InstanceHandle_t dds::pub::DataWriter::lookup_instance (
const T & sample
) const
Returns the InstanceHandle_t previously assigned to the key carried in sample, or HANDLE_NIL if the key has never been seen by this writer. Does not register the instance.
function operator=
DataWriter & dds::pub::DataWriter::operator= (
const DataWriter &
) = delete
function raw
inline astutedds::dcps::DataWriter * dds::pub::DataWriter::raw () const
function register_instance
DDS §2.2.2.4.2.5 — register_instance(sample).
inline astutedds::dcps::InstanceHandle_t dds::pub::DataWriter::register_instance (
const T & sample
)
Serialises the @key fields of sample as XCDR1 and hands the bytes to astutedds::dcps::DataWriter::register_instance, which returns a stable handle that a later dispose_instance(handle) or unregister_instance(handle) call can use to emit a keyed DATA(K) on the wire without re-supplying the sample. Returns HANDLE_NIL for unkeyed topics.
function unregister_instance [1/2]
DDS §2.2.2.4.2.6 — unregister_instance(handle).
inline bool dds::pub::DataWriter::unregister_instance (
astutedds::dcps::InstanceHandle_t handle
)
function unregister_instance [2/2]
DDS §2.2.2.4.2.6 — unregister_instance(sample).
inline bool dds::pub::DataWriter::unregister_instance (
const T & sample
)
Convenience overload that serialises the @key fields of sample as XCDR1 and unregisters by key, so the caller does not have to have retained the handle returned by register_instance().
function write
Serialize and publish a typed sample.
inline bool dds::pub::DataWriter::write (
const T & sample
)
function ~DataWriter
inline dds::pub::DataWriter::~DataWriter ()
The documentation for this class was generated from the following file include/astutedds/dcps/CorePolicy.hpp