include
jsk_pcl_ros_utils
pointcloud_to_pcd.h
Go to the documentation of this file.
1
// -*- mode: c++ -*-
2
/*********************************************************************
3
* Software License Agreement (BSD License)
4
*
5
* Copyright (c) 2016, JSK Lab
6
* All rights reserved.
7
*
8
* Redistribution and use in source and binary forms, with or without
9
* modification, are permitted provided that the following conditions
10
* are met:
11
*
12
* * Redistributions of source code must retain the above copyright
13
* notice, this list of conditions and the following disclaimer.
14
* * Redistributions in binary form must reproduce the above
15
* copyright notice, this list of conditions and the following
16
* disclaimer in the documentation and/or other materials provided
17
* with the distribution.
18
* * Neither the name of the JSK Lab nor the names of its
19
* contributors may be used to endorse or promote products derived
20
* from this software without specific prior written permission.
21
*
22
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
23
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
24
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
25
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
26
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
27
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
28
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
29
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
30
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
32
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
33
* POSSIBILITY OF SUCH DAMAGE.
34
*********************************************************************/
35
36
#ifndef JSK_PCL_POINTCLOUD_TO_PCD_H_
37
#define JSK_PCL_POINTCLOUD_TO_PCD_H_
38
39
#include <
pcl_ros/pcl_nodelet.h
>
40
#include <pcl/point_types.h>
41
#include <
jsk_recognition_utils/tf_listener_singleton.h
>
42
43
#include <sensor_msgs/PointCloud2.h>
44
#include <std_srvs/Empty.h>
45
#include <dynamic_reconfigure/server.h>
46
#include <jsk_pcl_ros_utils/PointCloudToPCDConfig.h>
47
48
namespace
jsk_pcl_ros_utils
49
{
50
class
PointCloudToPCD
:
public
pcl_ros::PCLNodelet
51
{
52
public
:
53
virtual
~PointCloudToPCD
();
54
typedef
PointCloudToPCDConfig
Config
;
55
protected
:
56
virtual
void
onInit
();
57
virtual
void
timerCallback
(
const
ros::TimerEvent
& event);
58
virtual
void
configCallback
(
Config
&config, uint32_t level);
59
void
savePCD
();
60
bool
savePCDCallback
(std_srvs::Empty::Request& req, std_srvs::Empty::Response& res);
61
boost::mutex
mutex_
;
62
boost::shared_ptr <dynamic_reconfigure::Server<Config>
>
srv_
;
63
ros::Timer
timer_
;
64
std::string
filename_
;
65
std::string
ext_
;
66
double
duration_
;
67
std::string
prefix_
;
68
bool
binary_
;
69
bool
compressed_
;
70
std::string
fixed_frame_
;
71
tf::TransformListener
*
tf_listener_
;
72
ros::ServiceServer
srv_save_pcd_server_
;
73
private
:
74
};
75
}
76
77
#endif
jsk_pcl_ros_utils::PointCloudToPCD::ext_
std::string ext_
Definition:
pointcloud_to_pcd.h:129
jsk_pcl_ros_utils
Definition:
add_point_indices.h:51
jsk_pcl_ros_utils::PointCloudToPCD::savePCD
void savePCD()
Definition:
pointcloud_to_pcd_nodelet.cpp:93
PointCloudToPCD
jsk_pcl_ros_utils::PointCloudToPCD::binary_
bool binary_
Definition:
pointcloud_to_pcd.h:132
pcl_ros::PCLNodelet
jsk_pcl_ros_utils::PointCloudToPCD::~PointCloudToPCD
virtual ~PointCloudToPCD()
Definition:
pointcloud_to_pcd_nodelet.cpp:79
boost::shared_ptr
jsk_pcl_ros_utils::PointCloudToPCD::configCallback
virtual void configCallback(Config &config, uint32_t level)
Definition:
pointcloud_to_pcd_nodelet.cpp:170
jsk_pcl_ros_utils::PointCloudToPCD::prefix_
std::string prefix_
Definition:
pointcloud_to_pcd.h:131
jsk_pcl_ros_utils::PointCloudToPCD::savePCDCallback
bool savePCDCallback(std_srvs::Empty::Request &req, std_srvs::Empty::Response &res)
Definition:
pointcloud_to_pcd_nodelet.cpp:88
ros::ServiceServer
pcl_nodelet.h
jsk_pcl_ros_utils::PointCloudToPCD::duration_
double duration_
Definition:
pointcloud_to_pcd.h:130
jsk_pcl_ros_utils::PointCloudToPCD::srv_save_pcd_server_
ros::ServiceServer srv_save_pcd_server_
Definition:
pointcloud_to_pcd.h:136
jsk_pcl_ros_utils::PointCloudToPCD::mutex_
boost::mutex mutex_
Definition:
pointcloud_to_pcd.h:125
jsk_pcl_ros_utils::PointCloudToPCD::filename_
std::string filename_
Definition:
pointcloud_to_pcd.h:128
ros::TimerEvent
jsk_pcl_ros_utils::PointCloudToPCD::onInit
virtual void onInit()
Definition:
pointcloud_to_pcd_nodelet.cpp:145
jsk_pcl_ros_utils::PointCloudToPCD::srv_
boost::shared_ptr< dynamic_reconfigure::Server< Config > > srv_
Definition:
pointcloud_to_pcd.h:126
jsk_pcl_ros_utils::PointCloudToPCD::timerCallback
virtual void timerCallback(const ros::TimerEvent &event)
Definition:
pointcloud_to_pcd_nodelet.cpp:84
tf::TransformListener
jsk_pcl_ros_utils::PointCloudToPCD::Config
PointCloudToPCDConfig Config
Definition:
pointcloud_to_pcd.h:118
jsk_pcl_ros_utils::PointCloudToPCD::fixed_frame_
std::string fixed_frame_
Definition:
pointcloud_to_pcd.h:134
jsk_pcl_ros_utils::PointCloudToPCD::compressed_
bool compressed_
Definition:
pointcloud_to_pcd.h:133
tf_listener_singleton.h
ros::Timer
jsk_pcl_ros_utils::PointCloudToPCD::timer_
ros::Timer timer_
Definition:
pointcloud_to_pcd.h:127
jsk_pcl_ros_utils::PointCloudToPCD::tf_listener_
tf::TransformListener * tf_listener_
Definition:
pointcloud_to_pcd.h:135
jsk_pcl_ros_utils
Author(s): Yohei Kakiuchi
autogenerated on Fri May 16 2025 03:11:43