commit-gnuradio
[Top][All Lists]
Advanced

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

[Commit-gnuradio] r9711 - gnuradio/branches/developers/n4hy/pfb_fbs/gnur


From: n4hy
Subject: [Commit-gnuradio] r9711 - gnuradio/branches/developers/n4hy/pfb_fbs/gnuradio-core/src/lib/general
Date: Sat, 4 Oct 2008 12:31:52 -0600 (MDT)

Author: n4hy
Date: 2008-10-04 12:31:50 -0600 (Sat, 04 Oct 2008)
New Revision: 9711

Modified:
   
gnuradio/branches/developers/n4hy/pfb_fbs/gnuradio-core/src/lib/general/gr_fmdet_cf.cc
   
gnuradio/branches/developers/n4hy/pfb_fbs/gnuradio-core/src/lib/general/gr_fmdet_cf.h
Log:
Move work function delay copying to stack

Modified: 
gnuradio/branches/developers/n4hy/pfb_fbs/gnuradio-core/src/lib/general/gr_fmdet_cf.cc
===================================================================
--- 
gnuradio/branches/developers/n4hy/pfb_fbs/gnuradio-core/src/lib/general/gr_fmdet_cf.cc
      2008-10-04 18:25:28 UTC (rev 9710)
+++ 
gnuradio/branches/developers/n4hy/pfb_fbs/gnuradio-core/src/lib/general/gr_fmdet_cf.cc
      2008-10-04 18:31:50 UTC (rev 9711)
@@ -43,7 +43,7 @@
   : gr_sync_block ("fmdet_cf",
                   gr_make_io_signature (1, 1, sizeof (gr_complex)),
                   gr_make_io_signature (1, 1, sizeof (float))),
-    d_S0(0),d_S1(0),d_S2(0),
+    d_S1(0),d_S2(0),
     d_S3(0),d_S4(0),d_twelveDeltaT(12.0/samplerate)
 
 {
@@ -61,25 +61,29 @@
 
   int  size = noutput_items;
 
-  gr_complex Sdot;
+  gr_complex Sdot,S0,S1=d_S1,S2=d_S2,S3=d_S3,S4=d_S4;
 
   while (size-- > 0) {
-    d_S0=*iptr++;
+    S0=*iptr++;
 
     Sdot = gr_complex(d_twelveDeltaT*
-                     (-d_S0.real() + 8.0*d_S1.real() - 8.0*d_S3.real() + 
d_S4.real()),
+                     (-S0.real() + 8.0*S1.real() - 8.0*S3.real() + S4.real()),
                      d_twelveDeltaT*
-                     (-d_S0.imag() + 8.0*d_S1.imag() - 8.0*d_S3.imag() + 
d_S4.imag()));
-    d_freq = (d_S2.real()*Sdot.imag()-d_S2.imag()*Sdot.real())/
-      (d_S2.real()*d_S2.real()+d_S2.imag()*d_S2.imag());
+                     (-S0.imag() + 8.0*S1.imag() - 8.0*S3.imag() + S4.imag()));
+    d_freq = (S2.real()*Sdot.imag()-S2.imag()*Sdot.real())/
+      (S2.real()*S2.real()+S2.imag()*S2.imag());
 
-    d_S4=d_S3;
-    d_S3=d_S2;
-    d_S2=d_S1;
-    d_S1=d_S0;
+    S4=S3;
+    S3=S2;
+    S2=S1;
+    S1=S0;
 
     
     *optr++ = d_freq;
   }
+  d_S1=S1;
+  d_S2=S2;
+  d_S3=S3;
+  d_S4=S4;
   return noutput_items;
 }

Modified: 
gnuradio/branches/developers/n4hy/pfb_fbs/gnuradio-core/src/lib/general/gr_fmdet_cf.h
===================================================================
--- 
gnuradio/branches/developers/n4hy/pfb_fbs/gnuradio-core/src/lib/general/gr_fmdet_cf.h
       2008-10-04 18:25:28 UTC (rev 9710)
+++ 
gnuradio/branches/developers/n4hy/pfb_fbs/gnuradio-core/src/lib/general/gr_fmdet_cf.h
       2008-10-04 18:31:50 UTC (rev 9711)
@@ -44,7 +44,7 @@
 {
   friend gr_fmdet_cf_sptr gr_make_fmdet_cf (float samplerate);
 
-  gr_complex d_S0,d_S1,d_S2,d_S3,d_S4;
+  gr_complex d_S1,d_S2,d_S3,d_S4;
   float d_freq,d_twelveDeltaT;
   gr_fmdet_cf (float samplerate);
 





reply via email to

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