commit-gnuradio
[Top][All Lists]
Advanced

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

[Commit-gnuradio] r9839 - gnuradio/branches/developers/eb/frank/gnuradio


From: eb
Subject: [Commit-gnuradio] r9839 - gnuradio/branches/developers/eb/frank/gnuradio-core/src/lib/general
Date: Sat, 25 Oct 2008 14:49:58 -0600 (MDT)

Author: eb
Date: 2008-10-25 14:49:55 -0600 (Sat, 25 Oct 2008)
New Revision: 9839

Modified:
   
gnuradio/branches/developers/eb/frank/gnuradio-core/src/lib/general/gr_squash_ff.cc
   
gnuradio/branches/developers/eb/frank/gnuradio-core/src/lib/general/gr_stretch_ff.cc
   
gnuradio/branches/developers/eb/frank/gnuradio-core/src/lib/general/gr_wavelet_ff.cc
   
gnuradio/branches/developers/eb/frank/gnuradio-core/src/lib/general/gr_wavelet_ff.h
   
gnuradio/branches/developers/eb/frank/gnuradio-core/src/lib/general/gr_wvps_ff.cc
Log:
backed out [9836] except mods to qa_classify.py

Modified: 
gnuradio/branches/developers/eb/frank/gnuradio-core/src/lib/general/gr_squash_ff.cc
===================================================================
--- 
gnuradio/branches/developers/eb/frank/gnuradio-core/src/lib/general/gr_squash_ff.cc
 2008-10-25 20:13:54 UTC (rev 9838)
+++ 
gnuradio/branches/developers/eb/frank/gnuradio-core/src/lib/general/gr_squash_ff.cc
 2008-10-25 20:49:55 UTC (rev 9839)
@@ -38,31 +38,11 @@
   return gr_squash_ff_sptr(new gr_squash_ff(igrid, ogrid));
 }
 
-// gr_squash_ff::gr_squash_ff(const std::vector<float> &igrid,
-//                        const std::vector<float> &ogrid)
-//   : gr_sync_block("squash_ff",
-//               gr_make_io_signature(1, 1, sizeof(float) * igrid.size()),
-//               gr_make_io_signature(1, 1, sizeof(float) * ogrid.size()))
-// {
-//   d_inum  = igrid.size();
-//   d_onum  = ogrid.size();
-//   d_igrid = (double *) malloc(d_inum * sizeof(double));
-//   d_iwork = (double *) malloc(d_inum * sizeof(double));
-//   d_ogrid = (double *) malloc(d_onum * sizeof(double));
-//   for (int i = 0; i < d_inum; i++)
-//     d_igrid[i] = igrid[i];
-//   for (int i = 0; i < d_onum; i++)
-//     d_ogrid[i] = ogrid[i];
-
-//   d_accel = gsl_interp_accel_alloc();
-//   d_spline = gsl_spline_alloc(gsl_interp_cspline, d_inum);  // FIXME check 
w/ Frank
-// }
-
 gr_squash_ff::gr_squash_ff(const std::vector<float> &igrid,
                           const std::vector<float> &ogrid)
   : gr_sync_block("squash_ff",
-                 gr_make_io_signature(1, 1, sizeof(float)),
-                 gr_make_io_signature(1, 1, sizeof(float)))
+                 gr_make_io_signature(1, 1, sizeof(float) * igrid.size()),
+                 gr_make_io_signature(1, 1, sizeof(float) * ogrid.size()))
 {
   d_inum  = igrid.size();
   d_onum  = ogrid.size();

Modified: 
gnuradio/branches/developers/eb/frank/gnuradio-core/src/lib/general/gr_stretch_ff.cc
===================================================================
--- 
gnuradio/branches/developers/eb/frank/gnuradio-core/src/lib/general/gr_stretch_ff.cc
        2008-10-25 20:13:54 UTC (rev 9838)
+++ 
gnuradio/branches/developers/eb/frank/gnuradio-core/src/lib/general/gr_stretch_ff.cc
        2008-10-25 20:49:55 UTC (rev 9839)
@@ -33,18 +33,10 @@
   return gr_stretch_ff_sptr(new gr_stretch_ff(lo, vlen));
 }
 
-// gr_stretch_ff::gr_stretch_ff(float lo, size_t vlen)
-//   : gr_sync_block("stretch_ff",
-//               gr_make_io_signature(1, 1, vlen * sizeof(float)),
-//               gr_make_io_signature(1, 1, vlen * sizeof(float))),
-//     d_lo(lo), d_vlen(vlen)
-// {
-// }
-
 gr_stretch_ff::gr_stretch_ff(float lo, size_t vlen)
   : gr_sync_block("stretch_ff",
-                 gr_make_io_signature(1, 1, sizeof(float)),
-                 gr_make_io_signature(1, 1, sizeof(float))),
+                 gr_make_io_signature(1, 1, vlen * sizeof(float)),
+                 gr_make_io_signature(1, 1, vlen * sizeof(float))),
     d_lo(lo), d_vlen(vlen)
 {
 }

Modified: 
gnuradio/branches/developers/eb/frank/gnuradio-core/src/lib/general/gr_wavelet_ff.cc
===================================================================
--- 
gnuradio/branches/developers/eb/frank/gnuradio-core/src/lib/general/gr_wavelet_ff.cc
        2008-10-25 20:13:54 UTC (rev 9838)
+++ 
gnuradio/branches/developers/eb/frank/gnuradio-core/src/lib/general/gr_wavelet_ff.cc
        2008-10-25 20:49:55 UTC (rev 9839)
@@ -47,8 +47,8 @@
                             int order,
                             bool forward)
   : gr_sync_block("wavelet_ff",
-                 gr_make_io_signature(1, 1, sizeof(float)),
-                 gr_make_io_signature(1, 1, sizeof(float))),
+                 gr_make_io_signature(1, 1, size * sizeof(float)),
+                 gr_make_io_signature(1, 1, size * sizeof(float))),
     d_size(size),
     d_order(order),
     d_forward(forward)
@@ -57,12 +57,9 @@
   if (d_wavelet == NULL)
     throw std::invalid_argument("can't allocate wavelet");
   d_workspace = gsl_wavelet_workspace_alloc(d_size);
-  if (d_workspace == NULL)
-    throw std::invalid_argument("can't allocate wavelet workspace");
   d_temp = (double *) malloc(d_size*sizeof(double));
 }
 
-
 gr_wavelet_ff::~gr_wavelet_ff()
 {
   gsl_wavelet_free(d_wavelet);
@@ -78,24 +75,29 @@
   const float *in  = (const float *) input_items[0];
   float       *out = (float *) output_items[0];
 
-  for (int i = 0; i < d_size; i++)
-    d_temp[i] = in[i];
+  for (int count = 0; count < noutput_items; count++) {
+    for (int i = 0; i < d_size; i++)
+      d_temp[i] = in[i];
     
-  if (d_forward)
-    gsl_wavelet_transform_forward(d_wavelet,
-                                 d_temp,
-                                 1,
-                                 d_size,
-                                 d_workspace);
-  else
-    gsl_wavelet_transform_inverse(d_wavelet,
-                                 d_temp,
-                                 1,
-                                 d_size,
-                                 d_workspace);
+    if (d_forward)
+      gsl_wavelet_transform_forward(d_wavelet,
+                                   d_temp,
+                                   1,
+                                   d_size,
+                                   d_workspace);
+    else
+      gsl_wavelet_transform_inverse(d_wavelet,
+                                   d_temp,
+                                   1,
+                                   d_size,
+                                   d_workspace);
     
-  for (int i = 0; i < noutput_items; i++)
-    out[i] = d_temp[i];
+    for (int i = 0; i < noutput_items; i++)
+      out[i] = d_temp[i];
 
+    in  += d_size;
+    out += d_size;
+  }
+
   return noutput_items;
 }

Modified: 
gnuradio/branches/developers/eb/frank/gnuradio-core/src/lib/general/gr_wavelet_ff.h
===================================================================
--- 
gnuradio/branches/developers/eb/frank/gnuradio-core/src/lib/general/gr_wavelet_ff.h
 2008-10-25 20:13:54 UTC (rev 9838)
+++ 
gnuradio/branches/developers/eb/frank/gnuradio-core/src/lib/general/gr_wavelet_ff.h
 2008-10-25 20:49:55 UTC (rev 9839)
@@ -62,9 +62,9 @@
 public:
   ~gr_wavelet_ff();
 
-  int work(int noutput_items,
-          gr_vector_const_void_star &input_items,
-          gr_vector_void_star &output_items);
+  int work (int noutput_items,
+           gr_vector_const_void_star &input_items,
+           gr_vector_void_star &output_items);
 };
 
 #endif /* INCLUDED_GR_WAVELET_FF_H */

Modified: 
gnuradio/branches/developers/eb/frank/gnuradio-core/src/lib/general/gr_wvps_ff.cc
===================================================================
--- 
gnuradio/branches/developers/eb/frank/gnuradio-core/src/lib/general/gr_wvps_ff.cc
   2008-10-25 20:13:54 UTC (rev 9838)
+++ 
gnuradio/branches/developers/eb/frank/gnuradio-core/src/lib/general/gr_wvps_ff.cc
   2008-10-25 20:49:55 UTC (rev 9839)
@@ -44,8 +44,8 @@
 
 gr_wvps_ff::gr_wvps_ff(int ilen)
   : gr_sync_block("wvps_ff",
-                 gr_make_io_signature(1, 1, sizeof(float)),
-                 gr_make_io_signature(1, 1, sizeof(float))),
+                 gr_make_io_signature(1, 1, sizeof(float) * ilen),
+                 gr_make_io_signature(1, 1, sizeof(float) * np2(ilen))),
     d_ilen(ilen)
 {
   d_olen = np2(d_ilen);





reply via email to

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