From 6735aee02865bda2d4fff592c5781b0accf46613 Mon Sep 17 00:00:00 2001 From: obyalian Date: Mon, 8 Sep 2025 15:48:50 +0800 Subject: [PATCH] Refactor device selection logic in OBCameraNodeDriver --- orbbec_camera/src/ob_camera_node_driver.cpp | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/orbbec_camera/src/ob_camera_node_driver.cpp b/orbbec_camera/src/ob_camera_node_driver.cpp index 1dc728b3..08706338 100644 --- a/orbbec_camera/src/ob_camera_node_driver.cpp +++ b/orbbec_camera/src/ob_camera_node_driver.cpp @@ -275,11 +275,6 @@ void OBCameraNodeDriver::rebootDeviceCallback( std::shared_ptr OBCameraNodeDriver::selectDevice( const std::shared_ptr &list) { - if (device_num_ == 1) { - RCLCPP_INFO_STREAM(logger_, "Connecting to the default device"); - return list->getDevice(0); - } - std::shared_ptr device = nullptr; if (!serial_number_.empty()) { RCLCPP_INFO_STREAM(logger_, "Connecting to device with serial number: " << serial_number_); @@ -287,6 +282,9 @@ std::shared_ptr OBCameraNodeDriver::selectDevice( } else if (!usb_port_.empty()) { RCLCPP_INFO_STREAM(logger_, "Connecting to device with usb port: " << usb_port_); device = selectDeviceByUSBPort(list, usb_port_); + } else if (device_num_ == 1) { + RCLCPP_INFO_STREAM(logger_, "Connecting to the default device"); + return list->getDevice(0); } if (device == nullptr) { RCLCPP_WARN_THROTTLE(logger_, *get_clock(), 1000, "Device with serial number %s not found",