diff --git a/livox_ros2_driver/livox_ros2_driver/lddc.cpp b/livox_ros2_driver/livox_ros2_driver/lddc.cpp index c3ee803..9ab25e7 100644 --- a/livox_ros2_driver/livox_ros2_driver/lddc.cpp +++ b/livox_ros2_driver/livox_ros2_driver/lddc.cpp @@ -258,7 +258,7 @@ uint32_t Lddc::PublishPointcloudData(LidarDataQueue *queue, uint32_t packet_num, return 0; } - PointCloud cloud; + livox_ros::PointCloud cloud; cloud.header.frame_id.assign(frame_id_); cloud.height = 1; cloud.width = 0; @@ -316,11 +316,13 @@ uint32_t Lddc::PublishPointcloudData(LidarDataQueue *queue, uint32_t packet_num, last_timestamp = timestamp; } - rclcpp::Publisher::SharedPtr publisher = - std::dynamic_pointer_cast> + rclcpp::Publisher::SharedPtr publisher = + std::dynamic_pointer_cast> (GetCurrentPublisher(handle)); if (kOutputToRos == output_type_) { - publisher->publish(cloud); + sensor_msgs::msg::PointCloud2 msg; + pcl::toROSMsg(cloud, msg); + publisher->publish(msg); } else { #if 0 if (bag_) { @@ -586,7 +588,7 @@ std::shared_ptr Lddc::CreatePublisher(uint8_t msg_type, sensor_msgs::msg::PointCloud2>(topic_name, queue_size); } else if (kLivoxCustomMsg == msg_type) { RCLCPP_INFO(cur_node_->get_logger(), - "%s publish use livox custom format", topic_name); + "%s publish use livox custom format", topic_name.c_str()); return cur_node_->create_publisher< livox_interfaces::msg::CustomMsg>(topic_name, queue_size); } diff --git a/livox_ros2_driver/timesync/timesync.cpp b/livox_ros2_driver/timesync/timesync.cpp index 68e919d..dc4c8b6 100644 --- a/livox_ros2_driver/timesync/timesync.cpp +++ b/livox_ros2_driver/timesync/timesync.cpp @@ -29,6 +29,7 @@ #include #include #include +#include namespace livox_ros { using namespace std; diff --git a/livox_ros2_driver/timesync/timesync.h b/livox_ros2_driver/timesync/timesync.h index 8c22917..141bf9e 100644 --- a/livox_ros2_driver/timesync/timesync.h +++ b/livox_ros2_driver/timesync/timesync.h @@ -26,6 +26,7 @@ #define TIMESYNC_TIMESYNC_H_ #include +#include #include "comm_protocol.h" #include "comm_device.h" #include "user_uart.h"