MeVisLab Toolbox Reference
mlPCLIterativeClosestPoint.h
Go to the documentation of this file.
1 // Copyright (c) Fraunhofer MEVIS, Germany. All rights reserved.
2 // **InsertLicense** code author="Wolf Spindler"
3 //----------------------------------------------------------------------------------
5 
12 //----------------------------------------------------------------------------------
13 #pragma once
14 
16 #include <mlPCLRegistration.h>
18 #include <pcl/point_types.h>
19 #include <pcl/registration/icp.h>
21 
22 ML_START_NAMESPACE
23 
24 //----------------------------------------------------------------------------------
26 //----------------------------------------------------------------------------------
28 {
29 public:
33 
35  BoolField &getUseReciprocalCorrespondencesFld() const { return *_useReciprocalCorrespondencesFld; }
36 
37 protected:
40 
41 private:
43  template <class MODULE_TYPE>
44  friend std::string callSameTyped_filterT(MODULE_TYPE &mod,
45  const std::string &successfullCalledFilterMessage,
46  const std::string &noValidPointCloudMessage,
47  const std::string &noInput1PointCloudMessage,
48  const std::string &noInput2PointCloudMessage,
49  const std::string &differentPointCloudMessage);
50 
52  BoolField *_useReciprocalCorrespondencesFld;
53 
55  void _filter() override;
56 
58  template <typename POINT_CLOUD_TYPE1,
59  typename POINT_CLOUD_TYPE2>
60  void _filterT(const POINT_CLOUD_TYPE1 &inputPointCloud1,
61  const POINT_CLOUD_TYPE2 &inputPointCloud2);
62 
65 
68 };
69 
70 ML_END_NAMESPACE
71 
Project global and OS specific declarations.
#define MLPCL_Registration_EXPORT
If included by external modules, exported symbols are declared as import symbols.
Disables warnings from PCL headers which otherwise cannot be avoided.
Restores disabled warnings from PCL headers which otherwise cannot be avoided.
Field to encapsulate a boolean value.
Definition: mlFields.h:62
ML Module class wrapping the pcl::IterativeClosestPoint class from the PCL.
BoolField & getUseReciprocalCorrespondencesFld() const
See _useReciprocalCorrespondencesFld for details.
PCLIterativeClosestPoint()
Initializes an ML module wrapping a pcl::IterativeClosestPoint filter, adds super class fields and ca...
void _addPCLRelatedFields()
Adds fields corresponding to the IterativeClosestPoint class covered with this class,...
Abstract ML Module class wrapping the pcl::Registration class from the PCL; PCL registration algorith...
#define ML_MODULE_CLASS_HEADER(className)
Like ML_CLASS_HEADER for the usage of derived classes from Module.
#define ML_PCL_TEST_INTERFACE(BASE_OBJECT_NAME)
Implements a dedicated interface for PCL related modules which is required in automatic tests.
Abstract ML Module class wrapping the pcl::Registration class from the PCL; PCL registration algorith...
std::string callSameTyped_filterT(MODULE_TYPE &mod, const std::string &successfullCalledFilterMessage="", const std::string &noValidPointCloudMessage="No input point clouds", const std::string &noInput1PointCloudMessage="No input 1 point cloud", const std::string &noInput2PointCloudMessage="No input 2 point cloud", const std::string &differentPointCloudMessage="Input point clouds do not have same point type")
Helper function to call.