From 65383970a7aeb35e8557cc495ac18ad66433d29e Mon Sep 17 00:00:00 2001 From: Ahmet Inan Date: Sun, 24 Feb 2019 19:42:54 +0100 Subject: [PATCH] added prev, alpha init and samples() to EMA --- ema.hh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ema.hh b/ema.hh index 210d699..4a23a4d 100644 --- a/ema.hh +++ b/ema.hh @@ -22,13 +22,17 @@ class EMA return x-VALUE(1)+sqrt(x*(x-VALUE(4))+VALUE(3)); } public: - EMA() : prev(0), alpha(1) + constexpr EMA(TYPE prev = TYPE(0), VALUE alpha = VALUE(1)) : prev(prev), alpha(alpha) { } void cutoff(int n, int N) { alpha = cutoff_alpha(n, N); } + void samples(int s) + { + alpha = VALUE(1) / VALUE(s); + } TYPE operator()(TYPE input) { return prev = lerp(alpha, prev, input);