/usr/include/pcl-1.7/pcl/PCLPointCloud2.h is in libpcl-dev 1.7.2-14build1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 | #ifndef PCL_SENSOR_MSGS_MESSAGE_POINTCLOUD2_H
#define PCL_SENSOR_MSGS_MESSAGE_POINTCLOUD2_H
#ifdef USE_ROS
#error USE_ROS setup requires PCL to compile against ROS message headers, which is now deprecated
#endif
#include <string>
#include <vector>
#include <ostream>
#include <boost/detail/endian.hpp>
// Include the correct Header path here
#include <pcl/PCLHeader.h>
#include <pcl/PCLPointField.h>
namespace pcl
{
struct PCLPointCloud2
{
PCLPointCloud2 () : header (), height (0), width (0), fields (),
is_bigendian (false), point_step (0), row_step (0),
data (), is_dense (false)
{
#if defined(BOOST_BIG_ENDIAN)
is_bigendian = true;
#elif defined(BOOST_LITTLE_ENDIAN)
is_bigendian = false;
#else
#error "unable to determine system endianness"
#endif
}
::pcl::PCLHeader header;
pcl::uint32_t height;
pcl::uint32_t width;
std::vector< ::pcl::PCLPointField> fields;
pcl::uint8_t is_bigendian;
pcl::uint32_t point_step;
pcl::uint32_t row_step;
std::vector<pcl::uint8_t> data;
pcl::uint8_t is_dense;
public:
typedef boost::shared_ptr< ::pcl::PCLPointCloud2> Ptr;
typedef boost::shared_ptr< ::pcl::PCLPointCloud2 const> ConstPtr;
}; // struct PCLPointCloud2
typedef boost::shared_ptr< ::pcl::PCLPointCloud2> PCLPointCloud2Ptr;
typedef boost::shared_ptr< ::pcl::PCLPointCloud2 const> PCLPointCloud2ConstPtr;
inline std::ostream& operator<<(std::ostream& s, const ::pcl::PCLPointCloud2 &v)
{
s << "header: " << std::endl;
s << v.header;
s << "height: ";
s << " " << v.height << std::endl;
s << "width: ";
s << " " << v.width << std::endl;
s << "fields[]" << std::endl;
for (size_t i = 0; i < v.fields.size (); ++i)
{
s << " fields[" << i << "]: ";
s << std::endl;
s << " " << v.fields[i] << std::endl;
}
s << "is_bigendian: ";
s << " " << v.is_bigendian << std::endl;
s << "point_step: ";
s << " " << v.point_step << std::endl;
s << "row_step: ";
s << " " << v.row_step << std::endl;
s << "data[]" << std::endl;
for (size_t i = 0; i < v.data.size (); ++i)
{
s << " data[" << i << "]: ";
s << " " << v.data[i] << std::endl;
}
s << "is_dense: ";
s << " " << v.is_dense << std::endl;
return (s);
}
} // namespace pcl
#endif // PCL_SENSOR_MSGS_MESSAGE_POINTCLOUD2_H
|