Krotos Modules 3
Loading...
Searching...
No Matches
EMAFilter.cpp
Go to the documentation of this file.
1
#include "
EMAFilter.h
"
2
//=====================================================================================
3
krotos::EMAFilter::EMAFilter
() : alpha(0), y(0)
4
{
5
//
6
}
7
//=====================================================================================
8
void
krotos::EMAFilter::configure
(
float
rate,
float
tau,
float
y0)
9
{
10
const
float
W = rate * tau;
11
alpha = (W - 1) / (W + 1);
12
y = y0;
13
configured =
true
;
14
}
15
//=====================================================================================
16
float
krotos::EMAFilter::processSample
(
float
x)
17
{
18
assert(configured);
19
20
y = (1 - alpha) * x + alpha * y;
21
22
return
y;
23
}
EMAFilter.h
krotos::EMAFilter::configure
void configure(float rate, float tau, float y0=0.f)
Definition
EMAFilter.cpp:8
krotos::EMAFilter::EMAFilter
EMAFilter()
Definition
EMAFilter.cpp:3
krotos::EMAFilter::processSample
float processSample(float x)
Definition
EMAFilter.cpp:16
krotos_dsp
utilities
analysis_modules
time_domain_analysis
EMAFilter.cpp
Generated by
1.12.0