LightLib
PROS library for VEX V5: EKF/MCL localization, RAMSETE path following, high-level chassis API
Loading...
Searching...
No Matches
okapi::MedianFilter< n > Class Template Reference

A filter which returns the median value of list of values. More...

#include <medianFilter.hpp>

Inheritance diagram for okapi::MedianFilter< n >:
okapi::Filter

Public Member Functions

 MedianFilter ()
 
double filter (const double ireading) override
 Filters a value, like a sensor reading.
 
double getOutput () const override
 Returns the previous output from filter.
 
- Public Member Functions inherited from okapi::Filter
virtual ~Filter ()
 

Protected Member Functions

double kth_smallset ()
 Algorithm from N.
 

Protected Attributes

std::array< double, n > data {0}
 
std::size_t index = 0
 
double output = 0
 
const size_t middleIndex
 

Detailed Description

template<std::size_t n>
class okapi::MedianFilter< n >

A filter which returns the median value of list of values.

Template Parameters
nnumber of taps in the filter

Definition at line 21 of file medianFilter.hpp.

Constructor & Destructor Documentation

◆ MedianFilter()

template<std::size_t n>
okapi::MedianFilter< n >::MedianFilter ( )
inline

Definition at line 23 of file medianFilter.hpp.

Member Function Documentation

◆ filter()

template<std::size_t n>
double okapi::MedianFilter< n >::filter ( const double  ireading)
inlineoverridevirtual

Filters a value, like a sensor reading.

Parameters
ireadingnew measurement
Returns
filtered result

Implements okapi::Filter.

Definition at line 32 of file medianFilter.hpp.

◆ getOutput()

template<std::size_t n>
double okapi::MedianFilter< n >::getOutput ( ) const
inlineoverridevirtual

Returns the previous output from filter.

Returns
the previous output from filter

Implements okapi::Filter.

Definition at line 47 of file medianFilter.hpp.

◆ kth_smallset()

template<std::size_t n>
double okapi::MedianFilter< n >::kth_smallset ( )
inlineprotected

Algorithm from N.

Wirth’s book, implementation by N. Devillard.

Definition at line 60 of file medianFilter.hpp.

Member Data Documentation

◆ data

template<std::size_t n>
std::array<double, n> okapi::MedianFilter< n >::data {0}
protected

Definition at line 52 of file medianFilter.hpp.

◆ index

template<std::size_t n>
std::size_t okapi::MedianFilter< n >::index = 0
protected

Definition at line 53 of file medianFilter.hpp.

◆ middleIndex

template<std::size_t n>
const size_t okapi::MedianFilter< n >::middleIndex
protected

Definition at line 55 of file medianFilter.hpp.

◆ output

template<std::size_t n>
double okapi::MedianFilter< n >::output = 0
protected

Definition at line 54 of file medianFilter.hpp.


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