summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnuradio-core/src/lib/general/gri_fft.cc8
-rw-r--r--grc/blocks/Makefile.am1
-rw-r--r--grc/blocks/block_tree.xml1
-rw-r--r--grc/blocks/gr_and_const_xx.xml48
4 files changed, 56 insertions, 2 deletions
diff --git a/gnuradio-core/src/lib/general/gri_fft.cc b/gnuradio-core/src/lib/general/gri_fft.cc
index e535f28c7..1ce14eefd 100644
--- a/gnuradio-core/src/lib/general/gri_fft.cc
+++ b/gnuradio-core/src/lib/general/gri_fft.cc
@@ -28,6 +28,7 @@
#include <stdio.h>
#include <cassert>
#include <stdexcept>
+#include <gr_prefs.h>
boost::mutex &
@@ -113,7 +114,9 @@ gri_fft_complex::gri_fft_complex (int fft_size, bool forward)
reinterpret_cast<fftwf_complex *>(d_inbuf),
reinterpret_cast<fftwf_complex *>(d_outbuf),
forward ? FFTW_FORWARD : FFTW_BACKWARD,
- FFTW_MEASURE);
+ gr_prefs::singleton()->get_bool("fftw", "estimate", false) == true ? FFTW_ESTIMATE
+ : FFTW_MEASURE);
+
if (d_plan == NULL) {
fprintf(stderr, "gri_fft_complex: error creating plan\n");
@@ -165,7 +168,8 @@ gri_fft_real_fwd::gri_fft_real_fwd (int fft_size)
d_plan = fftwf_plan_dft_r2c_1d (fft_size,
d_inbuf,
reinterpret_cast<fftwf_complex *>(d_outbuf),
- FFTW_MEASURE);
+ gr_prefs::singleton()->get_bool("fftw", "estimate", false) == true ? FFTW_ESTIMATE
+ : FFTW_MEASURE);
if (d_plan == NULL) {
fprintf(stderr, "gri_fft_real_fwd: error creating plan\n");
diff --git a/grc/blocks/Makefile.am b/grc/blocks/Makefile.am
index 2596eae45..18420a013 100644
--- a/grc/blocks/Makefile.am
+++ b/grc/blocks/Makefile.am
@@ -71,6 +71,7 @@ dist_ourdata_DATA = \
gr_agc2_xx.xml \
gr_agc_xx.xml \
gr_and_xx.xml \
+ gr_and_const_xx.xml \
gr_argmax_xx.xml \
gr_binary_slicer_fb.xml \
gr_channel_model.xml \
diff --git a/grc/blocks/block_tree.xml b/grc/blocks/block_tree.xml
index 8d91258e5..610a88102 100644
--- a/grc/blocks/block_tree.xml
+++ b/grc/blocks/block_tree.xml
@@ -58,6 +58,7 @@
<block>gr_add_const_vxx</block>
<block>gr_multiply_const_vxx</block>
+ <block>gr_and_const_xx</block>
<block>gr_not_xx</block>
<block>gr_and_xx</block>
diff --git a/grc/blocks/gr_and_const_xx.xml b/grc/blocks/gr_and_const_xx.xml
new file mode 100644
index 000000000..dc9649311
--- /dev/null
+++ b/grc/blocks/gr_and_const_xx.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0"?>
+<!--
+###################################################
+## And Const Block:
+## all types, 1 output, 1 input & const
+###################################################
+ -->
+<block>
+ <name>And Const</name>
+ <key>gr_and_const_xx</key>
+ <import>from gnuradio import gr</import>
+ <make>gr.and_const_$(type.fcn)($const)</make>
+ <callback>set_k($const)</callback>
+ <param>
+ <name>IO Type</name>
+ <key>type</key>
+ <type>enum</type>
+ <option>
+ <name>Int</name>
+ <key>int</key>
+ <opt>fcn:ii</opt>
+ </option>
+ <option>
+ <name>Short</name>
+ <key>short</key>
+ <opt>fcn:ss</opt>
+ </option>
+ <option>
+ <name>Byte</name>
+ <key>byte</key>
+ <opt>fcn:bb</opt>
+ </option>
+ </param>
+ <param>
+ <name>Constant</name>
+ <key>const</key>
+ <value>0</value>
+ <type>int</type>
+ </param>
+ <sink>
+ <name>in</name>
+ <type>$type</type>
+ </sink>
+ <source>
+ <name>out</name>
+ <type>$type</type>
+ </source>
+</block>