commit-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Commit-gnuradio] r4547 - in gnuradio/branches/developers/n4hy/ofdm/gnur


From: trondeau
Subject: [Commit-gnuradio] r4547 - in gnuradio/branches/developers/n4hy/ofdm/gnuradio-core/src/lib: general gengen
Date: Tue, 20 Feb 2007 15:21:16 -0700 (MST)

Author: trondeau
Date: 2007-02-20 15:21:15 -0700 (Tue, 20 Feb 2007)
New Revision: 4547

Modified:
   
gnuradio/branches/developers/n4hy/ofdm/gnuradio-core/src/lib/general/gr_ofdm_sampler.cc
   
gnuradio/branches/developers/n4hy/ofdm/gnuradio-core/src/lib/gengen/gr_peak_detector_XX.cc.t
Log:
work in progress

Modified: 
gnuradio/branches/developers/n4hy/ofdm/gnuradio-core/src/lib/general/gr_ofdm_sampler.cc
===================================================================
--- 
gnuradio/branches/developers/n4hy/ofdm/gnuradio-core/src/lib/general/gr_ofdm_sampler.cc
     2007-02-20 22:01:09 UTC (rev 4546)
+++ 
gnuradio/branches/developers/n4hy/ofdm/gnuradio-core/src/lib/general/gr_ofdm_sampler.cc
     2007-02-20 22:21:15 UTC (rev 4547)
@@ -38,7 +38,7 @@
 gr_ofdm_sampler::gr_ofdm_sampler (unsigned int fft_length, 
                                  unsigned int symbol_length)
   : gr_block ("ofdm_sampler",
-             gr_make_io_signature (3, 3, sizeof (gr_complex)),
+             gr_make_io_signature (2, 2, sizeof (gr_complex)),
              gr_make_io_signature (1, 1, sizeof (gr_complex)*fft_length)),
     d_fft_length(fft_length), d_symbol_length(symbol_length)
 {

Modified: 
gnuradio/branches/developers/n4hy/ofdm/gnuradio-core/src/lib/gengen/gr_peak_detector_XX.cc.t
===================================================================
--- 
gnuradio/branches/developers/n4hy/ofdm/gnuradio-core/src/lib/gengen/gr_peak_detector_XX.cc.t
        2007-02-20 22:01:09 UTC (rev 4546)
+++ 
gnuradio/branches/developers/n4hy/ofdm/gnuradio-core/src/lib/gengen/gr_peak_detector_XX.cc.t
        2007-02-20 22:21:15 UTC (rev 4547)
@@ -52,17 +52,30 @@
   @I_TYPE@ *iptr = (@I_TYPE@ *) input_items[0];
   @O_TYPE@ *optr = (@O_TYPE@ *) output_items[0];
 
+  unsigned char found = 0;
   float alpha = 0.01;
   for(int i=0;i<noutput_items;i++) {
     d_avg = (alpha)*iptr[i] + (1-alpha)*d_avg;
   }
 
-  for (int i = 0; i < noutput_items-1; i++){
+  for (int i = 1; i < noutput_items; i++){
     if( (iptr[i-1] > d_avg*0.25) && (iptr[i-1] > iptr[i])) {
-      *optr++ = (@O_TYPE@)1;
+      found = 1;
+      for(int j = 0; j < 10; j++) {
+       if(iptr[i+j] > iptr[i]) {
+         found = 0;
+       }
+      }
+      
+      if(found) {
+       optr[i-1] = (@O_TYPE@)1;
+      }
+      else {
+       optr[i-1] = (@O_TYPE@)0;
+      }
     }
     else {
-      *optr++ = (@O_TYPE@)0;
+      optr[i-1] = (@O_TYPE@)0;
     }
   }
   return noutput_items;





reply via email to

[Prev in Thread] Current Thread [Next in Thread]