MeVisLab Toolbox Reference
ml::PCLIterativeClosestPoint Class Reference

ML Module class wrapping the pcl::IterativeClosestPoint class from the PCL. More...

#include <mlPCLIterativeClosestPoint.h>

Inheritance diagram for ml::PCLIterativeClosestPoint:
ml::PCLRegistration ml::PCLModule ml::Module ml::FieldContainer ml::Base

Public Member Functions

 PCLIterativeClosestPoint ()
BoolFieldgetUseReciprocalCorrespondencesFld () const
 See _useReciprocalCorrespondencesFld for details.
Public Member Functions inherited from ml::PCLRegistration
 PCLRegistration (int numInputs=2, int numOutputs=1)
IntFieldgetMaximumIterationsFld () const
DoubleFieldgetMaxCorrespondenceDistanceFld () const
DoubleFieldgetTransformationEpsilonFld () const
DoubleFieldgetEuclideanFitnessEpsilonFld () const
Matrix4FieldgetFinalTransformationFld () const
Matrix4FieldgetLastIncrementalTransformationFld () const
DoubleFieldgetFitnessScoreFld () const
BoolFieldgetHasConvergedFld () const
Public Member Functions inherited from ml::PCLModule
 PCLModule (int numImageInputs=0, int numImageOutputs=0, int numPCLInputs=0, int numPCLOutputs=0, bool createEnumAndNotify=false)
 ~PCLModule () override
 Destructor.
BaseFieldgetInputPCLBaseObjectField (size_t inIdx) const
 Returns the base field of the idx'th input connector if it exists, accessing non existing indexes is not allowed.
size_t getNumInputPCLBaseObjectFields () const
 Returns the number of PCLBaseObject input connectors.
MLPCLObjectPtrsContainer getInputPCLObjectPtrsContainer (size_t inIdx)
PCLBaseObjectgetInputPCLBaseObject (size_t inIdx) const
BaseFieldgetOutputPCLBaseObjectField (size_t inIdx) const
 Returns the base field of the idx'th output connector if it exists, accessing non existing indexes is not allowed.
PCLBaseObjectgetOutputPCLBaseObject (size_t inIdx) const
 Returns the PCL base object of the idx'th output connector if it exists, accessing non existing indexes is not allowed.
void setOutputPCLBaseObject (size_t outIdx, PCLBaseObjectPtr baseObjPtr)
 Sets the PCL base object of the idx'th output connector if it exists, using non existing indexes is not allowed.
size_t getNumOutputPCLBaseObjectFields () const
 Returns the number of PCLBaseObject output connectors.
MLPCLObjectPtrsContainer getOutputPCLObjectPtrsContainer (size_t inIdx)
template<typename PCL_OBJECT_PTR_TYPE>
void setOutputPCLObject (size_t outIdx, PCL_OBJECT_PTR_TYPE outputPCLObjectPtr)
void clearOutputPCLPointers (size_t outIdx)
std::vector< PCLBaseObjectPtr > getNonNullConnectedInputPCLBaseObjects () const
 Returns a vector of all connected non nullptr PCLBaseObjects.
bool hasValidInputPointCloudPointer (size_t inIdx)
bool hasValidInputPolygonMeshPointer (size_t inIdx)
EnumFieldgetUpdateModeFieldPointer () const
 Returns the update mode field if it has been created in the constructor, otherwise nullptr is returned.
NotifyFieldgetUpdateFieldPointer () const
 Returns the update field if it has been created in the constructor, otherwise nullptr is returned.
void setStatusString (const std::string &statusStr)
 Sets a status string in the status field.
std::string getStatusString () const
 Sets a status string in the status field.
const StringFieldgetStatusStringField () const
 Returns a constant reference to the status string field, for example to compare to it in handle Notification.
Public Member Functions inherited from ml::Module
MLMetaProfilePtrgetMetaProfile () const
 Returns the metaprofile for the base operator.
const char * getTypeNameFast () const
 Module (int numInputImages, int numOutputImages)
 ~Module () override
InputConnectorFieldgetInputImageField (MLint i) const
 Returns the field representing input image i. i must be a valid index.
OutputConnectorFieldgetOutputImageField (MLint i=0) const
 Returns the field representing output image i. i must be a valid index.
MLint getNumInputImages () const
 Returns the number of input images of this module.
MLint getNumOutputImages () const
 Returns the number of output images of this module.
PagedImagegetOutputImage (MLint outputIndex=0) const
 Returns the output image outputIndex. The index needs to be in the range [0, getNumOutputImages()-1].
InputConnectorFieldaddInputImage (const char *name=nullptr)
OutputConnectorFieldaddOutputImage (const char *name=nullptr)
PagedImagegetInputImage (MLint inputIndex, bool getReal=false) const
PagedImagegetUpdatedInputImage (MLint inputIndex, bool getReal=false) const
MLErrorCode processAllPages (int outputIndex=-1, SubImageBox region=SubImageBox(), MLRequestProgressCB *progressCallback=nullptr, void *progressCallbackUserData=nullptr)
MLErrorCode processAllPages (ProcessAllPagesHandler &handler, SubImageBox region=SubImageBox(), MLRequestProgressCB *progressCallback=nullptr, void *progressCallbackUserData=nullptr)
MLErrorCode processMissingPages (int outputIndex=0, SubImageBox region=SubImageBox(), MLRequestProgressCB *progressCallback=nullptr, void *progressCallbackUserData=nullptr)
void clearOutputImage (MLint i=0)
 Clears cached output image pages of output image i.
MLint getOutputImageInplace (MLint outputIndex=0) const
MLint getBypass (MLint outputIndex=0) const
THREAD_SUPPORT getThreadSupport () const
bool areRecursiveHandleNotificationsPermitted () const
MLint getHandleNotificationEntryCounter () const
PERMITTED_TYPES getVoxelDataTypeSupport () const
bool isSupportedVoxelDataType (MLDataType dt) const
virtual INPUT_HANDLE handleInput (int, INPUT_STATE) const
INPUT_STATE getInputState (MLint index)
INPUT_STATE getUpdatedInputState (MLint index)
bool isInputImageField (Field *field) const
void touchOutputImageFields () const
 Touches all output image fields to indicate that the images have changed.
virtual void beginSaveFields ()
virtual void endSaveFields ()
Public Member Functions inherited from ml::FieldContainer
 FieldContainer ()
 Constructor.
 ~FieldContainer () override
 Destructor: Deletes all added fields.
std::string whoAmI (bool withInstanceName=true) const
FieldaddField (const char *name, const char *type, const char *value)
FieldaddField (Field *field)
 Adds a field, the ownership of the field is passed to the FieldContainer.
BoolFieldaddBool (const char *name)
 Creates a BoolField with name and adds it to the container. Default value is false.
BoolFieldaddBool (const char *name, bool value)
 Creates a BoolField with name and adds it to the container.
IntFieldaddInt (const char *name)
 Creates an IntField with name and adds it to the container. Default value is 0.
IntFieldaddInt (const char *name, MLint value)
 Creates an IntField with name and adds it to the container.
EnumFieldaddEnum (const char *name, const char *const *enumerationItemNames, MLint numEnumerationItems)
EnumFieldaddEnum (const char *name, const std::vector< std::string > &enumerationItemNames)
template<typename EnumType>
TypedEnumField< EnumType > * addEnum (const char *name, const EnumValues< EnumType > &values, EnumType initialValue)
FloatFieldaddFloat (const char *name)
 Creates a FloatField with name and adds it to the container. Default value is 0.f.
FloatFieldaddFloat (const char *name, float value)
 Creates a FloatField with name and adds it to the container.
ProgressFieldaddProgress (const char *name)
 Creates a float ProgressField with name and adds it to the container. Default value is 0.f.
ProgressFieldaddProgress (const char *name, float value)
 Creates a float ProgressField with name and adds it to the container.
DoubleFieldaddDouble (const char *name)
 Creates a DoubleField with name and adds it to the container. Default value is 0.
DoubleFieldaddDouble (const char *name, double value)
 Creates a DoubleField with name and adds it to the container.
StringFieldaddString (const char *name)
 Creates a StringField with name and adds it to the container. Default value is empty string.
StringFieldaddString (const char *name, const std::string &value)
 Creates a StringField with name and adds it to the container.
NotifyFieldaddNotify (const char *name)
 Creates a NotifyField field with name and adds it to the container.
TriggerFieldaddTrigger (const char *name)
BaseFieldaddBase (const char *name)
 Creates a Base field with name and adds it to the container. Default value is NULL.
BaseFieldaddBase (const char *name, Base *value)
 Creates a Base field with name and adds it to the container.
BaseFieldaddBase (const char *name, const RefCountedBasePtr &value)
 Creates a Base field with name and adds it to the container. Sets the value from intrusive pointer.
template<typename T>
BaseFieldaddBaseWithAllowedType (const char *name, T *value=nullptr)
 As above, but also sets the allowed type of the field.
template<typename T>
BaseFieldaddBaseWithAllowedType (const char *name, const ::boost::intrusive_ptr< T > &value)
 As above, but also sets the allowed type of the field.
template<typename T>
TypedBaseField< T > * addTypedBase (const char *name)
 Creates a TypedBaseField with name and adds it to the container. Default value is NULL.
template<typename T>
TypedBaseField< T > * addTypedBase (const char *name, T *value)
 Creates a TypedBaseField with name and adds it to the container.
template<typename T>
TypedBaseField< T > * addTypedBase (const char *name, const ::boost::intrusive_ptr< T > &value)
 Creates a TypedBaseField with name and adds it to the container. Sets the value from intrusive pointer.
SoNodeFieldaddSoNode (const char *name)
 Creates a SoNodeField with name and adds it to the container. Default value is NULL.
SoNodeFieldaddSoNode (const char *name, SoNode *value)
 Creates a SoNodeField with name and adds it to the container.
PointerFieldaddPointer (const char *name)
 Creates a PointerField with name and adds it to the container.
Vector2FieldaddVector2 (const char *name)
 Creates a Vector2Field with name and adds it to the container.
Vector2FieldaddVector2 (const char *name, const Vector2 &value)
 Creates a Vector2Field with name and adds it to the container.
Vector2FieldaddVector2 (const char *name, double x, double y)
 Creates a Vector2Field with name and adds it to the container.
Vector3FieldaddVector3 (const char *name)
 Creates a Vector3Field with name and adds it to the container.
Vector3FieldaddVector3 (const char *name, const Vector3 &value)
 Creates a Vector3Field with name and adds it to the container.
Vector3FieldaddVector3 (const char *name, double x, double y, double z)
 Creates a Vector3Field with name and adds it to the container.
Vector4FieldaddVector4 (const char *name)
 Creates a Vector4Field with name and adds it to the container.
Vector4FieldaddVector4 (const char *name, const Vector4 &value)
 Creates a Vector4Field with name and adds it to the container.
Vector4FieldaddVector4 (const char *name, double x, double y, double z, double w)
 Creates a Vector4Field with name and adds it to the container.
Vector5FieldaddVector5 (const char *name)
 Creates a Vector5Field with name and adds it to the container.
Vector5FieldaddVector5 (const char *name, const Vector5 &value)
 Creates a Vector5Field with name and adds it to the container.
Vector6FieldaddVector6 (const char *name)
 Creates a Vector6Field with name and adds it to the container.
Vector6FieldaddVector6 (const char *name, const Vector6 &value)
 Creates a Vector6Field with name and adds it to the container.
Vector10FieldaddVector10 (const char *name)
 Creates a Vector10Field with name and adds it to the container.
Vector10FieldaddVector10 (const char *name, const Vector10 &value)
 Creates a Vector10Field with name and adds it to the container.
ImageVectorFieldaddImageVector (const char *name)
 Creates a ImageVectorField with name and adds it to the container.
ImageVectorFieldaddImageVector (const char *name, const ImageVector &value)
 Creates a ImageVectorField with name and adds it to the container.
ImageVectorFieldaddImageVector (const char *name, MLint x, MLint y, MLint z, MLint c, MLint t, MLint u)
 Creates a ImageVectorField with name and adds it to the container.
SubImageBoxFieldaddSubImageBox (const char *name)
 Creates a SubImageBoxField with name and adds it to the container.
SubImageBoxFieldaddSubImageBox (const char *name, const SubImageBox &value)
 Creates a SubImageBoxField with name and adds it to the container.
SubImageBoxdFieldaddSubImageBoxd (const char *name)
 Creates a SubImageBoxd field with name and adds it to the container.
SubImageBoxdFieldaddSubImageBoxd (const char *name, const SubImageBoxd &value)
 Creates a SubImageBoxd field with name and adds it to the container.
ColorFieldaddColor (const char *name)
 Creates a ColorField with name and adds it to the container.
ColorFieldaddColor (const char *name, float r, float g, float b)
 Creates a ColorField with name and adds it to the container.
ColorFieldaddColor (const char *name, const Vector3 &value)
 Creates a ColorField with name and adds it to the container.
PlaneFieldaddPlane (const char *name)
 Creates a PlaneField with name and adds it to the container.
PlaneFieldaddPlane (const char *name, double f0, double f1, double f2, double f3)
 Creates a PlaneField with name and adds it to the container.
PlaneFieldaddPlane (const char *name, const Plane &value)
 Creates a PlaneField with name and adds it to the container.
RotationFieldaddRotation (const char *name)
 Creates a RotationField with name and adds it to the container.
RotationFieldaddRotation (const char *name, const Rotation &value)
 Creates a RotationField with name and adds it to the container.
Matrix2FieldaddMatrix2 (const char *name)
 Creates a Matrix2Field with name and adds it to the container.
Matrix2FieldaddMatrix2 (const char *name, const Matrix2 &value)
 Creates a Matrix2Field with name and adds it to the container.
Matrix3FieldaddMatrix3 (const char *name)
 Creates a Matrix3Field with name and adds it to the container.
Matrix3FieldaddMatrix3 (const char *name, const Matrix3 &value)
 Creates a Matrix3Field with name and adds it to the container.
Matrix4FieldaddMatrix4 (const char *name)
 Creates a Matrix4Field with name and adds it to the container.
Matrix4FieldaddMatrix4 (const char *name, const Matrix4 &value)
 Creates a Matrix4Field with name and adds it to the container.
Matrix5FieldaddMatrix5 (const char *name)
 Creates a Matrix5Field with name and adds it to the container.
Matrix5FieldaddMatrix5 (const char *name, const Matrix5 &value)
 Creates a Matrix5Field with name and adds it to the container.
Matrix6FieldaddMatrix6 (const char *name)
 Creates a Matrix6Field with name and adds it to the container.
Matrix6FieldaddMatrix6 (const char *name, const Matrix6 &value)
 Creates a Matrix6Field with name and adds it to the container.
MatrixFieldaddMatrix (const char *name)
 Creates a MatrixField with name and adds it to the container.
MatrixFieldaddMatrix (const char *name, const Matrix4 &value)
 Creates a MatrixField with name and adds it to the container.
MLDataTypeFieldaddMLDataType (const char *name)
 Creates a MTDataTypeField with name and adds it to the container.
MLDataTypeFieldaddMLDataType (const char *name, MLDataType value)
 Creates a MTDataTypeField with name and adds it to the container.
UniversalTypeFieldaddUniversalType (const char *name)
 Creates an UniversalTypeField field with name and adds it to the container.
IntListFieldaddIntList (const char *name)
 Creates an IntListField field with name and empty list value and adds it to the container.
IntListFieldaddIntList (const char *name, const std::vector< MLint > &value)
 Creates an IntListField field with name and given list value and adds it to the container.
DoubleListFieldaddDoubleList (const char *name)
 Creates an DoubleListField field with name and empty list value and adds it to the container.
DoubleListFieldaddDoubleList (const char *name, const std::vector< double > &value)
 Creates an DoubleListField field with name and given list value and adds it to the container.
Vector2ListFieldaddVector2List (const char *name)
 Creates an Vector2ListField field with name and empty list value and adds it to the container.
Vector2ListFieldaddVector2List (const char *name, const std::vector< Vector2 > &value)
 Creates an Vector2ListField field with name and given list value and adds it to the container.
Vector3ListFieldaddVector3List (const char *name)
 Creates an Vector3ListField field with name and empty list value and adds it to the container.
Vector3ListFieldaddVector3List (const char *name, const std::vector< Vector3 > &value)
 Creates an Vector3ListField field with name and given list value and adds it to the container.
Vector4ListFieldaddVector4List (const char *name)
 Creates an Vector4ListField field with name and empty list value and adds it to the container.
Vector4ListFieldaddVector4List (const char *name, const std::vector< Vector4 > &value)
 Creates an Vector4ListField field with name and given list value and adds it to the container.
size_t getNumFields () const
 Returns the number of added fields.
bool hasField (const std::string &name) const
 Returns true if the field with name name exists; otherwise, false is returned.
FieldgetField (const std::string &name) const
FieldgetField (MLint index) const
 Returns pointer of field at index if it exists. If not, -1 is returned.
MLint getFieldIndex (Field *field) const
 Returns index of field if it exists. If not, -1 is returned.
void setFieldStringValue (const std::string &name, const std::string &value)
std::string getFieldStringValue (const std::string &name) const
virtual void deactivateAttachments ()
Public Member Functions inherited from ml::Base
 Base ()
 Constructor.
virtual ~Base ()
 Destructor.
virtual BasedeepCopy () const
bool isOfAllowedType (const std::vector< const RuntimeType * > &types) const
virtual bool isRefCountedBase () const
 Returns whether the instance is derived from RefCountedBase.
virtual std::string detailString () const
virtual bool implementsPersistence (PersistenceInterface) const
virtual std::string persistentState () const
 Returns a string describing the object's internal state.
virtual void setPersistentState (const std::string &state)
virtual void addStateToTree (TreeNode *) const
 Attaches the object state as children of the given parent node.
virtual void readStateFromTree (TreeNode *)
 Reads the object state from the children of the given parent node.
virtual void writeTo (AbstractPersistenceOutputStream *) const
virtual void readFrom (AbstractPersistenceInputStream *, int)

Protected Member Functions

void _addPCLRelatedFields ()
 Adds fields corresponding to the IterativeClosestPoint class covered with this class, already called by constructor.
Protected Member Functions inherited from ml::PCLRegistration
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.
void _addPCLRelatedFields ()
 Adds fields corresponding to the registration class covered with this class, already called by constructor.
template<typename PCL_FILTER>
void _setFilterParameters (PCL_FILTER &regObject) const
 Sets the filter parameters known from this class.
template<typename PCL_FILTER>
void _retrieveFilterResultParameters (PCL_FILTER &regObject)
 Retrieves output parameters from filter known in this class.
Protected Member Functions inherited from ml::PCLModule
bool _needsUpdate (Field *field) const
 If _updateModeFld and _updateFld settings with field require an update then true is returned, otherwise false.
virtual void _updateConnectionStatus ()
Protected Member Functions inherited from ml::Module
void handleNotificationInternal (Field *field, FieldSensor::Strength strength) override
virtual CalculateOutputImageHandlercreateCalculateOutputImageHandler (PagedImage *outputImage)
virtual void calculateOutputImageProperties (int outputIndex, PagedImage *outputImage)
virtual SubImageBox calculateInputSubImageBox (int, const SubImageBox &outputSubImageBox, int)
virtual void calculateOutputSubImage (SubImage *outputSubImage, int outputIndex, SubImage *inputSubImages)
virtual void provideCustomPage (int, const SubImageBox &, MLMemoryBlockHandle &)
void handleNotificationOff ()
void handleNotificationOn ()
bool isHandleNotificationOn ()
 Returns true if handleNotification calls are permitted; otherwise, it returns false.
void setOutputImageInplace (MLint outputIndex=0, MLint inputIndex=0)
void unsetOutputImageInplace (MLint outputIndex=0)
void setBypass (MLint outputIndex=0, MLint inputIndex=0)
void setClampPagesToImageExtent (bool flag=true)
void setThreadSupport (THREAD_SUPPORT supportMode)
void permitRecursiveHandleNotifications (bool enable)
void setVoxelDataTypeSupport (PERMITTED_TYPES permTypes)

Friends

template<class MODULE_TYPE>
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")
 Allow tool function to call _filterT.

Additional Inherited Members

Public Types inherited from ml::Module
enum  PERMITTED_TYPES { ONLY_SCALAR_TYPES , ONLY_DEFAULT_TYPES , ALL_REGISTERED_TYPES }
 See documentation of setVoxelDataTypeSupport. More...
enum  INPUT_STATE { DISCONNECTED = 0 , CONNECTED_BUT_INVALID = 1 , CONNECTED_AND_VALID = 2 , CONNECTED_BUT_NEEDS_UPDATE = 3 }
 See documentation of handleInput. More...
enum  INPUT_HANDLE { INVALIDATE = 0 , ALLOW_INVALID_INPUT = 2 }
 See documentation of handleInput. More...
Public Types inherited from ml::Base
enum  PersistenceInterface { PersistenceByString , PersistenceByTreeNode , PersistenceByStream }
 This enum describes the different persistence interfaces available. More...
Static Public Member Functions inherited from ml::Module
static MLErrorCode getTile (PagedImage *image, SubImageBox loc, MLDataType datatype, void **data, const ScaleShiftData &scaleShiftData=ScaleShiftData(), MLRequestProgressCB *progressCallback=nullptr, void *progressCallbackUserData=nullptr)
static MLErrorCode getTile (PagedImage *image, SubImage &subimg, const ScaleShiftData &scaleShiftData=ScaleShiftData(), MLRequestProgressCB *progressCallback=nullptr, void *progressCallbackUserData=nullptr)
static MLErrorCode updateImageProperties (PagedImage *image)
static void freeTile (void *data)
 For documentation see Host::freeTile().
static void updateProgress (const char *info1, const char *info2)
 For documentation see Host::updateProgress().
static bool shouldTerminate ()
 For documentation see Host::shouldTerminate().
static FieldgetPressedNotifyField ()
 For documentation see Host::getPressedNotifyField().
static void adaptPageExtent (ImageVector &pageExtent, MLDataType imageType, const ImageVector &newImgExtent, const ImageVector &oldImgExtent, const ImageVector &pageUnit=ImageVector(0), const ImageVector &minPageExtent=ImageVector(0), const ImageVector &maxPageExtent=ImageVector(0))
static std::string getVoxelValueAsString (PagedImage *image, const ImageVector &position, MLErrorCode *errorCode=nullptr, const std::string &errorResult="")
static size_t getNumModules ()
 Returns the number of instantiated modules.
static ModulegetModule (size_t index)
 Returns a pointer to instantiated module index.
static MLint findModuleIndex (Module &module)
 Returns the index of Module module. If not found, -1 is returned.
static void destroyModule ()
Protected Types inherited from ml::Module
enum  THREAD_SUPPORT { NO_THREAD_SUPPORT = PagedImage::NO_THREAD_SUPPORT , MULTITHREADED = PagedImage::MULTITHREADED , IO_THREAD = PagedImage::IO_THREAD }
Static Protected Member Functions inherited from ml::PCLRegistration
static Matrix4 _pclToMLType (Eigen::Matrix< float, 4, 4 > inputType)

Detailed Description

ML Module class wrapping the pcl::IterativeClosestPoint class from the PCL.

Definition at line 27 of file mlPCLIterativeClosestPoint.h.

Constructor & Destructor Documentation

◆ PCLIterativeClosestPoint()

ml::PCLIterativeClosestPoint::PCLIterativeClosestPoint ( )

Initializes an ML module wrapping a pcl::IterativeClosestPoint filter, adds super class fields and calls _addPCLRelatedFields.

Referenced by _addPCLRelatedFields().

Member Function Documentation

◆ _addPCLRelatedFields()

void ml::PCLIterativeClosestPoint::_addPCLRelatedFields ( )
protected

Adds fields corresponding to the IterativeClosestPoint class covered with this class, already called by constructor.

References PCLIterativeClosestPoint().

◆ getUseReciprocalCorrespondencesFld()

BoolField & ml::PCLIterativeClosestPoint::getUseReciprocalCorrespondencesFld ( ) const
inline

See _useReciprocalCorrespondencesFld for details.

Definition at line 35 of file mlPCLIterativeClosestPoint.h.

◆ callSameTyped_filterT

template<class MODULE_TYPE>
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" )
friend

Allow tool function to call _filterT.

template <typename POINT_CLOUD_TYPE1, typename POINT_CLOUD_TYPE2>
void mod._filterT(const POINT_CLOUD_TYPE1 &inputPointCloud1, const POINT_CLOUD_TYPE2 &inputPointCloud2);

if inputPointCloud1 from first MLPCLObjectPtrsContainer and inputPointCloud2 from second MLPCLObjectPtrsContainer have same non nullptr point cloud members.

Parameters
modThe module on which _filterT shall be called; MODULE_TYPE must declare _filterT as friend or public to make this possible (for example with
template <class MODULE_TYPE> friend std::string callSameTyped_filterT(MODULE_TYPE &mod, ...);)
friend std::string callSameTyped_filterT(MODULE_TYPE &mod, const std::string &successfullCalledFilterMessage, const std::string &noValidPointCloudMessage, const std::string &noInput1PointCloudMessage, const std::string &noInput2PointCloudMessage, const std::string &differentPointCloudMessage)
Allow tool function to call _filterT.
Parameters
successfullCalledFilterMessageString to be returned if mod._filterT has been called.
noValidPointCloudMessageString to be returned if no point cloud is provided at both inputs.
noInput1PointCloudMessageString to be returned if no point cloud is provided at first input.
noInput2PointCloudMessageString to be returned if no point cloud is provided at first input.
differentPointCloudMessageString to be returned if both inputs have differently typed point clouds.
Returns
An string according to defined messages.

Definition at line 246 of file mlPCLObjectPtrsContainer.h.

References callSameTyped_filterT, ml::MLPCLObjectPtrsContainer::hasValidPointCloudPointer(), ml::MLPCLObjectPtrsContainer::pointCloudXYZ, ml::MLPCLObjectPtrsContainer::pointCloudXYZINormal, ml::MLPCLObjectPtrsContainer::pointCloudXYZLNormal, and ml::MLPCLObjectPtrsContainer::pointCloudXYZRGBNormal.

Referenced by callSameTyped_filterT.


The documentation for this class was generated from the following file: