From 0a22657f77d783650bffa446b4a1a6395b04bf76 Mon Sep 17 00:00:00 2001 From: jj <957713278@qq.com> Date: Tue, 26 Nov 2024 18:31:00 +0800 Subject: [PATCH] update about laser revise --- orbbec_camera/src/ob_camera_node.cpp | 12 +++++------- orbbec_camera/src/ros_service.cpp | 10 ++++------ 2 files changed, 9 insertions(+), 13 deletions(-) diff --git a/orbbec_camera/src/ob_camera_node.cpp b/orbbec_camera/src/ob_camera_node.cpp index 407ffdf6..170dcf1b 100644 --- a/orbbec_camera/src/ob_camera_node.cpp +++ b/orbbec_camera/src/ob_camera_node.cpp @@ -218,14 +218,12 @@ void OBCameraNode::setupDevices() { TRY_TO_SET_PROPERTY(setBoolProperty, OB_PROP_LDP_BOOL, enable_ldp_); } if (device_->isPropertySupported(OB_PROP_LASER_CONTROL_INT, OB_PERMISSION_READ_WRITE)) { + RCLCPP_INFO_STREAM(logger_, "Setting G300 laser control to " << enable_laser_); +TRY_TO_SET_PROPERTY(setIntProperty, OB_PROP_LASER_CONTROL_INT, enable_laser_); + } + if (device_->isPropertySupported(OB_PROP_LASER_BOOL, OB_PERMISSION_READ_WRITE)) { RCLCPP_INFO_STREAM(logger_, "Setting laser control to " << enable_laser_); - auto device_info = device_->getDeviceInfo(); - auto pid = device_info->getPid(); - if (isGemini335PID(pid)) { - TRY_TO_SET_PROPERTY(setIntProperty, OB_PROP_LASER_CONTROL_INT, enable_laser_); - } else { - TRY_TO_SET_PROPERTY(setIntProperty, OB_PROP_LASER_BOOL, enable_laser_); - } +TRY_TO_SET_PROPERTY(setIntProperty, OB_PROP_LASER_BOOL, enable_laser_); } if (device_->isPropertySupported(OB_PROP_LASER_ON_OFF_MODE_INT, OB_PERMISSION_READ_WRITE)) { RCLCPP_INFO_STREAM(logger_, "Setting laser on off mode to " << laser_on_off_mode_); diff --git a/orbbec_camera/src/ros_service.cpp b/orbbec_camera/src/ros_service.cpp index a7468d77..e468b18a 100644 --- a/orbbec_camera/src/ros_service.cpp +++ b/orbbec_camera/src/ros_service.cpp @@ -184,9 +184,9 @@ void OBCameraNode::setupCameraCtrlServices() { std::shared_ptr response) { setSYNCInterleaveLaserCallback(request, response); }); - set_sync_host_time_srv_ = node_->create_service( + set_sync_host_time_srv_ = node_->create_service( "set_sync_hosttime", [this](const std::shared_ptr request, - std::shared_ptr response) { + std::shared_ptr response) { setSYNCHostimeCallback(request, response); }); } @@ -479,13 +479,11 @@ void OBCameraNode::setLaserEnableCallback( std::shared_ptr& response) { (void)request_header; (void)response; - auto device_info = device_->getDeviceInfo(); - auto pid = device_info->getPid(); int laser_enable = request->data ? 1 : 0; try { - if (isGemini335PID(pid)) { + if (device_->isPropertySupported(OB_PROP_LASER_CONTROL_INT, OB_PERMISSION_READ_WRITE)) { device_->setIntProperty(OB_PROP_LASER_CONTROL_INT, laser_enable); - } else { + } else if (device_->isPropertySupported(OB_PROP_LASER_BOOL, OB_PERMISSION_READ_WRITE)) { device_->setIntProperty(OB_PROP_LASER_BOOL, laser_enable); } response->success = true;