| 23 | float a0, a1, a2, b0, b1, b2; |
| 24 | |
| 25 | inline T process(const T& in) noexcept { |
| 26 | T out = b0 * in + b1 * x[0] + b2 * x[1] - a1 * y[0] - a2 * y[1]; |
| 27 | |
| 28 | //shift buffers |
| 29 | x[1] = x[0]; |
| 30 | x[0] = in; |
| 31 | y[1] = y[0]; |
| 32 | y[0] = out; |
| 33 | |
| 34 | return out; |
| 35 | } |
| 36 | |
| 37 | void setCutoff(float f, float q, int type) { |
| 38 | const float w0 = 2 * M_PI * f / APP->engine->getSampleRate(); |