From ef65f1630a8872d764c3c771ecc30c6c77ae253c Mon Sep 17 00:00:00 2001 From: Ahmet Inan Date: Sun, 4 Mar 2018 08:25:35 +0100 Subject: [PATCH] use the new const.hh --- window.hh | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/window.hh b/window.hh index bff9d2b..68272aa 100644 --- a/window.hh +++ b/window.hh @@ -7,6 +7,7 @@ Copyright 2018 Ahmet Inan #ifndef WINDOW_HH #define WINDOW_HH +#include "const.hh" #include "kahan.hh" namespace DSP { @@ -33,7 +34,7 @@ public: Hann() { for (int n = 0; n < TAPS; ++n) - w[n] = TYPE(0.5) * (TYPE(1) - std::cos(TYPE(2) * TYPE(M_PI) * TYPE(n) / TYPE(TAPS - 1))); + w[n] = TYPE(0.5) * (TYPE(1) - std::cos(Const::TwoPi() * TYPE(n) / TYPE(TAPS - 1))); } inline TYPE operator () (int n) { return n >= 0 && n < TAPS ? w[n] : 0; } inline operator const TYPE * () const { return w; } @@ -47,7 +48,7 @@ public: Hamming() { for (int n = 0; n < TAPS; ++n) - w[n] = TYPE(0.54) - TYPE(0.46) * std::cos(TYPE(2) * TYPE(M_PI) * TYPE(n) / TYPE(TAPS - 1)); + w[n] = TYPE(0.54) - TYPE(0.46) * std::cos(Const::TwoPi() * TYPE(n) / TYPE(TAPS - 1)); } inline TYPE operator () (int n) { return n >= 0 && n < TAPS ? w[n] : 0; } inline operator const TYPE * () const { return w; } @@ -59,7 +60,7 @@ class Lanczos TYPE w[TAPS]; TYPE sinc(TYPE x) { - return TYPE(0) == x ? TYPE(1) : std::sin(TYPE(M_PI) * x) / (TYPE(M_PI) * x); + return TYPE(0) == x ? TYPE(1) : std::sin(Const::Pi() * x) / (Const::Pi() * x); } public: Lanczos() @@ -101,7 +102,7 @@ class Kaiser { Kahan sum(1.0); TYPE val = 1.0; - // converges for -3*M_PI:3*M_PI in less than: + // converges for -3*Pi:3*Pi in less than: // float: 25 iterations // double: 35 iterations for (int n = 1; n < 35; ++n) { @@ -115,7 +116,7 @@ public: Kaiser(TYPE a) { for (int n = 0; n < TAPS; ++n) - w[n] = i0(TYPE(M_PI) * a * std::sqrt(TYPE(1) - std::pow(TYPE(2 * n) / TYPE(TAPS - 1) - TYPE(1), TYPE(2)))) / i0(TYPE(M_PI) * a); + w[n] = i0(Const::Pi() * a * std::sqrt(TYPE(1) - std::pow(TYPE(2 * n) / TYPE(TAPS - 1) - TYPE(1), TYPE(2)))) / i0(Const::Pi() * a); } inline TYPE operator () (int n) { return n >= 0 && n < TAPS ? w[n] : 0; } inline operator const TYPE * () const { return w; }