diff --git a/CMakeLists.txt b/CMakeLists.txt index 06ee0373..50a01fe0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -399,6 +399,10 @@ add_executable(rtabmap_pointcloud_to_depthimage src/PointCloudToDepthImageNode.c target_link_libraries(rtabmap_pointcloud_to_depthimage ${Libraries}) set_target_properties(rtabmap_pointcloud_to_depthimage PROPERTIES OUTPUT_NAME "pointcloud_to_depthimage") +add_executable(rtabmap_point_cloud_aggregator src/PointCloudAggregatorNode.cpp) +target_link_libraries(rtabmap_point_cloud_aggregator ${Libraries}) +set_target_properties(rtabmap_point_cloud_aggregator PROPERTIES OUTPUT_NAME "rtabmap_point_cloud_aggregator") + add_executable(rtabmap_point_cloud_assembler src/PointCloudAssemblerNode.cpp) target_link_libraries(rtabmap_point_cloud_assembler ${Libraries}) set_target_properties(rtabmap_point_cloud_assembler PROPERTIES OUTPUT_NAME "point_cloud_assembler") diff --git a/src/PointCloudAggregatorNode.cpp b/src/PointCloudAggregatorNode.cpp new file mode 100644 index 00000000..2ec77a37 --- /dev/null +++ b/src/PointCloudAggregatorNode.cpp @@ -0,0 +1,42 @@ +/* +Copyright (c) 2010-2016, Mathieu Labbe - IntRoLab - Universite de Sherbrooke +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Universite de Sherbrooke nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#include "ros/ros.h" +#include "nodelet/loader.h" + +int main(int argc, char **argv) +{ + ros::init(argc, argv, "point_cloud_aggregator"); + + nodelet::Loader nodelet; + nodelet::V_string nargv; + nodelet::M_string remap(ros::names::getRemappings()); + std::string nodelet_name = ros::this_node::getName(); + nodelet.load(nodelet_name, "rtabmap_ros/point_cloud_aggregator", remap, nargv); + ros::spin(); + return 0; +}