summaryrefslogtreecommitdiff
path: root/gr-qtgui/lib/freq_sink_c_impl.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gr-qtgui/lib/freq_sink_c_impl.cc')
-rw-r--r--gr-qtgui/lib/freq_sink_c_impl.cc14
1 files changed, 12 insertions, 2 deletions
diff --git a/gr-qtgui/lib/freq_sink_c_impl.cc b/gr-qtgui/lib/freq_sink_c_impl.cc
index 48fd681b74..8ba0c67bc3 100644
--- a/gr-qtgui/lib/freq_sink_c_impl.cc
+++ b/gr-qtgui/lib/freq_sink_c_impl.cc
@@ -20,6 +20,9 @@
#include <qwt_symbol.h>
#include <volk/volk.h>
+#include <boost/range/adaptor/transformed.hpp>
+#include <boost/range/numeric.hpp>
+
#include <string.h>
#include <algorithm>
@@ -51,7 +54,8 @@ freq_sink_c_impl::freq_sink_c_impl(int fftsize,
d_fftsize(fftsize),
d_fft_shift(fftsize),
d_fftavg(1.0),
- d_wintype((fft::window::win_type)(wintype)),
+ d_wintype((fft::window::win_type)(wintype & 0xFF)),
+ d_window_normalize(wintype & (1 << 15)),
d_center_freq(fc),
d_bandwidth(bw),
d_name(name),
@@ -208,6 +212,12 @@ void freq_sink_c_impl::set_fft_window(const fft::window::win_type win)
fft::window::win_type freq_sink_c_impl::fft_window() { return d_wintype; }
+void freq_sink_c_impl::set_fft_window_normalized(const bool enable)
+{
+ d_window_normalize = enable;
+ buildwindow();
+}
+
void freq_sink_c_impl::set_frequency_range(const double centerfreq,
const double bandwidth)
{
@@ -408,7 +418,7 @@ void freq_sink_c_impl::buildwindow()
{
d_window.clear();
if (d_wintype != fft::window::WIN_NONE) {
- d_window = fft::window::build(d_wintype, d_fftsize);
+ d_window = fft::window::build(d_wintype, d_fftsize, 6.76, d_window_normalize);
}
}