MeVisLab Toolbox Reference
mlPCLCopy.h
Go to the documentation of this file.
1 // Copyright (c) Fraunhofer MEVIS, Germany. All rights reserved.
2 // **InsertLicense** code author="Wolf Spindler"
3 //----------------------------------------------------------------------------------
6 
14 //----------------------------------------------------------------------------------
15 #pragma once
16 
17 #include "MLPCLFiltersSystem.h"
18 #include <mlPCLModule.h>
19 
20 ML_START_NAMESPACE
21 
22 //----------------------------------------------------------------------------------
24 //----------------------------------------------------------------------------------
26 {
27 public:
30 
31 protected:
33  void activateAttachments() override;
34 
36  void handleNotification (Field* field) override;
37 
38 private:
39 
43  BoolField *_useInput2IndicesFld;
44 
47  BoolField *_copyDataFld;
48 
51  BoolField *_copyData_nFld;
52 
55  BoolField *_copyIntensityReplacementFld;
56 
59  BoolField *_copyCurvatureFld;
60 
63  BoolField *_copyRGBAFld;
64 
67  BoolField *_copyNormalFld;
68 
70  void _filter();
71 
73  template <typename POINT_TYPE1,
74  typename POINT_TYPE2>
75  void _copyMembersT(const POINT_TYPE1 &inputPoint,
76  POINT_TYPE2 &outputPoint);
77 
79  template <typename POINT_CLOUD_TYPE1,
80  typename POINT_CLOUD_TYPE2>
81  void _copyT(const POINT_CLOUD_TYPE1 &inputPointCloud1,
82  const POINT_CLOUD_TYPE2 &inputPointCloud2);
83 
86 
89 };
90 
91 ML_END_NAMESPACE
92 
Project global and OS specific declarations.
#define MLPCL_Filters_EXPORT
If included by external modules, exported symbols are declared as import symbols.
Field to encapsulate a boolean value.
Definition: mlFields.h:62
Base class for all fields used in the ML.
Definition: mlField.h:73
ML module class copying points or point components from points in input 1 to points in input 2.
Definition: mlPCLCopy.h:26
PCLCopy()
Initializes the PCLCopy filter.
void activateAttachments() override
Updates internal state after changes of fields without field notifications.
void handleNotification(Field *field) override
Handles field changes of the field field.
ML Module base class for algorithms from the Point Cloud Library (PCL).
Definition: mlPCLModule.h:26
#define ML_MODULE_CLASS_HEADER(className)
Like ML_CLASS_HEADER for the usage of derived classes from Module.
ML Module base class for algorithms from the Point Cloud Library (PCL).
#define ML_PCL_TEST_INTERFACE(BASE_OBJECT_NAME)
Implements a dedicated interface for PCL related modules which is required in automatic tests.