iLab Neuromorphic Robotics Toolkit  0.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
nrt::FilterBase Class Referenceabstract

#include <nrt/PointCloud2/Filter/FilterBase.H>

Filter interface that all filters must inherit from.

Definition at line 53 of file FilterBase.H.

Inheritance diagram for nrt::FilterBase:
nrt::DuplicateRemovalFilter nrt::PassThroughFilter nrt::RandomRemovalFilter nrt::VoxelFilter

Public Member Functions

virtual ~FilterBase ()
 Virtual destruction.
 
virtual PointCloud2 filter (PointCloud2 const input)=0
 Filters the input point cloud. More...
 
virtual PointCloud2 filter (PointCloud2 const input, Indices const indices)=0
 Filter a subset of an input point cloud. More...
 
template<class Field >
PointCloud2 filter (PointCloud2 const input)
 Force the filter to operate on a specific field, if supported. More...
 
template<class Field >
PointCloud2 filter (PointCloud2 const input, Indices const indices)
 Force the filter to operate on a specific field of a subset, if supported. More...
 

Member Function Documentation

virtual PointCloud2 nrt::FilterBase::filter ( PointCloud2 const  input)
pure virtual

Filters the input point cloud.

Parameters
inputThe input point cloud
Returns
The filtered output

Implemented in nrt::PassThroughFilter, nrt::VoxelFilter, nrt::DuplicateRemovalFilter, and nrt::RandomRemovalFilter.

virtual PointCloud2 nrt::FilterBase::filter ( PointCloud2 const  input,
Indices const  indices 
)
pure virtual

Filter a subset of an input point cloud.

Parameters
inputThe input point cloud
indicesThe indices describing a subset of the cloud
Returns
The filtered output

Implemented in nrt::VoxelFilter, nrt::PassThroughFilter, nrt::DuplicateRemovalFilter, and nrt::RandomRemovalFilter.

template<class Field >
PointCloud2 nrt::FilterBase::filter ( PointCloud2 const  input)

Force the filter to operate on a specific field, if supported.

If your filter is capable of operating on specific dense or sparse fields of a point cloud other than geometry, it should override this function and provide a working implementation.

Template Parameters
Thefield to filter
Parameters
inputThe input point cloud
Returns
The filtered point cloud
Exceptions
PointCloud2FilterExceptionIf this operation is not supported
template<class Field >
PointCloud2 nrt::FilterBase::filter ( PointCloud2 const  input,
Indices const  indices 
)

Force the filter to operate on a specific field of a subset, if supported.

If your filter is capable of operating on specific dense or sparse fields of a point cloud other than geometry, it should override this function and provide a working implementation.

Template Parameters
Thefield to filter
Parameters
inputThe input point cloud
indicesThe indices describing some subset
Returns
The filtered point cloud
Exceptions
PointCloud2FilterExceptionIf this operation is not supported

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