From 20bccd69c052e43f772ce82b8326de25a036fb39 Mon Sep 17 00:00:00 2001 From: Alejandro Hernandez Cordero Date: Thu, 6 Nov 2025 10:18:19 +0100 Subject: [PATCH] Pointcloud2 display set QoS to best effort Signed-off-by: Alejandro Hernandez Cordero --- .../include/rviz_common/properties/qos_profile_property.hpp | 2 ++ .../src/rviz_common/properties/qos_profile_property.cpp | 5 +++++ .../displays/pointcloud/point_cloud2_display.cpp | 2 ++ .../displays/pointcloud/point_cloud_display.cpp | 2 ++ 4 files changed, 11 insertions(+) diff --git a/rviz_common/include/rviz_common/properties/qos_profile_property.hpp b/rviz_common/include/rviz_common/properties/qos_profile_property.hpp index c489db6a9..66aaf0e1f 100644 --- a/rviz_common/include/rviz_common/properties/qos_profile_property.hpp +++ b/rviz_common/include/rviz_common/properties/qos_profile_property.hpp @@ -68,6 +68,8 @@ class RVIZ_COMMON_PUBLIC QosProfileProperty : public QObject */ void initialize(std::function qos_changed_callback); + void setBestEffort(); + private Q_SLOTS: void updateQosProfile(); diff --git a/rviz_common/src/rviz_common/properties/qos_profile_property.cpp b/rviz_common/src/rviz_common/properties/qos_profile_property.cpp index 48fd25ca6..21a8c7475 100644 --- a/rviz_common/src/rviz_common/properties/qos_profile_property.cpp +++ b/rviz_common/src/rviz_common/properties/qos_profile_property.cpp @@ -124,6 +124,11 @@ void QosProfileProperty::initialize(std::function qos_changed qos_changed_callback_ = std::move(qos_changed_callback); } +void QosProfileProperty::setBestEffort() +{ + reliability_policy_property_->setStdString("Best Effort"); +} + void QosProfileProperty::updateQosProfile() { rmw_qos_profile_t profile = rmw_qos_profile_default; diff --git a/rviz_default_plugins/src/rviz_default_plugins/displays/pointcloud/point_cloud2_display.cpp b/rviz_default_plugins/src/rviz_default_plugins/displays/pointcloud/point_cloud2_display.cpp index 4814ff2d3..4bb5f003a 100644 --- a/rviz_default_plugins/src/rviz_default_plugins/displays/pointcloud/point_cloud2_display.cpp +++ b/rviz_default_plugins/src/rviz_default_plugins/displays/pointcloud/point_cloud2_display.cpp @@ -57,6 +57,8 @@ void PointCloud2Display::onInitialize() { PC2RDClass::onInitialize(); point_cloud_common_->initialize(context_, scene_node_); + + qos_profile_property_->setBestEffort(); } void PointCloud2Display::processMessage(const sensor_msgs::msg::PointCloud2::ConstSharedPtr cloud) diff --git a/rviz_default_plugins/src/rviz_default_plugins/displays/pointcloud/point_cloud_display.cpp b/rviz_default_plugins/src/rviz_default_plugins/displays/pointcloud/point_cloud_display.cpp index 66fc24f6e..ead6e8231 100644 --- a/rviz_default_plugins/src/rviz_default_plugins/displays/pointcloud/point_cloud_display.cpp +++ b/rviz_default_plugins/src/rviz_default_plugins/displays/pointcloud/point_cloud_display.cpp @@ -52,6 +52,8 @@ void PointCloudDisplay::onInitialize() { MFDClass::onInitialize(); point_cloud_common_->initialize(context_, scene_node_); + + qos_profile_property_->setBestEffort(); } void PointCloudDisplay::processMessage(const sensor_msgs::msg::PointCloud::ConstSharedPtr cloud)