From 8bf0a196d9a3ab8780bf94396aaac9687f57702c Mon Sep 17 00:00:00 2001 From: Tom Rondeau Date: Mon, 17 Jan 2011 16:45:58 -0500 Subject: [PATCH] Adding accessor function to Goertzel filter implementaiton to set/reset its parameters. --- gnuradio-core/src/lib/filter/gri_goertzel.cc | 10 ++++++++-- gnuradio-core/src/lib/filter/gri_goertzel.h | 3 ++- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/gnuradio-core/src/lib/filter/gri_goertzel.cc b/gnuradio-core/src/lib/filter/gri_goertzel.cc index f0314e40..85e66c06 100644 --- a/gnuradio-core/src/lib/filter/gri_goertzel.cc +++ b/gnuradio-core/src/lib/filter/gri_goertzel.cc @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2002 Free Software Foundation, Inc. + * Copyright 2002,2011 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -25,6 +25,12 @@ #include gri_goertzel::gri_goertzel(int rate, int len, float freq) +{ + gri_setparms(rate, len, freq); +} + +void +gri_goertzel::gri_setparms(int rate, int len, float freq) { d_d1 = 0.0; d_d2 = 0.0; @@ -32,9 +38,9 @@ gri_goertzel::gri_goertzel(int rate, int len, float freq) float w = 2.0*M_PI*freq/rate; d_wr = 2.0*std::cos(w); d_wi = std::sin(w); - d_len = len; d_processed = 0; + } gr_complex gri_goertzel::batch(float *in) diff --git a/gnuradio-core/src/lib/filter/gri_goertzel.h b/gnuradio-core/src/lib/filter/gri_goertzel.h index 86d3d34d..e062f000 100644 --- a/gnuradio-core/src/lib/filter/gri_goertzel.h +++ b/gnuradio-core/src/lib/filter/gri_goertzel.h @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2006 Free Software Foundation, Inc. + * Copyright 2006,2011 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -34,6 +34,7 @@ class gri_goertzel public: gri_goertzel() {} gri_goertzel(int rate, int len, float freq); + void gri_setparms(int rate, int len, float freq); // Process a input array gr_complex batch(float *in); -- 2.30.2