Point Cloud Library (PCL)  1.8.0
tracking.h
1 /*
2  * Software License Agreement (BSD License)
3  *
4  * Point Cloud Library (PCL) - www.pointclouds.org
5  * Copyright (c) 2010-2012, Willow Garage, Inc.
6  *
7  * All rights reserved.
8  *
9  * Redistribution and use in source and binary forms, with or without
10  * modification, are permitted provided that the following conditions
11  * are met:
12  *
13  * * Redistributions of source code must retain the above copyright
14  * notice, this list of conditions and the following disclaimer.
15  * * Redistributions in binary form must reproduce the above
16  * copyright notice, this list of conditions and the following
17  * disclaimer in the documentation and/or other materials provided
18  * with the distribution.
19  * * Neither the name of Willow Garage, Inc. nor the names of its
20  * contributors may be used to endorse or promote products derived
21  * from this software without specific prior written permission.
22  *
23  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
24  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
25  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
26  * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
27  * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
28  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
29  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
30  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
31  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
32  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
33  * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
34  * POSSIBILITY OF SUCH DAMAGE.
35  *
36  * $Id: point_cloud.h 4696 2012-02-23 06:12:55Z rusu $
37  *
38  */
39 
40 #ifndef PCL_TRACKING_TRACKING_H_
41 #define PCL_TRACKING_TRACKING_H_
42 
43 #include <pcl/point_types.h>
44 
45 #ifdef BUILD_Maintainer
46 # if defined __GNUC__
47 # pragma GCC system_header
48 # elif defined _MSC_VER
49 # pragma warning(push, 1)
50 # endif
51 #endif
52 
53 namespace pcl
54 {
55  namespace tracking
56  {
57  /* state definition */
58  struct ParticleXYZRPY;
59  struct ParticleXYR;
60 
61  /* \brief return the value of normal distribution */
62  PCL_EXPORTS double
63  sampleNormal (double mean, double sigma);
64  }
65 }
66 
67 #include <pcl/tracking/impl/tracking.hpp>
68 
69 // ==============================
70 // =====POINT_CLOUD_REGISTER=====
71 // ==============================
73  (float, x, x)
74  (float, y, y)
75  (float, z, z)
76  (float, roll, roll)
77  (float, pitch, pitch)
78  (float, yaw, yaw)
79 )
80 POINT_CLOUD_REGISTER_POINT_WRAPPER(pcl::tracking::ParticleXYZRPY, pcl::tracking::_ParticleXYZRPY)
81 
82 
83 POINT_CLOUD_REGISTER_POINT_STRUCT (pcl::tracking::_ParticleXYRPY,
84  (float, x, x)
85  (float, y, y)
86  (float, z, z)
87  (float, roll, roll)
88  (float, pitch, pitch)
89  (float, yaw, yaw)
90 )
91 POINT_CLOUD_REGISTER_POINT_WRAPPER(pcl::tracking::ParticleXYRPY, pcl::tracking::_ParticleXYRPY)
92 
93 
94 POINT_CLOUD_REGISTER_POINT_STRUCT (pcl::tracking::_ParticleXYRP,
95  (float, x, x)
96  (float, y, y)
97  (float, z, z)
98  (float, roll, roll)
99  (float, pitch, pitch)
100  (float, yaw, yaw)
101 )
102 POINT_CLOUD_REGISTER_POINT_WRAPPER(pcl::tracking::ParticleXYRP, pcl::tracking::_ParticleXYRP)
103 
104 
105 POINT_CLOUD_REGISTER_POINT_STRUCT (pcl::tracking::_ParticleXYR,
106  (float, x, x)
107  (float, y, y)
108  (float, z, z)
109  (float, roll, roll)
110  (float, pitch, pitch)
111  (float, yaw, yaw)
112 )
113 POINT_CLOUD_REGISTER_POINT_WRAPPER(pcl::tracking::ParticleXYR, pcl::tracking::_ParticleXYR)
114 
115 POINT_CLOUD_REGISTER_POINT_STRUCT (pcl::tracking::_ParticleXYZR,
116  (float, x, x)
117  (float, y, y)
118  (float, z, z)
119  (float, roll, roll)
120  (float, pitch, pitch)
121  (float, yaw, yaw)
122 )
123 POINT_CLOUD_REGISTER_POINT_WRAPPER(pcl::tracking::ParticleXYZR, pcl::tracking::_ParticleXYZR)
124 
125 #ifdef BUILD_Maintainer
126 # if defined _MSC_VER
127 # pragma warning(pop)
128 # endif
129 #endif
130 
131 #ifdef PCL_NO_PRECOMPILE
132 #include <pcl/tracking/impl/tracking.hpp>
133 #endif
134 
135 #endif
POINT_CLOUD_REGISTER_POINT_STRUCT(pcl::_PointXYZLAB,(float, x, x)(float, y, y)(float, z, z)(float, L, L)(float, a, a)(float, b, b)) namespace pcl
Definition: gicp6d.h:78
PCL_EXPORTS double sampleNormal(double mean, double sigma)