100 virtual double next(
double y) = 0;
120 unsigned int window_size;
121 std::deque<double> buffer;
122 void push_to_buffer(
double y);
130 setWindowSize(
int size)
143 return (
int)buffer.size();
146 operator=(
double _value)
152 double deviation()
const;
167 std::vector<double> sort_buffer;
175 setWindowSize(
int size)
177 FilterAverage::setWindowSize(size);
178 sort_buffer.resize(size);
181 operator=(
double _value)
215 setAlpha(
double _alpha)
217 alpha = std::max(std::min(_alpha, 1.0), 0.0);
225 operator=(
double _value)
261 setGamma(
double _gamma)
263 gamma = std::max(std::min(_gamma, 1.0), 0.0);
271 operator=(
double _value)
309 tmp =
new double[size];
318 as_double_array(
size_t start_i = 0)
320 for (
size_t i = 0; i < arr.size(); i++) {
323 return &(tmp[start_i]);
This file defines library export definitions, version numbers and build information.
Class for handling an array of filtered values.
FilterAverage provides an average filter
virtual void reset()
Reset the filter state.
virtual double next(double y)
Update the value. All inherited classes need to update value in next().
FilterDoubleExponentialSmoothing provides an weighted running average filter
virtual double next(double y)
Update the value. All inherited classes need to update value in next().
Filter is pure virtual class describing the basic virtual interface for all filters
virtual void reset()=0
Reset the filter state.
virtual double next(double y)=0
Update the value. All inherited classes need to update value in next().
double get() const
Get the latest value.
FilterRunningAverage provides an weighted running average filter
virtual void reset()
Reset the filter state.
virtual double next(double y)
Update the value. All inherited classes need to update value in next().