diff options
author | Michael Dickens <michael.dickens@ettus.com> | 2016-10-24 12:36:57 -0400 |
---|---|---|
committer | Michael Dickens <michael.dickens@ettus.com> | 2016-10-24 12:36:57 -0400 |
commit | 30a7f3e115019e0e73539393e85a2cf3888537c9 (patch) | |
tree | 04e8cada9b5ca63ff7c40792ed40f3b3f62f265e | |
parent | 5d6799147f1db7ff22b088e81be6db9fde81dc23 (diff) |
digital: split swig into 3 parts (a la blocks/swig) to allow for building on "low memory" systems (e.g., RPi).
-rw-r--r-- | gr-digital/swig/CMakeLists.txt | 87 | ||||
-rw-r--r-- | gr-digital/swig/digital_swig.py.in | 24 | ||||
-rw-r--r-- | gr-digital/swig/digital_swig0.i | 148 | ||||
-rw-r--r-- | gr-digital/swig/digital_swig1.i | 120 | ||||
-rw-r--r-- | gr-digital/swig/digital_swig2.i | 112 |
5 files changed, 313 insertions, 178 deletions
diff --git a/gr-digital/swig/CMakeLists.txt b/gr-digital/swig/CMakeLists.txt index 2f00dc14a3..fb13d3e402 100644 --- a/gr-digital/swig/CMakeLists.txt +++ b/gr-digital/swig/CMakeLists.txt @@ -1,4 +1,4 @@ -# Copyright 2011,2012 Free Software Foundation, Inc. +# Copyright 2011-2016 Free Software Foundation, Inc. # # This file is part of GNU Radio # @@ -24,47 +24,72 @@ include(GrPython) include(GrSwig) set(GR_SWIG_INCLUDE_DIRS - ${GR_DIGITAL_INCLUDE_DIRS} - ${GR_BLOCKS_INCLUDE_DIRS} - ${GR_ANALOG_INCLUDE_DIRS} - ${GR_FFT_INCLUDE_DIRS} - ${GR_FILTER_INCLUDE_DIRS} - ${GNURADIO_RUNTIME_SWIG_INCLUDE_DIRS} - ${VOLK_INCLUDE_DIRS} - ${Boost_INCLUDE_DIRS} + ${GR_DIGITAL_INCLUDE_DIRS} + ${GR_BLOCKS_INCLUDE_DIRS} + ${GR_ANALOG_INCLUDE_DIRS} + ${GR_FFT_INCLUDE_DIRS} + ${GR_FILTER_INCLUDE_DIRS} + ${GNURADIO_RUNTIME_SWIG_INCLUDE_DIRS} + ${VOLK_INCLUDE_DIRS} + ${Boost_INCLUDE_DIRS} ) if(ENABLE_GR_CTRLPORT) list(APPEND GR_SWIG_FLAGS "-DGR_CTRLPORT") endif(ENABLE_GR_CTRLPORT) -# Setup swig docs to depend on includes and pull in from build directory -set(GR_SWIG_TARGET_DEPS digital_generated_includes) -set(GR_SWIG_DOC_FILE ${CMAKE_CURRENT_BINARY_DIR}/digital_swig_doc.i) -set(GR_SWIG_DOC_DIRS +configure_file( + ${CMAKE_CURRENT_SOURCE_DIR}/digital_swig.py.in + ${CMAKE_CURRENT_BINARY_DIR}/digital_swig.py +@ONLY) + +# We split up the swig files into multiple sections to minimize the +# memory overhead. If a .i file grows too large, create a new file +# named 'digital_swigN.i' and add it to this list. +# +# Also add the line "from swig_blocksN import *" line to +# digital_swig.py.in. +set(GR_SWIG_BLOCK_IFILES + digital_swig0 + digital_swig1 + digital_swig2 +) + +foreach(swigfile ${GR_SWIG_BLOCK_IFILES}) + set(GR_SWIG_DOC_FILE ${CMAKE_CURRENT_BINARY_DIR}/${swigfile}_doc.i) + set(GR_SWIG_DOC_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/../include/gnuradio/digital ${CMAKE_CURRENT_BINARY_DIR}/../include/gnuradio/digital -) -set(GR_SWIG_DOCS_TARGET_DEPS runtime_swig_swig_doc) + ) + set(GR_SWIG_DOCS_TARGET_DEPS runtime_swig_swig_doc) + set(GR_SWIG_TARGET_DEPS digital_generated_includes) + set(GR_SWIG_LIBRARIES gnuradio-digital + gnuradio-filter gnuradio-analog gnuradio-blocks) + GR_SWIG_MAKE(${swigfile} ${swigfile}.i) -set(GR_SWIG_LIBRARIES gnuradio-digital - gnuradio-filter gnuradio-analog gnuradio-blocks) + GR_SWIG_INSTALL( + TARGETS ${swigfile} + DESTINATION ${GR_PYTHON_DIR}/gnuradio/digital + COMPONENT "digital_python") -GR_SWIG_MAKE(digital_swig digital_swig.i) + list(APPEND SWIGFILES ${swigfile}.i) + list(APPEND SWIGDOCFILES ${CMAKE_CURRENT_BINARY_DIR}/${swigfile}_doc.i) +endforeach(swigfile) -GR_SWIG_INSTALL( - TARGETS digital_swig - DESTINATION ${GR_PYTHON_DIR}/gnuradio/digital - COMPONENT "digital_python" +install( + FILES + ${SWIGFILES} + constellation.i + ofdm_equalizer.i + packet_header.i + ${SWIGDOCFILES} + DESTINATION ${GR_INCLUDE_DIR}/gnuradio/swig + COMPONENT "digital_swig" ) -install( - FILES - digital_swig.i - constellation.i - ofdm_equalizer.i - packet_header.i - ${CMAKE_CURRENT_BINARY_DIR}/digital_swig_doc.i - DESTINATION ${GR_INCLUDE_DIR}/gnuradio/swig - COMPONENT "digital_swig" +# Install the Python file that pulls in the swig built files. +GR_PYTHON_INSTALL( + FILES ${CMAKE_CURRENT_BINARY_DIR}/digital_swig.py + DESTINATION ${GR_PYTHON_DIR}/gnuradio/digital + COMPONENT "digital_python" ) diff --git a/gr-digital/swig/digital_swig.py.in b/gr-digital/swig/digital_swig.py.in new file mode 100644 index 0000000000..d5d55a0f4e --- /dev/null +++ b/gr-digital/swig/digital_swig.py.in @@ -0,0 +1,24 @@ +# +# Copyright 2016 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. +# + +from digital_swig0 import * +from digital_swig1 import * +from digital_swig2 import * diff --git a/gr-digital/swig/digital_swig0.i b/gr-digital/swig/digital_swig0.i index 8a38d65b82..753d0267b9 100644 --- a/gr-digital/swig/digital_swig0.i +++ b/gr-digital/swig/digital_swig0.i @@ -27,7 +27,7 @@ %include "stdint.i" //load generated python docstrings -%include "digital_swig_doc.i" +%include "digital_swig0_doc.i" %include "gnuradio/analog/cpm.h" @@ -37,18 +37,7 @@ %include <gnuradio/blocks/control_loop.h> %{ -#include "gnuradio/digital/additive_scrambler_bb.h" #include "gnuradio/digital/binary_slicer_fb.h" -#include "gnuradio/digital/burst_shaper_cc.h" -#include "gnuradio/digital/burst_shaper_ff.h" -#include "gnuradio/digital/chunks_to_symbols_bc.h" -#include "gnuradio/digital/chunks_to_symbols_bf.h" -#include "gnuradio/digital/chunks_to_symbols_ic.h" -#include "gnuradio/digital/chunks_to_symbols_if.h" -#include "gnuradio/digital/chunks_to_symbols_sc.h" -#include "gnuradio/digital/chunks_to_symbols_sf.h" -#include "gnuradio/digital/clock_recovery_mm_cc.h" -#include "gnuradio/digital/clock_recovery_mm_ff.h" #include "gnuradio/digital/cma_equalizer_cc.h" #include "gnuradio/digital/constellation.h" #include "gnuradio/digital/constellation_decoder_cb.h" @@ -66,26 +55,7 @@ #include "gnuradio/digital/crc32_bb.h" #include "gnuradio/digital/crc32_async_bb.h" #include "gnuradio/digital/descrambler_bb.h" -#include "gnuradio/digital/diff_decoder_bb.h" -#include "gnuradio/digital/diff_encoder_bb.h" -#include "gnuradio/digital/diff_phasor_cc.h" -#include "gnuradio/digital/fll_band_edge_cc.h" -#include "gnuradio/digital/framer_sink_1.h" -#include "gnuradio/digital/glfsr_source_b.h" -#include "gnuradio/digital/glfsr_source_f.h" -#include "gnuradio/digital/hdlc_deframer_bp.h" -#include "gnuradio/digital/hdlc_framer_pb.h" -#include "gnuradio/digital/header_payload_demux.h" -#include "gnuradio/digital/kurtotic_equalizer_cc.h" -#include "gnuradio/digital/lfsr.h" #include "gnuradio/digital/lms_dd_equalizer_cc.h" -#include "gnuradio/digital/map_bb.h" -#include "gnuradio/digital/metric_type.h" -#include "gnuradio/digital/modulate_vector.h" -#include "gnuradio/digital/mpsk_receiver_cc.h" -#include "gnuradio/digital/mpsk_snr_est.h" -#include "gnuradio/digital/mpsk_snr_est_cc.h" -#include "gnuradio/digital/msk_timing_recovery_cc.h" #include "gnuradio/digital/ofdm_carrier_allocator_cvc.h" #include "gnuradio/digital/ofdm_chanest_vcvc.h" #include "gnuradio/digital/ofdm_cyclic_prefixer.h" @@ -100,44 +70,9 @@ #include "gnuradio/digital/ofdm_sampler.h" #include "gnuradio/digital/ofdm_serializer_vcc.h" #include "gnuradio/digital/ofdm_sync_sc_cfb.h" -#include "gnuradio/digital/header_format_base.h" -#include "gnuradio/digital/header_format_default.h" -#include "gnuradio/digital/header_format_counter.h" -#include "gnuradio/digital/header_format_crc.h" -#include "gnuradio/digital/header_format_ofdm.h" -#include "gnuradio/digital/protocol_formatter_async.h" -#include "gnuradio/digital/protocol_formatter_bb.h" -#include "gnuradio/digital/protocol_parser_b.h" -#include "gnuradio/digital/packet_header_default.h" -#include "gnuradio/digital/packet_header_ofdm.h" -#include "gnuradio/digital/packet_headergenerator_bb.h" -#include "gnuradio/digital/packet_headerparser_b.h" -#include "gnuradio/digital/packet_sink.h" -#include "gnuradio/digital/pfb_clock_sync_ccf.h" -#include "gnuradio/digital/pfb_clock_sync_fff.h" -#include "gnuradio/digital/pn_correlator_cc.h" -#include "gnuradio/digital/probe_density_b.h" -#include "gnuradio/digital/probe_mpsk_snr_est_c.h" -#include "gnuradio/digital/scrambler_bb.h" -#include "gnuradio/digital/simple_correlator.h" -#include "gnuradio/digital/simple_framer.h" -#include "gnuradio/digital/ofdm_serializer_vcc.h" -#include "gnuradio/digital/packet_headerparser_b.h" -#include "gnuradio/digital/header_payload_demux.h" %} -%include "gnuradio/digital/additive_scrambler_bb.h" %include "gnuradio/digital/binary_slicer_fb.h" -%include "gnuradio/digital/burst_shaper_cc.h" -%include "gnuradio/digital/burst_shaper_ff.h" -%include "gnuradio/digital/chunks_to_symbols_bc.h" -%include "gnuradio/digital/chunks_to_symbols_bf.h" -%include "gnuradio/digital/chunks_to_symbols_ic.h" -%include "gnuradio/digital/chunks_to_symbols_if.h" -%include "gnuradio/digital/chunks_to_symbols_sc.h" -%include "gnuradio/digital/chunks_to_symbols_sf.h" -%include "gnuradio/digital/clock_recovery_mm_cc.h" -%include "gnuradio/digital/clock_recovery_mm_ff.h" %include "gnuradio/digital/cma_equalizer_cc.h" %include "gnuradio/digital/constellation.h" %include "gnuradio/digital/constellation_decoder_cb.h" @@ -155,26 +90,7 @@ %include "gnuradio/digital/crc32_bb.h" %include "gnuradio/digital/crc32_async_bb.h" %include "gnuradio/digital/descrambler_bb.h" -%include "gnuradio/digital/diff_decoder_bb.h" -%include "gnuradio/digital/diff_encoder_bb.h" -%include "gnuradio/digital/diff_phasor_cc.h" -%include "gnuradio/digital/fll_band_edge_cc.h" -%include "gnuradio/digital/framer_sink_1.h" -%include "gnuradio/digital/glfsr_source_b.h" -%include "gnuradio/digital/glfsr_source_f.h" -%include "gnuradio/digital/hdlc_deframer_bp.h" -%include "gnuradio/digital/hdlc_framer_pb.h" -%include "gnuradio/digital/header_payload_demux.h" -%include "gnuradio/digital/kurtotic_equalizer_cc.h" -%include "gnuradio/digital/lfsr.h" %include "gnuradio/digital/lms_dd_equalizer_cc.h" -%include "gnuradio/digital/map_bb.h" -%include "gnuradio/digital/metric_type.h" -%include "gnuradio/digital/modulate_vector.h" -%include "gnuradio/digital/mpsk_receiver_cc.h" -%include "gnuradio/digital/mpsk_snr_est.h" -%include "gnuradio/digital/mpsk_snr_est_cc.h" -%include "gnuradio/digital/msk_timing_recovery_cc.h" %include "gnuradio/digital/ofdm_carrier_allocator_cvc.h" %include "gnuradio/digital/ofdm_chanest_vcvc.h" %include "gnuradio/digital/ofdm_cyclic_prefixer.h" @@ -189,40 +105,8 @@ %include "gnuradio/digital/ofdm_sampler.h" %include "gnuradio/digital/ofdm_serializer_vcc.h" %include "gnuradio/digital/ofdm_sync_sc_cfb.h" -%include "gnuradio/digital/header_format_base.h" -%include "gnuradio/digital/header_format_default.h" -%include "gnuradio/digital/header_format_counter.h" -%include "gnuradio/digital/header_format_crc.h" -%include "gnuradio/digital/header_format_ofdm.h" -%include "gnuradio/digital/protocol_formatter_async.h" -%include "gnuradio/digital/protocol_formatter_bb.h" -%include "gnuradio/digital/protocol_parser_b.h" -%include "gnuradio/digital/packet_header_default.h" -%include "gnuradio/digital/packet_header_ofdm.h" -%include "gnuradio/digital/packet_headergenerator_bb.h" -%include "gnuradio/digital/packet_headerparser_b.h" -%include "gnuradio/digital/packet_sink.h" -%include "gnuradio/digital/pfb_clock_sync_ccf.h" -%include "gnuradio/digital/pfb_clock_sync_fff.h" -%include "gnuradio/digital/pn_correlator_cc.h" -%include "gnuradio/digital/probe_density_b.h" -%include "gnuradio/digital/probe_mpsk_snr_est_c.h" -%include "gnuradio/digital/scrambler_bb.h" -%include "gnuradio/digital/simple_correlator.h" -%include "gnuradio/digital/simple_framer.h" -GR_SWIG_BLOCK_MAGIC2(digital, additive_scrambler_bb); GR_SWIG_BLOCK_MAGIC2(digital, binary_slicer_fb); -GR_SWIG_BLOCK_MAGIC2(digital, burst_shaper_cc); -GR_SWIG_BLOCK_MAGIC2(digital, burst_shaper_ff); -GR_SWIG_BLOCK_MAGIC2(digital, chunks_to_symbols_bc); -GR_SWIG_BLOCK_MAGIC2(digital, chunks_to_symbols_bf); -GR_SWIG_BLOCK_MAGIC2(digital, chunks_to_symbols_ic); -GR_SWIG_BLOCK_MAGIC2(digital, chunks_to_symbols_if); -GR_SWIG_BLOCK_MAGIC2(digital, chunks_to_symbols_sc); -GR_SWIG_BLOCK_MAGIC2(digital, chunks_to_symbols_sf); -GR_SWIG_BLOCK_MAGIC2(digital, clock_recovery_mm_cc); -GR_SWIG_BLOCK_MAGIC2(digital, clock_recovery_mm_ff); GR_SWIG_BLOCK_MAGIC2(digital, cma_equalizer_cc); GR_SWIG_BLOCK_MAGIC2(digital, constellation_decoder_cb); GR_SWIG_BLOCK_MAGIC2(digital, constellation_receiver_cb); @@ -238,22 +122,7 @@ GR_SWIG_BLOCK_MAGIC2(digital, crc32_bb); GR_SWIG_BLOCK_MAGIC2(digital, crc32_async_bb); GR_SWIG_BLOCK_MAGIC2(digital, cpmmod_bc); GR_SWIG_BLOCK_MAGIC2(digital, descrambler_bb); -GR_SWIG_BLOCK_MAGIC2(digital, diff_decoder_bb); -GR_SWIG_BLOCK_MAGIC2(digital, diff_encoder_bb); -GR_SWIG_BLOCK_MAGIC2(digital, diff_phasor_cc); -GR_SWIG_BLOCK_MAGIC2(digital, fll_band_edge_cc); -GR_SWIG_BLOCK_MAGIC2(digital, framer_sink_1); -GR_SWIG_BLOCK_MAGIC2(digital, glfsr_source_b); -GR_SWIG_BLOCK_MAGIC2(digital, glfsr_source_f); -GR_SWIG_BLOCK_MAGIC2(digital, hdlc_deframer_bp); -GR_SWIG_BLOCK_MAGIC2(digital, hdlc_framer_pb); -GR_SWIG_BLOCK_MAGIC2(digital, header_payload_demux); -GR_SWIG_BLOCK_MAGIC2(digital, kurtotic_equalizer_cc); GR_SWIG_BLOCK_MAGIC2(digital, lms_dd_equalizer_cc); -GR_SWIG_BLOCK_MAGIC2(digital, map_bb); -GR_SWIG_BLOCK_MAGIC2(digital, mpsk_receiver_cc); -GR_SWIG_BLOCK_MAGIC2(digital, mpsk_snr_est_cc); -GR_SWIG_BLOCK_MAGIC2(digital, msk_timing_recovery_cc); GR_SWIG_BLOCK_MAGIC2(digital, ofdm_carrier_allocator_cvc); GR_SWIG_BLOCK_MAGIC2(digital, ofdm_chanest_vcvc); GR_SWIG_BLOCK_MAGIC2(digital, ofdm_cyclic_prefixer); @@ -265,24 +134,9 @@ GR_SWIG_BLOCK_MAGIC2(digital, ofdm_mapper_bcv); GR_SWIG_BLOCK_MAGIC2(digital, ofdm_sampler); GR_SWIG_BLOCK_MAGIC2(digital, ofdm_serializer_vcc); GR_SWIG_BLOCK_MAGIC2(digital, ofdm_sync_sc_cfb); -GR_SWIG_BLOCK_MAGIC2(digital, protocol_formatter_async); -GR_SWIG_BLOCK_MAGIC2(digital, protocol_formatter_bb); -GR_SWIG_BLOCK_MAGIC2(digital, protocol_parser_b); -GR_SWIG_BLOCK_MAGIC2(digital, packet_headergenerator_bb); -GR_SWIG_BLOCK_MAGIC2(digital, packet_headerparser_b); -GR_SWIG_BLOCK_MAGIC2(digital, packet_sink); -GR_SWIG_BLOCK_MAGIC2(digital, pfb_clock_sync_ccf); -GR_SWIG_BLOCK_MAGIC2(digital, pfb_clock_sync_fff); -GR_SWIG_BLOCK_MAGIC2(digital, pn_correlator_cc); -GR_SWIG_BLOCK_MAGIC2(digital, probe_density_b); -GR_SWIG_BLOCK_MAGIC2(digital, probe_mpsk_snr_est_c); -GR_SWIG_BLOCK_MAGIC2(digital, scrambler_bb); -GR_SWIG_BLOCK_MAGIC2(digital, simple_correlator); -GR_SWIG_BLOCK_MAGIC2(digital, simple_framer); GR_SWIG_BLOCK_MAGIC_FACTORY(digital, cpmmod_bc, gmskmod_bc); // Properly package up non-block objects %include "constellation.i" -%include "packet_header.i" %include "ofdm_equalizer.i" diff --git a/gr-digital/swig/digital_swig1.i b/gr-digital/swig/digital_swig1.i new file mode 100644 index 0000000000..972ddf5cb2 --- /dev/null +++ b/gr-digital/swig/digital_swig1.i @@ -0,0 +1,120 @@ +/* + * Copyright 2016 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. + */ + +#define DIGITAL_API +#define ANALOG_API +#define BLOCKS_API + +%include "gnuradio.i" +%include "stdint.i" + +//load generated python docstrings +%include "digital_swig1_doc.i" + + //%include "gnuradio/analog/cpm.h" + +%{ +#include <gnuradio/blocks/control_loop.h> +%} +%include <gnuradio/blocks/control_loop.h> + +%{ +#include "gnuradio/digital/additive_scrambler_bb.h" +#include "gnuradio/digital/burst_shaper_cc.h" +#include "gnuradio/digital/burst_shaper_ff.h" +#include "gnuradio/digital/chunks_to_symbols_bc.h" +#include "gnuradio/digital/chunks_to_symbols_bf.h" +#include "gnuradio/digital/chunks_to_symbols_ic.h" +#include "gnuradio/digital/chunks_to_symbols_if.h" +#include "gnuradio/digital/chunks_to_symbols_sc.h" +#include "gnuradio/digital/chunks_to_symbols_sf.h" +#include "gnuradio/digital/clock_recovery_mm_cc.h" +#include "gnuradio/digital/clock_recovery_mm_ff.h" +#include "gnuradio/digital/diff_decoder_bb.h" +#include "gnuradio/digital/diff_encoder_bb.h" +#include "gnuradio/digital/diff_phasor_cc.h" +#include "gnuradio/digital/fll_band_edge_cc.h" +#include "gnuradio/digital/framer_sink_1.h" +#include "gnuradio/digital/glfsr_source_b.h" +#include "gnuradio/digital/glfsr_source_f.h" +#include "gnuradio/digital/hdlc_deframer_bp.h" +#include "gnuradio/digital/hdlc_framer_pb.h" +#include "gnuradio/digital/header_payload_demux.h" +#include "gnuradio/digital/kurtotic_equalizer_cc.h" +#include "gnuradio/digital/lfsr.h" +#include "gnuradio/digital/map_bb.h" +#include "gnuradio/digital/metric_type.h" +#include "gnuradio/digital/modulate_vector.h" +#include "gnuradio/digital/msk_timing_recovery_cc.h" +%} + +%include "gnuradio/digital/additive_scrambler_bb.h" +%include "gnuradio/digital/burst_shaper_cc.h" +%include "gnuradio/digital/burst_shaper_ff.h" +%include "gnuradio/digital/chunks_to_symbols_bc.h" +%include "gnuradio/digital/chunks_to_symbols_bf.h" +%include "gnuradio/digital/chunks_to_symbols_ic.h" +%include "gnuradio/digital/chunks_to_symbols_if.h" +%include "gnuradio/digital/chunks_to_symbols_sc.h" +%include "gnuradio/digital/chunks_to_symbols_sf.h" +%include "gnuradio/digital/clock_recovery_mm_cc.h" +%include "gnuradio/digital/clock_recovery_mm_ff.h" +%include "gnuradio/digital/diff_decoder_bb.h" +%include "gnuradio/digital/diff_encoder_bb.h" +%include "gnuradio/digital/diff_phasor_cc.h" +%include "gnuradio/digital/fll_band_edge_cc.h" +%include "gnuradio/digital/framer_sink_1.h" +%include "gnuradio/digital/glfsr_source_b.h" +%include "gnuradio/digital/glfsr_source_f.h" +%include "gnuradio/digital/hdlc_deframer_bp.h" +%include "gnuradio/digital/hdlc_framer_pb.h" +%include "gnuradio/digital/header_payload_demux.h" +%include "gnuradio/digital/kurtotic_equalizer_cc.h" +%include "gnuradio/digital/lfsr.h" +%include "gnuradio/digital/map_bb.h" +%include "gnuradio/digital/metric_type.h" +%include "gnuradio/digital/modulate_vector.h" +%include "gnuradio/digital/msk_timing_recovery_cc.h" + +GR_SWIG_BLOCK_MAGIC2(digital, additive_scrambler_bb); +GR_SWIG_BLOCK_MAGIC2(digital, burst_shaper_cc); +GR_SWIG_BLOCK_MAGIC2(digital, burst_shaper_ff); +GR_SWIG_BLOCK_MAGIC2(digital, chunks_to_symbols_bc); +GR_SWIG_BLOCK_MAGIC2(digital, chunks_to_symbols_bf); +GR_SWIG_BLOCK_MAGIC2(digital, chunks_to_symbols_ic); +GR_SWIG_BLOCK_MAGIC2(digital, chunks_to_symbols_if); +GR_SWIG_BLOCK_MAGIC2(digital, chunks_to_symbols_sc); +GR_SWIG_BLOCK_MAGIC2(digital, chunks_to_symbols_sf); +GR_SWIG_BLOCK_MAGIC2(digital, clock_recovery_mm_cc); +GR_SWIG_BLOCK_MAGIC2(digital, clock_recovery_mm_ff); +GR_SWIG_BLOCK_MAGIC2(digital, diff_decoder_bb); +GR_SWIG_BLOCK_MAGIC2(digital, diff_encoder_bb); +GR_SWIG_BLOCK_MAGIC2(digital, diff_phasor_cc); +GR_SWIG_BLOCK_MAGIC2(digital, fll_band_edge_cc); +GR_SWIG_BLOCK_MAGIC2(digital, framer_sink_1); +GR_SWIG_BLOCK_MAGIC2(digital, glfsr_source_b); +GR_SWIG_BLOCK_MAGIC2(digital, glfsr_source_f); +GR_SWIG_BLOCK_MAGIC2(digital, hdlc_deframer_bp); +GR_SWIG_BLOCK_MAGIC2(digital, hdlc_framer_pb); +GR_SWIG_BLOCK_MAGIC2(digital, header_payload_demux); +GR_SWIG_BLOCK_MAGIC2(digital, kurtotic_equalizer_cc); +GR_SWIG_BLOCK_MAGIC2(digital, map_bb); +GR_SWIG_BLOCK_MAGIC2(digital, msk_timing_recovery_cc); diff --git a/gr-digital/swig/digital_swig2.i b/gr-digital/swig/digital_swig2.i new file mode 100644 index 0000000000..c16cc6aafb --- /dev/null +++ b/gr-digital/swig/digital_swig2.i @@ -0,0 +1,112 @@ +/* + * Copyright 2016 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. + */ + +#define DIGITAL_API +#define ANALOG_API +#define BLOCKS_API + +%include "gnuradio.i" +%include "stdint.i" + +//load generated python docstrings +%include "digital_swig2_doc.i" + +// %include "gnuradio/analog/cpm.h" + +%{ +#include <gnuradio/blocks/control_loop.h> +%} +%include <gnuradio/blocks/control_loop.h> + +%{ +#include "gnuradio/digital/mpsk_receiver_cc.h" +#include "gnuradio/digital/mpsk_snr_est.h" +#include "gnuradio/digital/mpsk_snr_est_cc.h" +#include "gnuradio/digital/header_format_base.h" +#include "gnuradio/digital/header_format_default.h" +#include "gnuradio/digital/header_format_counter.h" +#include "gnuradio/digital/header_format_crc.h" +#include "gnuradio/digital/header_format_ofdm.h" +#include "gnuradio/digital/protocol_formatter_async.h" +#include "gnuradio/digital/protocol_formatter_bb.h" +#include "gnuradio/digital/protocol_parser_b.h" +#include "gnuradio/digital/packet_header_default.h" +#include "gnuradio/digital/packet_header_ofdm.h" +#include "gnuradio/digital/packet_headergenerator_bb.h" +#include "gnuradio/digital/packet_headerparser_b.h" +#include "gnuradio/digital/packet_sink.h" +#include "gnuradio/digital/pfb_clock_sync_ccf.h" +#include "gnuradio/digital/pfb_clock_sync_fff.h" +#include "gnuradio/digital/pn_correlator_cc.h" +#include "gnuradio/digital/probe_density_b.h" +#include "gnuradio/digital/probe_mpsk_snr_est_c.h" +#include "gnuradio/digital/scrambler_bb.h" +#include "gnuradio/digital/simple_correlator.h" +#include "gnuradio/digital/simple_framer.h" +#include "gnuradio/digital/ofdm_serializer_vcc.h" +#include "gnuradio/digital/packet_headerparser_b.h" +#include "gnuradio/digital/header_payload_demux.h" +%} + +%include "gnuradio/digital/mpsk_receiver_cc.h" +%include "gnuradio/digital/mpsk_snr_est.h" +%include "gnuradio/digital/mpsk_snr_est_cc.h" +%include "gnuradio/digital/header_format_base.h" +%include "gnuradio/digital/header_format_default.h" +%include "gnuradio/digital/header_format_counter.h" +%include "gnuradio/digital/header_format_crc.h" +%include "gnuradio/digital/header_format_ofdm.h" +%include "gnuradio/digital/protocol_formatter_async.h" +%include "gnuradio/digital/protocol_formatter_bb.h" +%include "gnuradio/digital/protocol_parser_b.h" +%include "gnuradio/digital/packet_header_default.h" +%include "gnuradio/digital/packet_header_ofdm.h" +%include "gnuradio/digital/packet_headergenerator_bb.h" +%include "gnuradio/digital/packet_headerparser_b.h" +%include "gnuradio/digital/packet_sink.h" +%include "gnuradio/digital/pfb_clock_sync_ccf.h" +%include "gnuradio/digital/pfb_clock_sync_fff.h" +%include "gnuradio/digital/pn_correlator_cc.h" +%include "gnuradio/digital/probe_density_b.h" +%include "gnuradio/digital/probe_mpsk_snr_est_c.h" +%include "gnuradio/digital/scrambler_bb.h" +%include "gnuradio/digital/simple_correlator.h" +%include "gnuradio/digital/simple_framer.h" + +GR_SWIG_BLOCK_MAGIC2(digital, mpsk_receiver_cc); +GR_SWIG_BLOCK_MAGIC2(digital, mpsk_snr_est_cc); +GR_SWIG_BLOCK_MAGIC2(digital, protocol_formatter_async); +GR_SWIG_BLOCK_MAGIC2(digital, protocol_formatter_bb); +GR_SWIG_BLOCK_MAGIC2(digital, protocol_parser_b); +GR_SWIG_BLOCK_MAGIC2(digital, packet_headergenerator_bb); +GR_SWIG_BLOCK_MAGIC2(digital, packet_headerparser_b); +GR_SWIG_BLOCK_MAGIC2(digital, packet_sink); +GR_SWIG_BLOCK_MAGIC2(digital, pfb_clock_sync_ccf); +GR_SWIG_BLOCK_MAGIC2(digital, pfb_clock_sync_fff); +GR_SWIG_BLOCK_MAGIC2(digital, pn_correlator_cc); +GR_SWIG_BLOCK_MAGIC2(digital, probe_density_b); +GR_SWIG_BLOCK_MAGIC2(digital, probe_mpsk_snr_est_c); +GR_SWIG_BLOCK_MAGIC2(digital, scrambler_bb); +GR_SWIG_BLOCK_MAGIC2(digital, simple_correlator); +GR_SWIG_BLOCK_MAGIC2(digital, simple_framer); + +// Properly package up non-block objects +%include "packet_header.i" |