summaryrefslogtreecommitdiff
path: root/gr-digital/swig
diff options
context:
space:
mode:
authorJosh Blum <josh@joshknows.com>2011-08-17 11:56:33 -0700
committerJosh Blum <josh@joshknows.com>2011-08-17 11:56:33 -0700
commite6ed4fa7bb0d253adbf0cf2ae4da7c301b3c971f (patch)
tree09f43f64f581af7b5159debaf7489365b0a1259d /gr-digital/swig
parent40a9071074b2ec0f6daf74e50e131b89b9f66226 (diff)
parented564be6c78a3e22b3c98862834192f8b20bc551 (diff)
Merge branch 'digital' of https://github.com/trondeau/gnuradio into digital
Conflicts: gnuradio-core/src/lib/filter/gr_pfb_clock_sync_ccf.h gnuradio-core/src/lib/general/gr_fll_band_edge_cc.h gnuradio-core/src/lib/general/gr_pll_refout_cc.h gr-digital/lib/digital_constellation_receiver_cb.cc gr-digital/lib/digital_constellation_receiver_cb.h gr-digital/lib/digital_costas_loop_cc.h
Diffstat (limited to 'gr-digital/swig')
-rw-r--r--gr-digital/swig/CMakeLists.txt1
-rw-r--r--gr-digital/swig/Makefile.am1
-rw-r--r--gr-digital/swig/digital_constellation_receiver_cb.i27
-rw-r--r--gr-digital/swig/digital_costas_loop_cc.i17
-rw-r--r--gr-digital/swig/digital_fll_band_edge_cc.i60
-rw-r--r--gr-digital/swig/digital_swig.i4
6 files changed, 84 insertions, 26 deletions
diff --git a/gr-digital/swig/CMakeLists.txt b/gr-digital/swig/CMakeLists.txt
index 037c0a3f19..b62c024e06 100644
--- a/gr-digital/swig/CMakeLists.txt
+++ b/gr-digital/swig/CMakeLists.txt
@@ -50,6 +50,7 @@ INSTALL(
digital_costas_loop_cc.i
digital_cma_equalizer_cc.i
digital_crc32.i
+ digital_fll_band_edge_cc.i
digital_lms_dd_equalizer_cc.i
digital_kurtotic_equalizer_cc.i
digital_mpsk_receiver_cc.i
diff --git a/gr-digital/swig/Makefile.am b/gr-digital/swig/Makefile.am
index 08fb140acd..c0d28c24c6 100644
--- a/gr-digital/swig/Makefile.am
+++ b/gr-digital/swig/Makefile.am
@@ -68,6 +68,7 @@ digital_swig_swiginclude_headers = \
digital_costas_loop_cc.i \
digital_cma_equalizer_cc.i \
digital_crc32.i \
+ digital_fll_band_edge_cc.i \
digital_lms_dd_equalizer_cc.i \
digital_kurtotic_equalizer_cc.i \
digital_mpsk_receiver_cc.i
diff --git a/gr-digital/swig/digital_constellation_receiver_cb.i b/gr-digital/swig/digital_constellation_receiver_cb.i
index ad17ef3713..e4be5f39f1 100644
--- a/gr-digital/swig/digital_constellation_receiver_cb.i
+++ b/gr-digital/swig/digital_constellation_receiver_cb.i
@@ -26,22 +26,25 @@ GR_SWIG_BLOCK_MAGIC(digital,constellation_receiver_cb);
digital_constellation_receiver_cb_sptr
digital_make_constellation_receiver_cb (digital_constellation_sptr constellation,
- float alpha, float beta,
- float fmin, float fmax);
+ float loop_bw, float fmin, float fmax);
class digital_constellation_receiver_cb : public gr_block
{
private:
digital_constellation_receiver_cb (digital_contellation_sptr constellation,
- float alpha, float beta,
- float fmin, float fmax);
+ float loop_bw, float fmin, float fmax);
public:
- float alpha() const { return d_alpha; }
- float beta() const { return d_beta; }
- float freq() const { return d_freq; }
- float phase() const { return d_phase; }
- void set_alpha(float alpha) { d_alpha = alpha; }
- void set_beta(float beta) { d_beta = beta; }
- void set_freq(float freq) { d_freq = freq; }
- void set_phase(float phase) { d_phase = phase; }
+ void set_loop_bandwidth(float bw);
+ void set_damping_factor(float df);
+ void set_alpha(float alpha);
+ void set_beta(float beta);
+ void set_frequency(float freq);
+ void set_phase(float phase);
+
+ float get_loop_bandwidth() const;
+ float get_damping_factor() const;
+ float get_alpha() const;
+ float get_beta() const;
+ float get_frequency() const;
+ float get_phase() const;
};
diff --git a/gr-digital/swig/digital_costas_loop_cc.i b/gr-digital/swig/digital_costas_loop_cc.i
index 6d3d009f8a..ab09200a0a 100644
--- a/gr-digital/swig/digital_costas_loop_cc.i
+++ b/gr-digital/swig/digital_costas_loop_cc.i
@@ -23,22 +23,11 @@
GR_SWIG_BLOCK_MAGIC(digital,costas_loop_cc);
digital_costas_loop_cc_sptr
-digital_make_costas_loop_cc (float damping, float nat_freq,
- int order
+digital_make_costas_loop_cc (float loop_bw, int order
) throw (std::invalid_argument);
-
-class digital_costas_loop_cc : public gr_sync_block
+class digital_costas_loop_cc : public gr_sync_block, public gri_control_loop
{
private:
- digital_costas_loop_cc (float damping, float nat_freq,
- int order);
-
- public:
- float alpha();
- float beta();
- float freq();
-
- void set_natural_freq(float w);
- void set_damping_factor(float eta);
+ digital_costas_loop_cc (float loop_bw, int order);
};
diff --git a/gr-digital/swig/digital_fll_band_edge_cc.i b/gr-digital/swig/digital_fll_band_edge_cc.i
new file mode 100644
index 0000000000..f022bc7e18
--- /dev/null
+++ b/gr-digital/swig/digital_fll_band_edge_cc.i
@@ -0,0 +1,60 @@
+/* -*- c++ -*- */
+/*
+ * Copyright 2009,2011 Free Software Foundation, Inc.
+ *
+ * This file is part of GNU Radio
+ *
+ * GNU Radio is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 3, or (at your option)
+ * any later version.
+ *
+ * GNU Radio is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GNU Radio; see the file COPYING. If not, write to
+ * the Free Software Foundation, Inc., 51 Franklin Street,
+ * Boston, MA 02110-1301, USA.
+ */
+
+GR_SWIG_BLOCK_MAGIC(digital,fll_band_edge_cc);
+
+digital_fll_band_edge_cc_sptr digital_make_fll_band_edge_cc (float samps_per_sym,
+ float rolloff,
+ int filter_size,
+ float bandwidth);
+
+class digital_fll_band_edge_cc : public gr_sync_block
+{
+ private:
+ digital_fll_band_edge_cc (float samps_per_sym, float rolloff,
+ int filter_size, float bandwidth);
+
+ public:
+ ~digital_fll_band_edge_cc ();
+
+ void set_loop_bandwidth(float bw);
+ void set_damping_factor(float df);
+ void set_alpha(float alpha);
+ void set_beta(float beta);
+ void set_samples_per_symbol(float sps);
+ void set_rolloff(float rolloff);
+ void set_filter_size(int filter_size);
+ void set_frequency(float freq);
+ void set_phase(float phase);
+
+ float get_loop_bandwidth() const;
+ float get_damping_factor() const;
+ float get_alpha() const;
+ float get_beta() const;
+ float get_samples_per_symbol() const;
+ float get_rolloff() const;
+ int get_filter_size() const;
+ float get_frequency() const;
+ float get_phase() const;
+
+ void print_taps();
+};
diff --git a/gr-digital/swig/digital_swig.i b/gr-digital/swig/digital_swig.i
index cfaadcaea4..0328ca2fcc 100644
--- a/gr-digital/swig/digital_swig.i
+++ b/gr-digital/swig/digital_swig.i
@@ -21,6 +21,8 @@
%include "gnuradio.i"
+%include <gri_control_loop.i>
+
%{
#include "digital_binary_slicer_fb.h"
#include "digital_clock_recovery_mm_cc.h"
@@ -32,6 +34,7 @@
#include "digital_correlate_access_code_bb.h"
#include "digital_costas_loop_cc.h"
#include "digital_crc32.h"
+#include "digital_fll_band_edge_cc.h"
#include "digital_kurtotic_equalizer_cc.h"
#include "digital_lms_dd_equalizer_cc.h"
#include "digital_mpsk_receiver_cc.h"
@@ -47,6 +50,7 @@
%include "digital_correlate_access_code_bb.i"
%include "digital_costas_loop_cc.i"
%include "digital_crc32.i"
+%include "digital_fll_band_edge_cc.i"
%include "digital_kurtotic_equalizer_cc.i"
%include "digital_lms_dd_equalizer_cc.i"
%include "digital_mpsk_receiver_cc.i"