Add cloud accumulated

This commit is contained in:
jj
2025-07-08 17:18:54 +08:00
parent f622ea57d5
commit e03d1b3083
5 changed files with 123 additions and 0 deletions
@@ -0,0 +1,34 @@
/*******************************************************************************
* Copyright (c) 2023 Orbbec 3D Technology, Inc
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*******************************************************************************/
#pragma once
#include <rclcpp/rclcpp.hpp>
#include "sensor_msgs/msg/point_cloud2.hpp"
#include "utils.h"
namespace orbbec_camera {
namespace orbbec_lidar {
class CloudAccumulated {
public:
explicit CloudAccumulated(rclcpp::Node* const node, rmw_qos_profile_t cloud_qos,
int cloud_accumulation_count);
~CloudAccumulated();
private:
rclcpp::Node* node_;
rclcpp::Logger logger_;
};
} // namespace orbbec_lidar
} // namespace orbbec_camera
@@ -251,6 +251,9 @@ class OBLidarNode {
int filter_level_ = -1;
float vertical_fov_ = -1;
double angle_increment_ = 0.0;
bool enable_cloud_accumulated_ = false;
int cloud_accumulation_count_ = -1;
std::unique_ptr<CloudAccumulated> cloud_accumulated_ = nullptr;
};
} // namespace orbbec_lidar