diff --git a/CMakeLists.txt b/CMakeLists.txt
index a825404..7bb0114 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,41 +1,56 @@
cmake_minimum_required(VERSION 3.5)
project(rslidar_msg)
-# Default to C99
-if(NOT CMAKE_C_STANDARD)
- set(CMAKE_C_STANDARD 99)
-endif()
+#ROS#
+find_package(catkin QUIET)
+if(catkin_FOUND)
+ message(=============================================================)
+ message("-- ROS Found. ROS Support is turned On.")
+ message(=============================================================)
-# Default to C++14
-if(NOT CMAKE_CXX_STANDARD)
- set(CMAKE_CXX_STANDARD 14)
-endif()
+ find_package(catkin REQUIRED COMPONENTS
+ std_msgs
+ message_generation
+ )
-if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
- add_compile_options(-Wall -Wextra -Wpedantic)
-endif()
+ add_message_files(
+ DIRECTORY msg
+ FILES
+ RslidarPacket.msg
+ )
-# find dependencies
-find_package(ament_cmake REQUIRED)
-find_package(std_msgs REQUIRED)
-find_package(rclcpp REQUIRED)
-find_package(builtin_interfaces REQUIRED)
-find_package(rosidl_default_generators REQUIRED)
-
-rosidl_generate_interfaces(${PROJECT_NAME}
- "msg/RslidarPacket.msg"
- DEPENDENCIES builtin_interfaces std_msgs
- )
-
-if(BUILD_TESTING)
- find_package(ament_lint_auto REQUIRED)
- # the following line skips the linter which checks for copyrights
- # uncomment the line when a copyright and license is not present in all source files
- #set(ament_cmake_copyright_FOUND TRUE)
- # the following line skips cpplint (only works in a git repo)
- # uncomment the line when this package is not in a git repo
- #set(ament_cmake_cpplint_FOUND TRUE)
- ament_lint_auto_find_test_dependencies()
+ generate_messages(DEPENDENCIES std_msgs)
+ catkin_package(CATKIN_DEPENDS std_msgs message_runtime)
endif()
-ament_package()
+
+#ROS2#
+find_package(ament_cmake QUIET)
+if(ament_cmake_FOUND)
+
+ message(=============================================================)
+ message("-- ROS2 Found. ROS2 Support is turned On.")
+ message(=============================================================)
+
+ # Default to C++17
+ if(NOT CMAKE_CXX_STANDARD)
+ set(CMAKE_CXX_STANDARD 17)
+ set(CMAKE_CXX_STANDARD_REQUIRED ON)
+ endif()
+ if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+ add_compile_options(-Wall -Wextra -Wpedantic)
+ endif()
+
+ find_package(builtin_interfaces REQUIRED)
+ find_package(std_msgs REQUIRED)
+ find_package(rosidl_default_generators REQUIRED)
+
+ rosidl_generate_interfaces(${PROJECT_NAME}
+ "msg/RslidarPacket.msg"
+ DEPENDENCIES builtin_interfaces std_msgs
+ ADD_LINTER_TESTS
+ )
+
+ ament_export_dependencies(rosidl_default_runtime)
+ ament_package()
+endif()
diff --git a/README.md b/README.md
index 2164d00..9379e80 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,3 @@
## ROS2 LiDAR Packet Message
-
-
-**This project is the custom LiDAR packet message in ROS2 environment. User need to put this project and rslidar_sdk in same workspace to compile.**
\ No newline at end of file
+**This project is the custom LiDAR packet message in ROS2 environment. User need to put this project and rslidar_sdk in same workspace to compile.**
diff --git a/package.xml b/package.xml
index b8a8309..d3e1548 100644
--- a/package.xml
+++ b/package.xml
@@ -2,28 +2,26 @@
rslidar_msg
- 0.0.0
- ros msgs for the rslidar_sdk project
+ 1.5.16
+ Messages for the rslidar_sdk project
robosense
BSD
- ament_cmake
+ catkin
+ ament_cmake
- std_msgs
- rclcpp
-
- ament_lint_auto
- ament_lint_common
+ rosidl_default_generators
- builtin_interfaces
+ message_generation
- builtin_interfaces
- rosidl_default_generators
-
- rosidl_default_runtime
+ builtin_interfaces
+ std_msgs
-rosidl_interface_packages
+ message_runtime
+ rosidl_default_runtime
+ ament_lint_common
+ rosidl_interface_packages
- ament_cmake
+ ament_cmake
diff --git a/ros1/CMakeLists.txt b/ros1/CMakeLists.txt
deleted file mode 100644
index 320fb43..0000000
--- a/ros1/CMakeLists.txt
+++ /dev/null
@@ -1,41 +0,0 @@
-cmake_minimum_required(VERSION 3.5)
-project(rslidar_msg)
-
-# Default to C99
-if(NOT CMAKE_C_STANDARD)
- set(CMAKE_C_STANDARD 99)
-endif()
-
-# Default to C++14
-if(NOT CMAKE_CXX_STANDARD)
- set(CMAKE_CXX_STANDARD 14)
-endif()
-
-if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
- add_compile_options(-Wall -Wextra -Wpedantic)
-endif()
-
-# find dependencies
-find_package(std_msgs REQUIRED)
-
-find_package(catkin REQUIRED COMPONENTS
- roscpp
- std_msgs
- sensor_msgs
- message_generation
- )
-
-add_message_files(FILES
- RslidarPacket.msg
- )
-
-generate_messages(DEPENDENCIES
- std_msgs
- sensor_msgs
- )
-
-catkin_package(CATKIN_DEPENDS
- std_msgs
- sensor_msgs
- message_runtime
- )
diff --git a/ros1/package.xml b/ros1/package.xml
deleted file mode 100644
index 831a653..0000000
--- a/ros1/package.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
- rslidar_msg
- 0.0.0
- ros msgs for the rslidar_sdk project
- robosense
- BSD
-
- catkin
-
- roscpp
- std_msgs
- sensor_msgs
- message_generation
-
- roscpp
- std_msgs
- sensor_msgs
- message_runtime
-
-
diff --git a/ros2/CMakeLists.txt b/ros2/CMakeLists.txt
deleted file mode 100644
index a825404..0000000
--- a/ros2/CMakeLists.txt
+++ /dev/null
@@ -1,41 +0,0 @@
-cmake_minimum_required(VERSION 3.5)
-project(rslidar_msg)
-
-# Default to C99
-if(NOT CMAKE_C_STANDARD)
- set(CMAKE_C_STANDARD 99)
-endif()
-
-# Default to C++14
-if(NOT CMAKE_CXX_STANDARD)
- set(CMAKE_CXX_STANDARD 14)
-endif()
-
-if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
- add_compile_options(-Wall -Wextra -Wpedantic)
-endif()
-
-# find dependencies
-find_package(ament_cmake REQUIRED)
-find_package(std_msgs REQUIRED)
-find_package(rclcpp REQUIRED)
-find_package(builtin_interfaces REQUIRED)
-find_package(rosidl_default_generators REQUIRED)
-
-rosidl_generate_interfaces(${PROJECT_NAME}
- "msg/RslidarPacket.msg"
- DEPENDENCIES builtin_interfaces std_msgs
- )
-
-if(BUILD_TESTING)
- find_package(ament_lint_auto REQUIRED)
- # the following line skips the linter which checks for copyrights
- # uncomment the line when a copyright and license is not present in all source files
- #set(ament_cmake_copyright_FOUND TRUE)
- # the following line skips cpplint (only works in a git repo)
- # uncomment the line when this package is not in a git repo
- #set(ament_cmake_cpplint_FOUND TRUE)
- ament_lint_auto_find_test_dependencies()
-endif()
-
-ament_package()
diff --git a/ros2/package.xml b/ros2/package.xml
deleted file mode 100644
index b8a8309..0000000
--- a/ros2/package.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
-
- rslidar_msg
- 0.0.0
- ros msgs for the rslidar_sdk project
- robosense
- BSD
-
- ament_cmake
-
- std_msgs
- rclcpp
-
- ament_lint_auto
- ament_lint_common
-
- builtin_interfaces
-
- builtin_interfaces
- rosidl_default_generators
-
- rosidl_default_runtime
-
-rosidl_interface_packages
-
- ament_cmake
-
-