summaryrefslogtreecommitdiff
path: root/gnuradio-core/src/lib
diff options
context:
space:
mode:
authorTom Rondeau2010-12-12 13:09:32 -0500
committerTom Rondeau2010-12-12 13:48:32 -0500
commitc75950bd5babfcab323b29b956fa0b620c3c19da (patch)
tree92d2f2a8b81a0601a844fce0aa9eead2db5f1675 /gnuradio-core/src/lib
parent9db640f51b3af0cc73a94471a623b4d394ec2aab (diff)
downloadgnuradio-c75950bd5babfcab323b29b956fa0b620c3c19da.tar.gz
gnuradio-c75950bd5babfcab323b29b956fa0b620c3c19da.tar.bz2
gnuradio-c75950bd5babfcab323b29b956fa0b620c3c19da.zip
resampler PFB: Sets relative rate when rate is changed.
Diffstat (limited to 'gnuradio-core/src/lib')
-rw-r--r--gnuradio-core/src/lib/filter/gr_pfb_arb_resampler_ccf.cc3
-rw-r--r--gnuradio-core/src/lib/filter/gr_pfb_arb_resampler_ccf.h1
2 files changed, 1 insertions, 3 deletions
diff --git a/gnuradio-core/src/lib/filter/gr_pfb_arb_resampler_ccf.cc b/gnuradio-core/src/lib/filter/gr_pfb_arb_resampler_ccf.cc
index 2136dd843..35455aa12 100644
--- a/gnuradio-core/src/lib/filter/gr_pfb_arb_resampler_ccf.cc
+++ b/gnuradio-core/src/lib/filter/gr_pfb_arb_resampler_ccf.cc
@@ -80,8 +80,6 @@ gr_pfb_arb_resampler_ccf::gr_pfb_arb_resampler_ccf (float rate,
create_diff_taps(taps, dtaps);
create_taps(taps, d_taps, d_filters);
create_taps(dtaps, d_dtaps, d_diff_filters);
-
- set_relative_rate(rate);
}
gr_pfb_arb_resampler_ccf::~gr_pfb_arb_resampler_ccf ()
@@ -179,7 +177,6 @@ gr_pfb_arb_resampler_ccf::general_work (int noutput_items,
// produce output as long as we can and there are enough input samples
while((i < noutput_items) && (count < ninput_items[0]-1)) {
-
// start j by wrapping around mod the number of channels
while((j < d_int_rate) && (i < noutput_items)) {
// Take the current filter and derivative filter output
diff --git a/gnuradio-core/src/lib/filter/gr_pfb_arb_resampler_ccf.h b/gnuradio-core/src/lib/filter/gr_pfb_arb_resampler_ccf.h
index 44dd202b9..2c36c95f9 100644
--- a/gnuradio-core/src/lib/filter/gr_pfb_arb_resampler_ccf.h
+++ b/gnuradio-core/src/lib/filter/gr_pfb_arb_resampler_ccf.h
@@ -164,6 +164,7 @@ public:
void set_rate (float rate) {
d_dec_rate = (unsigned int)floor(d_int_rate/rate);
d_flt_rate = (d_int_rate/rate) - d_dec_rate;
+ set_relative_rate(rate);
}
int general_work (int noutput_items,