LaserDataFilter Class Reference

Laser data filter. More...

#include <filter.h>

Inheritance diagram for LaserDataFilter:

[legend]
List of all members.

Public Member Functions

 LaserDataFilter ()
 Constructor.
virtual ~LaserDataFilter ()
 Virtual empty destructor.
virtual float * filtered_data ()
 Get filtered data array.
virtual unsigned int filtered_data_size ()
 Get size of filtered data array.
virtual void filtered_data (float *&data, unsigned int &data_size)
 Get filtered data array and size.
virtual void filter (const float *data, unsigned int data_size)=0
 Filter the incoming data.

Protected Attributes

float * _filtered_data
 Allocate a float array and assign your filtered values or copy through the original values if unmodified.
unsigned int _filtered_data_size
 Size in bytes of _filtered_data.
bool _free_filtered_data
 True to have _filtered_data deleted automatically on destruction.

Detailed Description

Laser data filter.

With this interface laser filter are described. These filters take laser readings as input, mangle them and return a new array of filtered laser data.

Author:
Tim Niemueller

Definition at line 26 of file filter.h.


Constructor & Destructor Documentation

LaserDataFilter::LaserDataFilter (  ) 

Constructor.

Definition at line 55 of file filter.cpp.

References _filtered_data, _filtered_data_size, and _free_filtered_data.

LaserDataFilter::~LaserDataFilter (  )  [virtual]

Virtual empty destructor.

Definition at line 64 of file filter.cpp.

References _filtered_data, and _free_filtered_data.


Member Function Documentation

void LaserDataFilter::filter ( const float *  data,
unsigned int  data_size 
) [pure virtual]

Filter the incoming data.

Function shall create the _filtered_data float array with the same size as the incoming data and write filtered data to this interface or copy through the original value if the filter does not apply.

Parameters:
data the laser data
data_size the number of elements in the data array

Implemented in Laser720to360DataFilter, LaserDataFilterCascade, LaserCircleDataFilter, LaserDeadSpotsDataFilter, and LaserReverseAngleDataFilter.

void LaserDataFilter::filtered_data ( float *&  data,
unsigned int &  data_size 
) [virtual]

Get filtered data array and size.

Parameters:
data upon return contains pointer to filtered data
data_size upon return contains data size

Definition at line 96 of file filter.cpp.

References _filtered_data, and _filtered_data_size.

float * LaserDataFilter::filtered_data (  )  [virtual]

Get filtered data array.

Returns:
a float array of the same size as the last array given to filter() or NULL if filter() was never called.

Definition at line 75 of file filter.cpp.

References _filtered_data.

Referenced by LaserSensorThread::loop().

unsigned int LaserDataFilter::filtered_data_size (  )  [virtual]

Get size of filtered data array.

Returns:
size of filtered data array or 0 if filter() was never called.

Definition at line 85 of file filter.cpp.

References _filtered_data_size.


Member Data Documentation

LaserDataFilter::_filtered_data [protected]

Allocate a float array and assign your filtered values or copy through the original values if unmodified.

Definition at line 38 of file filter.h.

Referenced by LaserReverseAngleDataFilter::filter(), LaserDataFilterCascade::filter(), Laser720to360DataFilter::filter(), LaserDeadSpotsDataFilter::filter(), LaserCircleDataFilter::filter(), filtered_data(), Laser720to360DataFilter::Laser720to360DataFilter(), LaserDataFilter(), LaserReverseAngleDataFilter::LaserReverseAngleDataFilter(), and ~LaserDataFilter().

LaserDataFilter::_filtered_data_size [protected]

Size in bytes of _filtered_data.

Definition at line 39 of file filter.h.

Referenced by LaserReverseAngleDataFilter::filter(), LaserDataFilterCascade::filter(), LaserDeadSpotsDataFilter::filter(), LaserCircleDataFilter::filter(), filtered_data(), filtered_data_size(), Laser720to360DataFilter::Laser720to360DataFilter(), LaserDataFilter(), and LaserReverseAngleDataFilter::LaserReverseAngleDataFilter().

LaserDataFilter::_free_filtered_data [protected]

True to have _filtered_data deleted automatically on destruction.

Definition at line 40 of file filter.h.

Referenced by LaserDataFilter(), LaserDataFilterCascade::LaserDataFilterCascade(), and ~LaserDataFilter().


The documentation for this class was generated from the following files:
Generated on Tue Feb 22 13:32:36 2011 for Fawkes API by  doxygen 1.4.7