From 08c3b8fe72915e30bc62d0d944640a41c5315e8c Mon Sep 17 00:00:00 2001 From: Tom Rondeau Date: Fri, 9 Apr 2010 00:40:36 -0400 Subject: [PATCH] Every other time through the channelizer, the FFT input buffer must be flipped. The commented code removed in this checkin does that through a calculation in the loops, but the way the filter assignment works with this code, the flip is done by keeping the indexing static, so a look up table works and is slightly faster. --- gnuradio-core/src/lib/filter/gr_pfb_channelizer_ccf.cc | 4 ---- 1 file changed, 4 deletions(-) diff --git a/gnuradio-core/src/lib/filter/gr_pfb_channelizer_ccf.cc b/gnuradio-core/src/lib/filter/gr_pfb_channelizer_ccf.cc index 5ac5c2a7..f0fd33a8 100644 --- a/gnuradio-core/src/lib/filter/gr_pfb_channelizer_ccf.cc +++ b/gnuradio-core/src/lib/filter/gr_pfb_channelizer_ccf.cc @@ -142,7 +142,6 @@ gr_pfb_channelizer_ccf::work (int noutput_items, int r = N / M; int n=1, i=-1, j=0, last; - //int state = 0; // Although the filters change, we use this look up table // to set the index of the FFT input buffer, which equivalently @@ -158,7 +157,6 @@ gr_pfb_channelizer_ccf::work (int noutput_items, last = i; while(i >= 0) { in = (gr_complex*)input_items[j]; - //d_fft->get_inbuf()[(i + state*r) % N] = d_filters[i]->filter(&in[n]); d_fft->get_inbuf()[idxlut[j]] = d_filters[i]->filter(&in[n]); j++; i--; @@ -167,14 +165,12 @@ gr_pfb_channelizer_ccf::work (int noutput_items, i = N-1; while(i > last) { in = (gr_complex*)input_items[j]; - //d_fft->get_inbuf()[(i + state*r) % N] = d_filters[i]->filter(&in[n-1]); d_fft->get_inbuf()[idxlut[j]] = d_filters[i]->filter(&in[n-1]); j++; i--; } n += (i+r) >= N; - //state ^= 1; // despin through FFT d_fft->execute(); -- 2.30.2