From 0a0c11eb7e449b8b0b01cb4a2b5a8a1dee433ec8 Mon Sep 17 00:00:00 2001 From: Michel Hidalgo Date: Thu, 20 Aug 2020 10:29:50 -0300 Subject: [PATCH 1/2] Update publisher/subscription QoS query API documentation. Follow-up after 0176872b10ff502ae34fa3eef5e900145f18b0b3. Signed-off-by: Michel Hidalgo --- rmw/include/rmw/rmw.h | 34 ++++++++++++++++++++++++++++------ 1 file changed, 28 insertions(+), 6 deletions(-) diff --git a/rmw/include/rmw/rmw.h b/rmw/include/rmw/rmw.h index f9d19cbd..fa0bd15f 100644 --- a/rmw/include/rmw/rmw.h +++ b/rmw/include/rmw/rmw.h @@ -470,14 +470,26 @@ rmw_publisher_count_matched_subscriptions( * depends on the underlying rmw implementation. * If the underlying setting in use can't be represented in ROS terms, * it will be set to RMW_*_UNKNOWN. - * The value of avoid_ros_namespace_conventions field is not resolved - * with this function. The rcl function rcl_publisher_get_actual_qos - * resolves it. + * + * \note The value of avoid_ros_namespace_conventions field is not resolved + * with this function. The rcl function `rcl_publisher_get_actual_qos()` + * resolves it. + * + *
+ * Attribute | Adherence + * ------------------ | ------------- + * Allocates Memory | No + * Thread-Safe | No + * Uses Atomics | Maybe [1] + * Lock-Free | Maybe [1] + * [1] rmw implementation defined, check the implementation documentation * * \param[in] publisher the publisher object to inspect * \param[out] qos the actual qos settings * \return `RMW_RET_OK` if successful, or * \return `RMW_RET_INVALID_ARGUMENT` if either argument is null, or + * \return `RMW_RET_INCORRECT_RMW_IMPLEMENTATION` if publisher + * implementation identifier does not match, or * \return `RMW_RET_ERROR` if an unexpected error occurs. */ RMW_PUBLIC @@ -775,9 +787,19 @@ rmw_subscription_count_matched_publishers( * depends on the underlying rmw implementation. * If the underlying setting in use can't be represented in ROS terms, * it will be set to RMW_*_UNKNOWN. - * The value of avoid_ros_namespace_conventions field is not resolved - * with this function. The rcl function rcl_subscription_get_actual_qos - * resolves it. + * + * \note The value of avoid_ros_namespace_conventions field is not resolved + * with this function. The rcl function `rcl_subscription_get_actual_qos()` + * resolves it. + * + *
+ * Attribute | Adherence + * ------------------ | ------------- + * Allocates Memory | No + * Thread-Safe | No + * Uses Atomics | Maybe [1] + * Lock-Free | Maybe [1] + * [1] rmw implementation defined, check the implementation documentation * * \param[in] subscription the subscription object to inspect * \param[out] qos the actual qos settings From 9efd6242ab7d9c1faef192ebb37aa91e39d46206 Mon Sep 17 00:00:00 2001 From: Michel Hidalgo Date: Mon, 24 Aug 2020 11:56:56 -0300 Subject: [PATCH 2/2] Relax QoS query APIs allocation adherence. Signed-off-by: Michel Hidalgo --- rmw/include/rmw/rmw.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rmw/include/rmw/rmw.h b/rmw/include/rmw/rmw.h index fa0bd15f..a57efc18 100644 --- a/rmw/include/rmw/rmw.h +++ b/rmw/include/rmw/rmw.h @@ -478,7 +478,7 @@ rmw_publisher_count_matched_subscriptions( *
* Attribute | Adherence * ------------------ | ------------- - * Allocates Memory | No + * Allocates Memory | Maybe [1] * Thread-Safe | No * Uses Atomics | Maybe [1] * Lock-Free | Maybe [1] @@ -795,7 +795,7 @@ rmw_subscription_count_matched_publishers( *
* Attribute | Adherence * ------------------ | ------------- - * Allocates Memory | No + * Allocates Memory | Maybe [1] * Thread-Safe | No * Uses Atomics | Maybe [1] * Lock-Free | Maybe [1]