mirror of
https://github.com/orbbec/OrbbecSDK_ROS2.git
synced 2026-10-04 03:57:46 +08:00
replace switch of callback type via ROS distro check with template type
This commit is contained in:
committed by
obyalian
parent
8254e28a94
commit
5448f656cb
@@ -14,12 +14,6 @@ option(USE_NV_HW_DECODER "Use Nvidia hardware decoder" OFF)
|
||||
if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
||||
add_compile_options(-Wall -Wextra -Werror -Wno-pedantic -Wno-array-bounds)
|
||||
endif()
|
||||
# Check if ROS Jazzy or iron is installed
|
||||
if("$ENV{ROS_DISTRO}" STREQUAL "jazzy")
|
||||
add_compile_definitions(ROS_JAZZY)
|
||||
elseif("$ENV{ROS_DISTRO}" STREQUAL "iron")
|
||||
add_compile_definitions(ROS_IRON)
|
||||
endif()
|
||||
|
||||
# find dependencies
|
||||
set(dependencies
|
||||
|
||||
@@ -22,13 +22,11 @@ class ParametersBackend {
|
||||
public:
|
||||
explicit ParametersBackend(rclcpp::Node* node);
|
||||
~ParametersBackend();
|
||||
#if defined(ROS_JAZZY) || defined(ROS_IRON)
|
||||
void addOnSetParametersCallback(
|
||||
rclcpp::node_interfaces::NodeParametersInterface::OnSetParametersCallbackType callback);
|
||||
#else
|
||||
void addOnSetParametersCallback(
|
||||
rclcpp::node_interfaces::NodeParametersInterface::OnParametersSetCallbackType callback);
|
||||
#endif
|
||||
|
||||
template <typename T>
|
||||
void addOnSetParametersCallback(T callback) {
|
||||
ros_callback_ = node_->add_on_set_parameters_callback(callback);
|
||||
}
|
||||
|
||||
private:
|
||||
rclcpp::Node* node_;
|
||||
|
||||
@@ -26,16 +26,5 @@ ParametersBackend::~ParametersBackend() {
|
||||
ros_callback_.reset();
|
||||
}
|
||||
}
|
||||
#if defined(ROS_JAZZY) || defined(ROS_IRON)
|
||||
void ParametersBackend::addOnSetParametersCallback(
|
||||
rclcpp::node_interfaces::NodeParametersInterface::OnSetParametersCallbackType callback) {
|
||||
ros_callback_ = node_->add_on_set_parameters_callback(callback);
|
||||
}
|
||||
#else
|
||||
void ParametersBackend::addOnSetParametersCallback(
|
||||
rclcpp::node_interfaces::NodeParametersInterface::OnParametersSetCallbackType callback) {
|
||||
ros_callback_ = node_->add_on_set_parameters_callback(callback);
|
||||
}
|
||||
#endif
|
||||
|
||||
} // namespace orbbec_camera
|
||||
|
||||
Reference in New Issue
Block a user