Point Cloud Library (PCL)  1.9.1-dev
PCLPointField.h
1 #pragma once
2 
3 #ifdef USE_ROS
4  #error USE_ROS setup requires PCL to compile against ROS message headers, which is now deprecated
5 #endif
6 
7 #include <string>
8 #include <vector>
9 #include <ostream>
10 #include <boost/shared_ptr.hpp>
11 #include <pcl/pcl_macros.h>
12 
13 namespace pcl
14 {
16  {
17  PCLPointField () : offset (0), datatype (0), count (0)
18  {}
19 
20  std::string name;
21 
22  pcl::uint32_t offset;
23  pcl::uint8_t datatype;
24  pcl::uint32_t count;
25 
26  enum PointFieldTypes { INT8 = 1,
27  UINT8 = 2,
28  INT16 = 3,
29  UINT16 = 4,
30  INT32 = 5,
31  UINT32 = 6,
32  FLOAT32 = 7,
33  FLOAT64 = 8 };
34 
35  public:
36  using Ptr = boost::shared_ptr< ::pcl::PCLPointField>;
37  using ConstPtr = boost::shared_ptr<const ::pcl::PCLPointField>;
38  }; // struct PCLPointField
39 
40  using PCLPointFieldPtr = boost::shared_ptr< ::pcl::PCLPointField>;
41  using PCLPointFieldConstPtr = boost::shared_ptr<const ::pcl::PCLPointField>;
42 
43  inline std::ostream& operator<<(std::ostream& s, const ::pcl::PCLPointField & v)
44  {
45  s << "name: ";
46  s << " " << v.name << std::endl;
47  s << "offset: ";
48  s << " " << v.offset << std::endl;
49  s << "datatype: ";
50  s << " " << v.datatype << std::endl;
51  s << "count: ";
52  s << " " << v.count << std::endl;
53  return (s);
54  }
55 } // namespace pcl
boost::shared_ptr< ::pcl::PCLPointField > Ptr
Definition: PCLPointField.h:36
boost::shared_ptr< const ::pcl::PCLPointField > ConstPtr
Definition: PCLPointField.h:37
This file defines compatibility wrappers for low level I/O functions.
Definition: convolution.h:45
pcl::uint32_t offset
Definition: PCLPointField.h:22
std::ostream & operator<<(std::ostream &os, const BivariatePolynomialT< real > &p)
pcl::uint32_t count
Definition: PCLPointField.h:24
pcl::uint8_t datatype
Definition: PCLPointField.h:23
std::string name
Definition: PCLPointField.h:20
boost::shared_ptr< const ::pcl::PCLPointField > PCLPointFieldConstPtr
Definition: PCLPointField.h:41
boost::shared_ptr< ::pcl::PCLPointField > PCLPointFieldPtr
Definition: PCLPointField.h:40
Defines all the PCL and non-PCL macros used.