summaryrefslogtreecommitdiff
path: root/gr-qtgui
diff options
context:
space:
mode:
authorTom Rondeau <trondeau@vt.edu>2012-07-24 09:48:06 -0400
committerTom Rondeau <trondeau@vt.edu>2012-07-24 09:53:02 -0400
commit303489b78f95b6b3e6cd80a466c141fafecd4191 (patch)
tree8adf6bb239641b7a425ea0afd94b6ab360c81636 /gr-qtgui
parentbe72d11e4ef89e78863c3244be8e360fb71c5477 (diff)
qtgui: fixing up sinks to make sure buffers are properly zeroed and right number of items is returned.
Diffstat (limited to 'gr-qtgui')
-rw-r--r--gr-qtgui/lib/const_sink_c_impl.cc2
-rw-r--r--gr-qtgui/lib/freq_sink_c_impl.cc11
-rw-r--r--gr-qtgui/lib/freq_sink_f_impl.cc8
-rw-r--r--gr-qtgui/lib/time_sink_c_impl.cc1
-rw-r--r--gr-qtgui/lib/time_sink_f_impl.cc1
5 files changed, 19 insertions, 4 deletions
diff --git a/gr-qtgui/lib/const_sink_c_impl.cc b/gr-qtgui/lib/const_sink_c_impl.cc
index 48c3c46bd1..8ba229b757 100644
--- a/gr-qtgui/lib/const_sink_c_impl.cc
+++ b/gr-qtgui/lib/const_sink_c_impl.cc
@@ -60,6 +60,8 @@ namespace gr {
for(int i = 0; i < d_nconnections; i++) {
d_residbufs_real.push_back(fft::malloc_double(d_size));
d_residbufs_imag.push_back(fft::malloc_double(d_size));
+ memset(d_residbufs_real[i], 0, d_size*sizeof(double));
+ memset(d_residbufs_imag[i], 0, d_size*sizeof(double));
}
// Set alignment properties for VOLK
diff --git a/gr-qtgui/lib/freq_sink_c_impl.cc b/gr-qtgui/lib/freq_sink_c_impl.cc
index 45c5a013c9..cf5c989c09 100644
--- a/gr-qtgui/lib/freq_sink_c_impl.cc
+++ b/gr-qtgui/lib/freq_sink_c_impl.cc
@@ -67,11 +67,15 @@ namespace gr {
d_fft = new fft::fft_complex(d_fftsize, true);
d_fbuf = fft::malloc_float(d_fftsize);
+ memset(d_fbuf, 0, d_fftsize*sizeof(float));
d_index = 0;
for(int i = 0; i < d_nconnections; i++) {
d_residbufs.push_back(fft::malloc_complex(d_fftsize));
d_magbufs.push_back(fft::malloc_double(d_fftsize));
+
+ memset(d_residbufs[i], 0, d_fftsize*sizeof(gr_complex));
+ memset(d_magbufs[i], 0, d_fftsize*sizeof(double));
}
buildwindow();
@@ -86,7 +90,7 @@ namespace gr {
fft::free(d_magbufs[i]);
}
delete d_fft;
- delete d_fbuf;
+ fft::free(d_fbuf);
}
void
@@ -292,6 +296,7 @@ namespace gr {
d_residbufs[i] = fft::malloc_complex(newfftsize);
d_magbufs[i] = fft::malloc_double(newfftsize);
+ memset(d_residbufs[i], 0, newfftsize*sizeof(gr_complex));
memset(d_magbufs[i], 0, newfftsize*sizeof(double));
}
@@ -309,6 +314,7 @@ namespace gr {
fft::free(d_fbuf);
d_fbuf = fft::malloc_float(d_fftsize);
+ memset(d_fbuf, 0, d_fftsize*sizeof(float));
}
}
@@ -340,7 +346,6 @@ namespace gr {
for(int x = 0; x < d_fftsize; x++) {
d_magbufs[n][x] = (double)((1.0-d_fftavg)*d_magbufs[n][x] + (d_fftavg)*d_fbuf[x]);
}
-
//volk_32f_convert_64f_a(d_magbufs[n], d_fbuf, d_fftsize);
}
@@ -364,7 +369,7 @@ namespace gr {
}
}
- return noutput_items;
+ return j;
}
} /* namespace qtgui */
diff --git a/gr-qtgui/lib/freq_sink_f_impl.cc b/gr-qtgui/lib/freq_sink_f_impl.cc
index 71c2c5e8b7..6ca9137bff 100644
--- a/gr-qtgui/lib/freq_sink_f_impl.cc
+++ b/gr-qtgui/lib/freq_sink_f_impl.cc
@@ -67,11 +67,15 @@ namespace gr {
d_fft = new fft::fft_complex(d_fftsize, true);
d_fbuf = fft::malloc_float(d_fftsize);
+ memset(d_fbuf, 0, d_fftsize*sizeof(float));
d_index = 0;
for(int i = 0; i < d_nconnections; i++) {
d_residbufs.push_back(fft::malloc_float(d_fftsize));
d_magbufs.push_back(fft::malloc_double(d_fftsize));
+
+ memset(d_residbufs[i], 0, d_fftsize*sizeof(float));
+ memset(d_magbufs[i], 0, d_fftsize*sizeof(double));
}
buildwindow();
@@ -288,6 +292,7 @@ namespace gr {
d_residbufs[i] = fft::malloc_float(newfftsize);
d_magbufs[i] = fft::malloc_double(newfftsize);
+ memset(d_residbufs[i], 0, newfftsize*sizeof(float));
memset(d_magbufs[i], 0, newfftsize*sizeof(double));
}
@@ -305,6 +310,7 @@ namespace gr {
fft::free(d_fbuf);
d_fbuf = fft::malloc_float(d_fftsize);
+ memset(d_fbuf, 0, d_fftsize*sizeof(float));
}
}
@@ -359,7 +365,7 @@ namespace gr {
}
}
- return noutput_items;
+ return j;
}
} /* namespace qtgui */
diff --git a/gr-qtgui/lib/time_sink_c_impl.cc b/gr-qtgui/lib/time_sink_c_impl.cc
index bd7ce91dcc..44e4942082 100644
--- a/gr-qtgui/lib/time_sink_c_impl.cc
+++ b/gr-qtgui/lib/time_sink_c_impl.cc
@@ -59,6 +59,7 @@ namespace gr {
for(int i = 0; i < d_nconnections; i++) {
d_residbufs.push_back(fft::malloc_double(d_size));
+ memset(d_residbufs[i], 0, d_size*sizeof(double));
}
// Set alignment properties for VOLK
diff --git a/gr-qtgui/lib/time_sink_f_impl.cc b/gr-qtgui/lib/time_sink_f_impl.cc
index ccba46fdcb..662621bafd 100644
--- a/gr-qtgui/lib/time_sink_f_impl.cc
+++ b/gr-qtgui/lib/time_sink_f_impl.cc
@@ -59,6 +59,7 @@ namespace gr {
for(int i = 0; i < d_nconnections; i++) {
d_residbufs.push_back(fft::malloc_double(d_size));
+ memset(d_residbufs[i], 0, d_size*sizeof(double));
}
// Set alignment properties for VOLK