Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
alvar::FilterAverage Class Reference

FilterAverage provides an average filter More...

#include <Filter.h>

Inheritance diagram for alvar::FilterAverage:
Inheritance graph
[legend]

Public Member Functions

double deviation () const
 
 FilterAverage (int size=3)
 
int getCurrentSize ()
 
int getWindowSize ()
 
virtual double next (double y)
 Update the value. All inherited classes need to update value in next(). More...
 
double operator= (double _value)
 
virtual void reset ()
 Reset the filter state. More...
 
void setWindowSize (int size)
 
- Public Member Functions inherited from alvar::Filter
 Filter ()
 Constructor. More...
 
double get () const
 Get the latest value. More...
 
 operator double ()
 Get the latest value. More...
 

Protected Member Functions

void push_to_buffer (double y)
 

Protected Attributes

std::deque< double > buffer
 
unsigned int count
 
unsigned int window_size
 
- Protected Attributes inherited from alvar::Filter
double value
 

Detailed Description

FilterAverage provides an average filter

The FilterAverage remembers window_size last elements in the time series and returns always the average of these elements. The size of the window window_size can be set in the constructor or with setWindowSize() .

Note, that when the window_size is <= 0 we calculate the average over the whole sequence without using the buffer.

Examples:
SampleFilter.cpp.

Definition at line 106 of file Filter.h.

Constructor & Destructor Documentation

alvar::FilterAverage::FilterAverage ( int  size = 3)
inline

Definition at line 113 of file Filter.h.

Member Function Documentation

double alvar::FilterAverage::deviation ( ) const

Definition at line 67 of file Filter.cpp.

int alvar::FilterAverage::getCurrentSize ( )
inline

Definition at line 116 of file Filter.h.

int alvar::FilterAverage::getWindowSize ( )
inline

Definition at line 115 of file Filter.h.

double alvar::FilterAverage::next ( double  y)
virtual

Update the value. All inherited classes need to update value in next().

Implements alvar::Filter.

Reimplemented in alvar::FilterMedian.

Examples:
SampleFilter.cpp.

Definition at line 48 of file Filter.cpp.

double alvar::FilterAverage::operator= ( double  _value)
inline

Definition at line 117 of file Filter.h.

void alvar::FilterAverage::push_to_buffer ( double  y)
protected

Definition at line 41 of file Filter.cpp.

void alvar::FilterAverage::reset ( )
virtual

Reset the filter state.

Implements alvar::Filter.

Definition at line 63 of file Filter.cpp.

void alvar::FilterAverage::setWindowSize ( int  size)
inline

Definition at line 114 of file Filter.h.

Member Data Documentation

std::deque<double> alvar::FilterAverage::buffer
protected

Definition at line 110 of file Filter.h.

unsigned int alvar::FilterAverage::count
protected

Definition at line 108 of file Filter.h.

unsigned int alvar::FilterAverage::window_size
protected

Definition at line 109 of file Filter.h.


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


ar_track_alvar
Author(s): Scott Niekum
autogenerated on Thu Jun 6 2019 19:27:24