6 #include <pcl/point_cloud.h>
7 #include <pcl/point_types.h>
11 #include <VisionX/interface/core/DataTypes.h>
20 template <Po
intContentType po
intContentType>
65 using PointT = pcl::PointXYZRGBNormal;
75 template <
typename ReturnT =
void>
115 template <
class FunctorT,
class... Args>
122 case PointContentType::ePoints:
125 case PointContentType::eIntensity:
128 case PointContentType::eColoredPoints:
131 case PointContentType::eLabeledPoints:
134 case PointContentType::eOrientedPoints:
137 case PointContentType::eColoredLabeledPoints:
141 case PointContentType::eColoredOrientedPoints:
149 template <
class FunctorT,
class... Args>
156 case PointContentType::ePoints:
159 case PointContentType::eIntensity:
162 case PointContentType::eColoredPoints:
165 case PointContentType::eLabeledPoints:
168 case PointContentType::eOrientedPoints:
171 case PointContentType::eColoredLabeledPoints:
175 case PointContentType::eColoredOrientedPoints:
183 template <
class VisitorT,
class... Args>
184 typename VisitorT::ReturnType
189 case PointContentType::ePoints:
192 case PointContentType::eIntensity:
196 case PointContentType::eColoredPoints:
200 case PointContentType::eLabeledPoints:
204 case PointContentType::eOrientedPoints:
208 case PointContentType::eColoredLabeledPoints:
209 return functor.template
212 case PointContentType::eColoredOrientedPoints:
213 return functor.template
222 template <
class VisitorT,
class... Args>
223 typename VisitorT::ReturnType
228 case PointContentType::ePoints:
231 case PointContentType::eIntensity:
235 case PointContentType::eColoredPoints:
239 case PointContentType::eLabeledPoints:
243 case PointContentType::eOrientedPoints:
247 case PointContentType::eColoredLabeledPoints:
248 return functor.template
251 case PointContentType::eColoredOrientedPoints:
252 return functor.template
263 template <
class PointT,
class FunctionT,
class... Args>
267 pcl::PointCloud<PointT> pointCloud;
268 function(pointCloud, args...);
271 template <
class PointT,
class FunctionT,
class... Args>
275 pcl::PointCloud<PointT> pointCloud;
276 function(pointCloud, args...);
283 template <
class PointT,
class FunctionT,
class... Args>
287 typename pcl::PointCloud<PointT>::Ptr pointCloud(
new pcl::PointCloud<PointT>);
288 function(pointCloud, args...);
291 template <
class PointT,
class FunctionT,
class... Args>
295 typename pcl::PointCloud<PointT>::Ptr pointCloud(
new pcl::PointCloud<PointT>);
296 function(pointCloud, args...);
311 template <
class FunctionT,
class... Args>
319 template <
class FunctionT,
class... Args>
337 template <
class FunctionT,
class... Args>
345 template <
class FunctionT,
class... Args>