diff --git a/visualization/motion_planning_tasks/src/task_display.cpp b/visualization/motion_planning_tasks/src/task_display.cpp index 0c07a2dea..ee8c5e498 100644 --- a/visualization/motion_planning_tasks/src/task_display.cpp +++ b/visualization/motion_planning_tasks/src/task_display.cpp @@ -184,12 +184,24 @@ void TaskDisplay::calculateOffsetPosition() { scene_node_->setOrientation(orientation); } +#if RCLCPP_VERSION_GTE(30, 0, 0) +void TaskDisplay::update(std::chrono::nanoseconds wall_dt, std::chrono::nanoseconds ros_dt) { + requestPanel(); + Display::update(wall_dt, ros_dt); + calculateOffsetPosition(); + using namespace std::chrono; + float wall_dt_s = duration_cast>(wall_dt).count(); + float ros_dt_s = duration_cast>(ros_dt).count(); + trajectory_visual_->update(wall_dt_s, ros_dt_s); +} +#else void TaskDisplay::update(float wall_dt, float ros_dt) { requestPanel(); Display::update(wall_dt, ros_dt); calculateOffsetPosition(); trajectory_visual_->update(wall_dt, ros_dt); } +#endif void TaskDisplay::changedRobotDescription() { if (isEnabled()) diff --git a/visualization/motion_planning_tasks/src/task_display.h b/visualization/motion_planning_tasks/src/task_display.h index 41fa159d1..077135694 100644 --- a/visualization/motion_planning_tasks/src/task_display.h +++ b/visualization/motion_planning_tasks/src/task_display.h @@ -38,6 +38,8 @@ #pragma once +#include +#include #include #include #include @@ -83,7 +85,11 @@ class TaskDisplay : public rviz_common::Display void loadRobotModel(); +#if RCLCPP_VERSION_GTE(30, 0, 0) + void update(std::chrono::nanoseconds wall_dt, std::chrono::nanoseconds ros_dt) override; +#else void update(float wall_dt, float ros_dt) override; +#endif void reset() override; void save(rviz_common::Config config) const override; void load(const rviz_common::Config& config) override;