diff --git a/common/include/villas/dsp/moving_average_window.hpp b/common/include/villas/dsp/moving_average_window.hpp index f6b6c29f2..64f6e33ef 100644 --- a/common/include/villas/dsp/moving_average_window.hpp +++ b/common/include/villas/dsp/moving_average_window.hpp @@ -23,36 +23,32 @@ #pragma once +#include #include namespace villas { namespace dsp { template -class MovingAverageWindow { - -public: - typedef typename Window::size_type size_type; +class MovingAverageWindow : public Window { protected: - Window window; - T state; public: - MovingAverageWindow(size_type len, T i = 0) : - window(len, i), + MovingAverageWindow(size_t len, T i = 0) : + Window(len, i), state(i) { } T update(T in) { - T out = window.update(in); + T out = Window::update(in); state += in; state -= out; - return state / window.getSteps(); + return state / (double) Window::getLength(); } };