MeVisLab Toolbox Reference
mlPCLPointMemberArithmetic.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
15#include "MLPCLSupportSystem.h"
16#include <mlPCLBaseObject.h>
17#include <mlPCLModule.h>
18
20
21//----------------------------------------------------------------------------------
23//----------------------------------------------------------------------------------
25{
26public:
30
31protected:
33 void activateAttachments() override;
34
36 void handleNotification (Field* field) override;
37
38private:
40 void _filter();
41
43 template <typename POINT_CLOUD_TYPE> void _filterT(const POINT_CLOUD_TYPE &inputPointCloud);
44
46 std::vector<BoolField *> _activateMemberFld;
47
49 DoubleField *_scalarConstantFld;
50
52 std::vector<DoubleField *> _constant1Fld;
53
55 NotifyField * _set0ForAll1Fld;
56
58 std::vector<DoubleField *> _constant2Fld;
59
61 NotifyField * _set0ForAll2Fld;
62
64 EnumField *_operation1Fld;
65
67 std::vector<DoubleField *> _result1Fld;
68
70 std::vector<DoubleField *> _result2Fld;
71
73 BoolField *_result1IsValidFld;
74
76 BoolField *_result2IsValidFld;
77
80
83};
84
86
Project global and OS specific declarations.
#define MLPCLSUPPORT_EXPORT
If included by external modules, exported symbols are declared as import symbols.
Field to encapsulate a boolean value.
Definition mlFields.h:58
Field to encapsulate a double value.
Definition mlFields.h:538
Field to encapsulate an enumerated value.
Definition mlFields.h:195
Base class for all fields used in the ML.
Definition mlField.h:73
Field without value for notifications.
Definition mlFields.h:659
ML Module base class for algorithms from the Point Cloud Library (PCL).
Definition mlPCLModule.h:26
ML Module providing arithmetic operations on a selectable subset of members/fields of the points of t...
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.
PCLPointMemberArithmetic()
Creates a PCLPointMemberArithmetic module with two input connectors for two PCLBaseObjectPtr's pointi...
#define ML_MODULE_CLASS_HEADER(className)
Like ML_CLASS_HEADER for the usage of derived classes from Module.
Base object containing pointers (as MLPCLObjectPtrsContainer) to objects from the Point Cloud Library...
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.
Target mlrange_cast(Source arg)
Generic version of checked ML casts.