mirror of
https://github.com/orbbec/OrbbecSDK_ROS2.git
synced 2026-10-04 03:57:46 +08:00
Using hardware timestamp when not OpenNI device
This commit is contained in:
@@ -137,9 +137,8 @@ class OBCameraNode {
|
||||
void clean();
|
||||
|
||||
void startStreams();
|
||||
|
||||
void startIMU();
|
||||
|
||||
void startIMU();
|
||||
|
||||
private:
|
||||
struct IMUData {
|
||||
@@ -445,7 +444,7 @@ class OBCameraNode {
|
||||
uint8_t* rgb_buffer_ = nullptr;
|
||||
bool is_color_frame_decoded_ = false;
|
||||
std::mutex device_lock_;
|
||||
//For color
|
||||
// For color
|
||||
std::queue<std::shared_ptr<ob::FrameSet>> colorFrameQueue_;
|
||||
std::shared_ptr<std::thread> colorFrameThread_ = nullptr;
|
||||
std::mutex colorFrameMtx_;
|
||||
@@ -454,5 +453,6 @@ class OBCameraNode {
|
||||
bool ordered_pc_ = false;
|
||||
bool use_hardware_time_ = false;
|
||||
bool enable_depth_scale_ = true;
|
||||
bool is_openni_device_ = false;
|
||||
};
|
||||
} // namespace orbbec_camera
|
||||
|
||||
@@ -606,6 +606,14 @@ void OBCameraNode::getParameters() {
|
||||
setAndGetNodeParameter<int>(max_save_images_count_, "max_save_images_count", 10);
|
||||
setAndGetNodeParameter<bool>(use_hardware_time_, "use_hardware_time", false);
|
||||
setAndGetNodeParameter<bool>(enable_depth_scale_, "enable_depth_scale", true);
|
||||
auto info = device_->getDeviceInfo();
|
||||
is_openni_device_ = isOpenNIDevice(info->pid());
|
||||
if (is_openni_device_) {
|
||||
RCLCPP_INFO_STREAM(logger_, "OpenNI device detected.");
|
||||
use_hardware_time_ = false;
|
||||
}else {
|
||||
use_hardware_time_ = true;
|
||||
}
|
||||
}
|
||||
|
||||
void OBCameraNode::setupTopics() {
|
||||
|
||||
Reference in New Issue
Block a user