File qos.hpp
FileList > astutedds > rmw > qos.hpp
Go to the source code of this file
RMW to AstuteDDS QoS-policy mapping. More...
#include <astutedds/c/astutedds.h>#include <rmw/qos_profiles.h>#include <rmw/types.h>
Public Functions
| Type | Name |
|---|---|
| void | fill_reader_qos_readback (rmw_qos_profile_t & out, const AstuteDDS_DataReaderQos & r) |
| void | fill_writer_qos_readback (rmw_qos_profile_t & out, const AstuteDDS_DataWriterQos & w) |
| AstuteDDS_DataReaderQos | map_reader_qos (const rmw_qos_profile_t & q) |
| AstuteDDS_RequesterQos | map_requester_qos (const rmw_qos_profile_t & q) |
| AstuteDDS_DataWriterQos | map_writer_qos (const rmw_qos_profile_t & q) |
Detailed Description
ROS 2 QoS is a superset of what AstuteDDS currently expresses. These helpers project the supported subset (reliability, history kind, history depth, durability) from an rmw_qos_profile_t onto the vendor QoS structs used at DataWriter/DataReader creation time.
This is the single mapping point in the RMW: publisher, subscription, service and client create paths all route through here, so any policy tweak lives in exactly one place. Policies AstuteDDS does not yet model (deadline, lifespan, liveliness lease, etc.) are carried on each PIMPL's cached QoS copy and echoed back from *_get_actual_qos().
Public Functions Documentation
function fill_reader_qos_readback
void fill_reader_qos_readback (
rmw_qos_profile_t & out,
const AstuteDDS_DataReaderQos & r
)
Reader-side counterpart of fill_writer_qos_readback (no lifespan).
Parameters:
outProfile to populate in place.rEffective reader QoS fromastutedds_datareader_get_qos.
function fill_writer_qos_readback
void fill_writer_qos_readback (
rmw_qos_profile_t & out,
const AstuteDDS_DataWriterQos & w
)
Overlay the effective policies read back from an AstuteDDS DataWriter QoS onto an rmw_qos_profile_t (reliability, durability, history, depth, deadline, lifespan, liveliness kind + lease). Policies AstuteDDS does not model are left untouched, so callers should pre-seed out (e.g. from rmw_qos_profile_default).
Parameters:
outProfile to populate in place.wEffective writer QoS fromastutedds_datawriter_get_qos.
function map_reader_qos
AstuteDDS_DataReaderQos map_reader_qos (
const rmw_qos_profile_t & q
)
Map an RMW QoS profile to an AstuteDDS DataReader QoS struct. Symmetric with map_writer_qos.
Parameters:
qSource RMW profile.
Returns:
Populated AstuteDDS reader QoS.
function map_requester_qos
AstuteDDS_RequesterQos map_requester_qos (
const rmw_qos_profile_t & q
)
Map an RMW QoS profile to an AstuteDDS Requester/Replier QoS struct (the merged writer+reader QoS shared by the RPC primitives). Used by rmw_create_client and rmw_create_service.
Parameters:
qSource RMW profile.
Returns:
Populated AstuteDDS requester/replier QoS.
function map_writer_qos
AstuteDDS_DataWriterQos map_writer_qos (
const rmw_qos_profile_t & q
)
Map an RMW QoS profile to an AstuteDDS DataWriter QoS struct.
Parameters:
qSource RMW profile.
Returns:
Populated AstuteDDS writer QoS.
The documentation for this class was generated from the following file include/astutedds/rmw/qos.hpp