diff options
Diffstat (limited to 'gr-digital')
-rw-r--r-- | gr-digital/CMakeLists.txt | 5 | ||||
-rw-r--r-- | gr-digital/Makefile.am | 2 | ||||
-rw-r--r-- | gr-digital/examples/Makefile.am | 1 | ||||
-rwxr-xr-x | gr-digital/examples/benchmark_rx.py | 24 | ||||
-rwxr-xr-x | gr-digital/examples/benchmark_tx.py | 26 | ||||
-rw-r--r-- | gr-digital/examples/receive_path.py | 15 | ||||
-rw-r--r-- | gr-digital/examples/transmit_path.py | 15 | ||||
-rw-r--r-- | gr-digital/examples/uhd_interface.py | 215 | ||||
-rw-r--r-- | gr-digital/include/.gitignore (renamed from gr-digital/hier/.gitignore) | 0 | ||||
-rw-r--r-- | gr-digital/include/CMakeLists.txt (renamed from gr-digital/hier/CMakeLists.txt) | 37 | ||||
-rw-r--r-- | gr-digital/include/Makefile.am (renamed from gr-digital/hier/Makefile.am) | 35 | ||||
-rw-r--r-- | gr-digital/include/digital_api.h (renamed from gr-digital/lib/digital_api.h) | 0 | ||||
-rw-r--r-- | gr-digital/include/digital_binary_slicer_fb.h (renamed from gr-digital/lib/digital_binary_slicer_fb.h) | 0 | ||||
-rw-r--r-- | gr-digital/include/digital_clock_recovery_mm_cc.h (renamed from gr-digital/lib/digital_clock_recovery_mm_cc.h) | 0 | ||||
-rw-r--r-- | gr-digital/include/digital_clock_recovery_mm_ff.h (renamed from gr-digital/lib/digital_clock_recovery_mm_ff.h) | 0 | ||||
-rw-r--r-- | gr-digital/include/digital_cma_equalizer_cc.h (renamed from gr-digital/lib/digital_cma_equalizer_cc.h) | 0 | ||||
-rw-r--r-- | gr-digital/include/digital_constellation.h (renamed from gr-digital/lib/digital_constellation.h) | 0 | ||||
-rw-r--r-- | gr-digital/include/digital_constellation_decoder_cb.h (renamed from gr-digital/lib/digital_constellation_decoder_cb.h) | 0 | ||||
-rw-r--r-- | gr-digital/include/digital_constellation_receiver_cb.h (renamed from gr-digital/lib/digital_constellation_receiver_cb.h) | 0 | ||||
-rw-r--r-- | gr-digital/include/digital_correlate_access_code_bb.h (renamed from gr-digital/lib/digital_correlate_access_code_bb.h) | 0 | ||||
-rw-r--r-- | gr-digital/include/digital_costas_loop_cc.h (renamed from gr-digital/lib/digital_costas_loop_cc.h) | 0 | ||||
-rw-r--r-- | gr-digital/include/digital_cpmmod_bc.h (renamed from gr-digital/hier/digital_cpmmod_bc.h) | 0 | ||||
-rw-r--r-- | gr-digital/include/digital_crc32.h (renamed from gr-digital/lib/digital_crc32.h) | 0 | ||||
-rw-r--r-- | gr-digital/include/digital_fll_band_edge_cc.h (renamed from gr-digital/lib/digital_fll_band_edge_cc.h) | 0 | ||||
-rw-r--r-- | gr-digital/include/digital_gmskmod_bc.h (renamed from gr-digital/hier/digital_gmskmod_bc.h) | 0 | ||||
-rw-r--r-- | gr-digital/include/digital_kurtotic_equalizer_cc.h (renamed from gr-digital/lib/digital_kurtotic_equalizer_cc.h) | 0 | ||||
-rw-r--r-- | gr-digital/include/digital_lms_dd_equalizer_cc.h (renamed from gr-digital/lib/digital_lms_dd_equalizer_cc.h) | 0 | ||||
-rw-r--r-- | gr-digital/include/digital_metric_type.h (renamed from gr-digital/lib/digital_metric_type.h) | 0 | ||||
-rw-r--r-- | gr-digital/include/digital_mpsk_receiver_cc.h (renamed from gr-digital/lib/digital_mpsk_receiver_cc.h) | 0 | ||||
-rw-r--r-- | gr-digital/lib/CMakeLists.txt | 26 | ||||
-rw-r--r-- | gr-digital/lib/Makefile.am | 29 | ||||
-rw-r--r-- | gr-digital/lib/digital_cpmmod_bc.cc (renamed from gr-digital/hier/digital_cpmmod_bc.cc) | 0 | ||||
-rw-r--r-- | gr-digital/lib/digital_gmskmod_bc.cc (renamed from gr-digital/hier/digital_gmskmod_bc.cc) | 0 | ||||
-rw-r--r-- | gr-digital/python/__init__.py | 3 | ||||
-rw-r--r-- | gr-digital/python/generic_mod_demod.py | 14 | ||||
-rw-r--r-- | gr-digital/python/pkt.py | 33 | ||||
-rw-r--r-- | gr-digital/swig/CMakeLists.txt | 3 | ||||
-rw-r--r-- | gr-digital/swig/Makefile.am | 8 | ||||
-rw-r--r-- | gr-digital/swig/Makefile.swig.gen | 147 | ||||
-rw-r--r-- | gr-digital/swig/_digital_hier.i (renamed from gr-digital/hier/_digital_hier.i) | 0 | ||||
-rw-r--r-- | gr-digital/swig/digital_cpmmod_bc.i (renamed from gr-digital/hier/digital_cpmmod_bc.i) | 0 | ||||
-rw-r--r-- | gr-digital/swig/digital_gmskmod_bc.i (renamed from gr-digital/hier/digital_gmskmod_bc.i) | 0 | ||||
-rw-r--r-- | gr-digital/swig/digital_hier.i | 40 | ||||
-rw-r--r-- | gr-digital/swig/digital_swig.i | 5 |
44 files changed, 336 insertions, 347 deletions
diff --git a/gr-digital/CMakeLists.txt b/gr-digital/CMakeLists.txt index bd11be4d3..23bb48f94 100644 --- a/gr-digital/CMakeLists.txt +++ b/gr-digital/CMakeLists.txt @@ -32,8 +32,7 @@ GR_REGISTER_COMPONENT("gr-digital" ENABLE_GR_DIGITAL ) GR_SET_GLOBAL(GR_DIGITAL_INCLUDE_DIRS - ${CMAKE_CURRENT_SOURCE_DIR}/lib - ${CMAKE_CURRENT_SOURCE_DIR}/hier + ${CMAKE_CURRENT_SOURCE_DIR}/include ) GR_SET_GLOBAL(GR_DIGITAL_SWIG_INCLUDE_DIRS @@ -82,7 +81,7 @@ CPACK_COMPONENT("digital_swig" ######################################################################## # Add subdirectories ######################################################################## -GR_INCLUDE_SUBDIRECTORY(hier) #appends to lib sources +ADD_SUBDIRECTORY(include) ADD_SUBDIRECTORY(lib) IF(ENABLE_PYTHON) ADD_SUBDIRECTORY(swig) diff --git a/gr-digital/Makefile.am b/gr-digital/Makefile.am index 346db120f..b70d00d05 100644 --- a/gr-digital/Makefile.am +++ b/gr-digital/Makefile.am @@ -21,7 +21,7 @@ include $(top_srcdir)/Makefile.common -SUBDIRS = hier lib +SUBDIRS = include lib if PYTHON SUBDIRS += swig python apps grc examples diff --git a/gr-digital/examples/Makefile.am b/gr-digital/examples/Makefile.am index 849e826a1..4f745f3a9 100644 --- a/gr-digital/examples/Makefile.am +++ b/gr-digital/examples/Makefile.am @@ -31,6 +31,7 @@ noinst_PYTHON = \ dist_ourdata_SCRIPTS = \ transmit_path.py \ receive_path.py \ + uhd_interface.py \ benchmark_tx.py \ benchmark_rx.py \ tx_voice.py \ diff --git a/gr-digital/examples/benchmark_rx.py b/gr-digital/examples/benchmark_rx.py index 9390540dd..7eb4fb9b4 100755 --- a/gr-digital/examples/benchmark_rx.py +++ b/gr-digital/examples/benchmark_rx.py @@ -21,7 +21,6 @@ # from gnuradio import gr, gru -from gnuradio import usrp from gnuradio import eng_notation from gnuradio.eng_option import eng_option from optparse import OptionParser @@ -31,6 +30,7 @@ from gnuradio import digital # from current dir from receive_path import receive_path +from uhd_interface import uhd_receiver import random import struct @@ -44,17 +44,24 @@ class my_top_block(gr.top_block): def __init__(self, demodulator, rx_callback, options): gr.top_block.__init__(self) - # Set up receive path - self.rxpath = receive_path(demodulator, rx_callback, options) + if(options.tx_freq is not None): + self.source = uhd_receiver(options.address, options.bitrate, + options.samples_per_symbol, + options.rx_freq, options.rx_gain, + options.antenna, options.verbose) + options.samples_per_symbol = self.source._sps - if(options.from_file is not None): - self.thr = gr.throttle(gr.sizeof_gr_complex, 1e6) + elif(options.from_file is not None): self.source = gr.file_source(gr.sizeof_gr_complex, options.from_file) - self.connect(self.source, self.thr, self.rxpath) else: - self.thr = gr.throttle(gr.sizeof_gr_complex, 1e6) self.source = gr.null_source(gr.sizeof_gr_complex) - self.connect(self.source, self.thr, self.rxpath) + + # Set up receive path + # do this after for any adjustments to the options that may + # occur in the sinks (specifically the UHD sink) + self.rxpath = receive_path(demodulator, rx_callback, options) + + self.connect(self.source, self.rxpath) # ///////////////////////////////////////////////////////////////////////////// @@ -93,6 +100,7 @@ def main(): help="input file of samples to demod") receive_path.add_options(parser, expert_grp) + uhd_receiver.add_options(parser) for mod in demods.values(): mod.add_options(expert_grp) diff --git a/gr-digital/examples/benchmark_tx.py b/gr-digital/examples/benchmark_tx.py index 92013a532..a4396dd98 100755 --- a/gr-digital/examples/benchmark_tx.py +++ b/gr-digital/examples/benchmark_tx.py @@ -21,7 +21,6 @@ # from gnuradio import gr -from gnuradio import uhd from gnuradio import eng_notation from gnuradio.eng_option import eng_option from optparse import OptionParser @@ -31,6 +30,7 @@ from gnuradio import digital # from current dir from transmit_path import transmit_path +from uhd_interface import uhd_transmitter import random, time, struct, sys @@ -42,13 +42,22 @@ class my_top_block(gr.top_block): def __init__(self, modulator, options): gr.top_block.__init__(self) - self.txpath = transmit_path(modulator, options) - - if(options.to_file is not None): + if(options.tx_freq is not None): + self.sink = uhd_transmitter(options.address, options.bitrate, + options.samples_per_symbol, + options.tx_freq, options.tx_gain, + options.antenna, options.verbose) + options.samples_per_symbol = self.sink._sps + + elif(options.to_file is not None): self.sink = gr.file_sink(gr.sizeof_gr_complex, options.to_file) else: self.sink = gr.null_sink(gr.sizeof_gr_complex) + # do this after for any adjustments to the options that may + # occur in the sinks (specifically the UHD sink) + self.txpath = transmit_path(modulator, options) + self.connect(self.txpath, self.sink) # ///////////////////////////////////////////////////////////////////////////// @@ -85,6 +94,7 @@ def main(): help="Output file for modulated samples") transmit_path.add_options(parser, expert_grp) + uhd_transmitter.add_options(parser) for mod in mods.values(): mod.add_options(expert_grp) @@ -94,13 +104,7 @@ def main(): if len(args) != 0: parser.print_help() sys.exit(1) - - if options.to_file is None: - if options.tx_freq is None: - sys.stderr.write("You must specify -f FREQ or --freq FREQ\n") - parser.print_help(sys.stderr) - sys.exit(1) - + if options.from_file is not None: source_file = open(options.from_file, 'r') diff --git a/gr-digital/examples/receive_path.py b/gr-digital/examples/receive_path.py index dd8eb1a0d..1c5e58963 100644 --- a/gr-digital/examples/receive_path.py +++ b/gr-digital/examples/receive_path.py @@ -34,17 +34,16 @@ import sys class receive_path(gr.hier_block2): def __init__(self, demod_class, rx_callback, options): gr.hier_block2.__init__(self, "receive_path", - gr.io_signature(1, 1, gr.sizeof_gr_complex), # Input signature - gr.io_signature(0, 0, 0)) # Output signature - + gr.io_signature(1, 1, gr.sizeof_gr_complex), + gr.io_signature(0, 0, 0)) options = copy.copy(options) # make a copy so we can destructively modify - self._verbose = options.verbose - self._bitrate = options.bitrate # desired bit rate + self._verbose = options.verbose + self._bitrate = options.bitrate # desired bit rate - self._rx_callback = rx_callback # this callback is fired when there's a packet available - self._demod_class = demod_class # the demodulator_class we're using + self._rx_callback = rx_callback # this callback is fired when a packet arrives + self._demod_class = demod_class # the demodulator_class we're using # Get demod_kwargs demod_kwargs = self._demod_class.extract_kwargs_from_options(options) @@ -126,7 +125,7 @@ class receive_path(gr.hier_block2): normal.add_option("-r", "--bitrate", type="eng_float", default=100e3, help="specify bitrate [default=%default].") normal.add_option("-v", "--verbose", action="store_true", default=False) - expert.add_option("-S", "--samples-per-symbol", type="float", default=None, + expert.add_option("-S", "--samples-per-symbol", type="float", default=2, help="set samples/symbol [default=%default]") expert.add_option("", "--log", action="store_true", default=False, help="Log all parts of flow graph to files (CAUTION: lots of data)") diff --git a/gr-digital/examples/transmit_path.py b/gr-digital/examples/transmit_path.py index f22ffb327..3af37f330 100644 --- a/gr-digital/examples/transmit_path.py +++ b/gr-digital/examples/transmit_path.py @@ -36,16 +36,15 @@ class transmit_path(gr.hier_block2): See below for what options should hold ''' gr.hier_block2.__init__(self, "transmit_path", - gr.io_signature(0, 0, 0), # Input signature - gr.io_signature(1, 1, gr.sizeof_gr_complex)) # Output signature + gr.io_signature(0,0,0), + gr.io_signature(1,1,gr.sizeof_gr_complex)) options = copy.copy(options) # make a copy so we can destructively modify - self._verbose = options.verbose - self._tx_amplitude = options.tx_amplitude # digital amplitude sent to USRP - self._bitrate = options.bitrate # desired bit rate - - self._modulator_class = modulator_class # the modulator_class we are using + self._verbose = options.verbose + self._tx_amplitude = options.tx_amplitude # digital amplitude sent to USRP + self._bitrate = options.bitrate # desired bit rate + self._modulator_class = modulator_class # the modulator_class we are using # Get mod_kwargs mod_kwargs = self._modulator_class.extract_kwargs_from_options(options) @@ -103,7 +102,7 @@ class transmit_path(gr.hier_block2): help="set transmitter digital amplitude: 0 <= AMPL < 1 [default=%default]") normal.add_option("-v", "--verbose", action="store_true", default=False) - expert.add_option("-S", "--samples-per-symbol", type="float", default=None, + expert.add_option("-S", "--samples-per-symbol", type="float", default=2, help="set samples/symbol [default=%default]") expert.add_option("", "--log", action="store_true", default=False, help="Log all parts of flow graph to file (CAUTION: lots of data)") diff --git a/gr-digital/examples/uhd_interface.py b/gr-digital/examples/uhd_interface.py new file mode 100644 index 000000000..3e2162ba3 --- /dev/null +++ b/gr-digital/examples/uhd_interface.py @@ -0,0 +1,215 @@ +#!/usr/bin/env python +# +# Copyright 2010,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. +# + +from gnuradio import gr, uhd +from gnuradio import eng_notation +from gnuradio.eng_option import eng_option +from optparse import OptionParser + +import sys + +def add_freq_option(parser): + """ + Hackery that has the -f / --freq option set both tx_freq and rx_freq + """ + def freq_callback(option, opt_str, value, parser): + parser.values.rx_freq = value + parser.values.tx_freq = value + + if not parser.has_option('--freq'): + parser.add_option('-f', '--freq', type="eng_float", + action="callback", callback=freq_callback, + help="set Tx and/or Rx frequency to FREQ [default=%default]", + metavar="FREQ") + +class uhd_interface: + def __init__(self, istx, address, bitrate, sps, freq=None, + gain=None, antenna=None): + + if(istx): + self.u = uhd.usrp_sink(device_addr=address, + io_type=uhd.io_type.COMPLEX_FLOAT32, + num_channels=1) + else: + self.u = uhd.usrp_source(device_addr=address, + io_type=uhd.io_type.COMPLEX_FLOAT32, + num_channels=1) + + self._addr = address + self._ant = antenna + self._gain = self.set_gain(gain) + self._freq = self.set_freq(freq) + + self._rate, self._sps = self.set_sample_rate(bitrate, sps) + + if(antenna): + self.u.set_antenna(antenna, 0) + + def set_sample_rate(self, bitrate, req_sps): + start_sps = req_sps + while(True): + asked_samp_rate = bitrate * req_sps + self.u.set_samp_rate(asked_samp_rate) + actual_samp_rate = self.u.get_samp_rate() + + sps = actual_samp_rate/bitrate + if(sps < 2): + req_sps +=1 + else: + actual_sps = sps + break + + if(sps != req_sps): + print "\nBit Rate: %f" % (bitrate) + print "Requested sps: %f" % (start_sps) + print "Given sample rate: %f" % (actual_samp_rate) + print "Actual sps for rate: %f" % (actual_sps) + + if(actual_samp_rate != asked_samp_rate): + print "\nRequested sample rate: %f" % (asked_samp_rate) + print "Actual sample rate: %f" % (actual_samp_rate) + + return (actual_samp_rate, actual_sps) + + def set_gain(self, gain=None): + if gain is None: + # if no gain was specified, use the mid-point in dB + g = self.u.get_gain_range() + gain = float(g.start()+g.stop())/2 + print "\nNo gain specified." + print "Setting gain to %f (from [%f, %f])" % \ + (gain, g.start(), g.stop()) + + self.u.set_gain(gain, 0) + return gain + + def set_freq(self, freq=None): + if(freq is None): + sys.stderr.write("You must specify -f FREQ or --freq FREQ\n") + sys.exit(1) + + r = self.u.set_center_freq(freq, 0) + if r: + return freq + else: + frange = self.u.get_freq_range() + sys.stderr.write(("\nRequested frequency (%f) out or range [%f, %f]\n") % \ + (freq, frange.start(), frange.stop())) + sys.exit(1) + +#-------------------------------------------------------------------# +# TRANSMITTER +#-------------------------------------------------------------------# + +class uhd_transmitter(uhd_interface, gr.hier_block2): + def __init__(self, address, bitrate, sps, freq=None, gain=None, + antenna=None, verbose=False): + gr.hier_block2.__init__(self, "uhd_transmitter", + gr.io_signature(1,1,gr.sizeof_gr_complex), + gr.io_signature(0,0,0)) + + # Set up the UHD interface as a transmitter + uhd_interface.__init__(self, True, address, bitrate, sps, + freq, gain, antenna) + + self.connect(self, self.u) + + if(verbose): + self._print_verbage() + + def add_options(parser): + add_freq_option(parser) + parser.add_option("-a", "--address", type="string", default="addr=192.168.10.2", + help="Address of UHD device, [default=%default]") + parser.add_option("-A", "--antenna", type="string", default=None, + help="select Rx Antenna where appropriate") + parser.add_option("", "--tx-freq", type="eng_float", default=None, + help="set transmit frequency to FREQ [default=%default]", + metavar="FREQ") + parser.add_option("", "--tx-gain", type="eng_float", default=None, + help="set transmit gain in dB (default is midpoint)") + parser.add_option("-v", "--verbose", action="store_true", default=False) + + # Make a static method to call before instantiation + add_options = staticmethod(add_options) + + def _print_verbage(self): + """ + Prints information about the UHD transmitter + """ + print "\nUHD Transmitter:" + print "Address: %s" % (self._addr) + print "Freq: %sHz" % (eng_notation.num_to_str(self._freq)) + print "Gain: %f dB" % (self._gain) + print "Sample Rate: %ssps" % (eng_notation.num_to_str(self._rate)) + print "Antenna: %s" % (self._ant) + + + +#-------------------------------------------------------------------# +# RECEIVER +#-------------------------------------------------------------------# + + +class uhd_receiver(uhd_interface, gr.hier_block2): + def __init__(self, address, bitrate, sps, freq=None, gain=None, + antenna=None, verbose=False): + gr.hier_block2.__init__(self, "uhd_receiver", + gr.io_signature(0,0,0), + gr.io_signature(1,1,gr.sizeof_gr_complex)) + + # Set up the UHD interface as a receiver + uhd_interface.__init__(self, False, address, bitrate, sps, + freq, gain, antenna) + + self.connect(self.u, self) + + if(verbose): + self._print_verbage() + + def add_options(parser): + add_freq_option(parser) + parser.add_option("-a", "--address", type="string", default="addr=192.168.10.2", + help="Address of UHD device, [default=%default]") + parser.add_option("-A", "--antenna", type="string", default=None, + help="select Rx Antenna where appropriate") + parser.add_option("", "--rx-freq", type="eng_float", default=None, + help="set receive frequency to FREQ [default=%default]", + metavar="FREQ") + parser.add_option("", "--rx-gain", type="eng_float", default=None, + help="set receive gain in dB (default is midpoint)") + parser.add_option("-v", "--verbose", action="store_true", default=False) + + # Make a static method to call before instantiation + add_options = staticmethod(add_options) + + def _print_verbage(self): + """ + Prints information about the UHD transmitter + """ + print "\nUHD Receiver:" + print "Address: %s" % (self._addr) + print "Freq: %sHz" % (eng_notation.num_to_str(self._freq)) + print "Gain: %f dB" % (self._gain) + print "Sample Rate: %ssps" % (eng_notation.num_to_str(self._rate)) + print "Antenna: %s" % (self._ant) + diff --git a/gr-digital/hier/.gitignore b/gr-digital/include/.gitignore index b336cc7ce..b336cc7ce 100644 --- a/gr-digital/hier/.gitignore +++ b/gr-digital/include/.gitignore diff --git a/gr-digital/hier/CMakeLists.txt b/gr-digital/include/CMakeLists.txt index f46acc81e..7b38e645b 100644 --- a/gr-digital/hier/CMakeLists.txt +++ b/gr-digital/include/CMakeLists.txt @@ -18,26 +18,27 @@ # Boston, MA 02110-1301, USA. ######################################################################## -# This file included, use CMake directory variables +# Install header files ######################################################################## - -LIST(APPEND gr_digital_sources - ${CMAKE_CURRENT_SOURCE_DIR}/digital_gmskmod_bc.cc - ${CMAKE_CURRENT_SOURCE_DIR}/digital_cpmmod_bc.cc -) - INSTALL(FILES - ${CMAKE_CURRENT_SOURCE_DIR}/digital_gmskmod_bc.h - ${CMAKE_CURRENT_SOURCE_DIR}/digital_cpmmod_bc.h + digital_api.h + digital_binary_slicer_fb.h + digital_clock_recovery_mm_cc.h + digital_clock_recovery_mm_ff.h + digital_constellation.h + digital_constellation_receiver_cb.h + digital_constellation_decoder_cb.h + digital_correlate_access_code_bb.h + digital_costas_loop_cc.h + digital_cma_equalizer_cc.h + digital_crc32.h + digital_fll_band_edge_cc.h + digital_lms_dd_equalizer_cc.h + digital_kurtotic_equalizer_cc.h + digital_metric_type.h + digital_mpsk_receiver_cc.h + digital_gmskmod_bc.h + digital_cpmmod_bc.h DESTINATION ${GR_INCLUDE_DIR}/gnuradio COMPONENT "digital_devel" ) - -INSTALL( - FILES - ${CMAKE_CURRENT_SOURCE_DIR}/_digital_hier.i - ${CMAKE_CURRENT_SOURCE_DIR}/digital_gmskmod_bc.i - ${CMAKE_CURRENT_SOURCE_DIR}/digital_cpmmod_bc.i - DESTINATION ${GR_INCLUDE_DIR}/gnuradio/swig - COMPONENT "digital_swig" -) diff --git a/gr-digital/hier/Makefile.am b/gr-digital/include/Makefile.am index b11b85f77..346d036ce 100644 --- a/gr-digital/hier/Makefile.am +++ b/gr-digital/include/Makefile.am @@ -21,20 +21,25 @@ include $(top_srcdir)/Makefile.common -AM_CPPFLAGS = $(STD_DEFINES_AND_INCLUDES) $(WITH_INCLUDES) - -noinst_LTLIBRARIES = libdigital_hier.la - -libdigital_hier_la_SOURCES = \ - digital_gmskmod_bc.cc \ - digital_cpmmod_bc.cc - -grinclude_HEADERS = \ - digital_gmskmod_bc.h \ +# These headers get installed in ${prefix}/include/gnuradio +grinclude_HEADERS = \ + digital_api.h \ + digital_binary_slicer_fb.h \ + digital_clock_recovery_mm_cc.h \ + digital_clock_recovery_mm_ff.h \ + digital_constellation.h \ + digital_constellation_receiver_cb.h \ + digital_constellation_decoder_cb.h \ + digital_correlate_access_code_bb.h \ + digital_costas_loop_cc.h \ + digital_cma_equalizer_cc.h \ + digital_crc32.h \ + digital_fll_band_edge_cc.h \ + digital_lms_dd_equalizer_cc.h \ + digital_kurtotic_equalizer_cc.h \ + digital_metric_type.h \ + digital_mpsk_receiver_cc.h \ + digital_gmskmod_bc.h \ digital_cpmmod_bc.h - -swiginclude_HEADERS = \ - _digital_hier.i \ - digital_gmskmod_bc.i \ - digital_cpmmod_bc.i +libgnuradio_digital_la_LDFLAGS = $(NO_UNDEFINED) $(LTVERSIONFLAGS) diff --git a/gr-digital/lib/digital_api.h b/gr-digital/include/digital_api.h index d45ace13f..d45ace13f 100644 --- a/gr-digital/lib/digital_api.h +++ b/gr-digital/include/digital_api.h diff --git a/gr-digital/lib/digital_binary_slicer_fb.h b/gr-digital/include/digital_binary_slicer_fb.h index 9da776012..9da776012 100644 --- a/gr-digital/lib/digital_binary_slicer_fb.h +++ b/gr-digital/include/digital_binary_slicer_fb.h diff --git a/gr-digital/lib/digital_clock_recovery_mm_cc.h b/gr-digital/include/digital_clock_recovery_mm_cc.h index e45b79229..e45b79229 100644 --- a/gr-digital/lib/digital_clock_recovery_mm_cc.h +++ b/gr-digital/include/digital_clock_recovery_mm_cc.h diff --git a/gr-digital/lib/digital_clock_recovery_mm_ff.h b/gr-digital/include/digital_clock_recovery_mm_ff.h index 6f88a4dcd..6f88a4dcd 100644 --- a/gr-digital/lib/digital_clock_recovery_mm_ff.h +++ b/gr-digital/include/digital_clock_recovery_mm_ff.h diff --git a/gr-digital/lib/digital_cma_equalizer_cc.h b/gr-digital/include/digital_cma_equalizer_cc.h index 69e2f657a..69e2f657a 100644 --- a/gr-digital/lib/digital_cma_equalizer_cc.h +++ b/gr-digital/include/digital_cma_equalizer_cc.h diff --git a/gr-digital/lib/digital_constellation.h b/gr-digital/include/digital_constellation.h index 9b2a58588..9b2a58588 100644 --- a/gr-digital/lib/digital_constellation.h +++ b/gr-digital/include/digital_constellation.h diff --git a/gr-digital/lib/digital_constellation_decoder_cb.h b/gr-digital/include/digital_constellation_decoder_cb.h index 1ce01fe12..1ce01fe12 100644 --- a/gr-digital/lib/digital_constellation_decoder_cb.h +++ b/gr-digital/include/digital_constellation_decoder_cb.h diff --git a/gr-digital/lib/digital_constellation_receiver_cb.h b/gr-digital/include/digital_constellation_receiver_cb.h index d33be8958..d33be8958 100644 --- a/gr-digital/lib/digital_constellation_receiver_cb.h +++ b/gr-digital/include/digital_constellation_receiver_cb.h diff --git a/gr-digital/lib/digital_correlate_access_code_bb.h b/gr-digital/include/digital_correlate_access_code_bb.h index c4cb60428..c4cb60428 100644 --- a/gr-digital/lib/digital_correlate_access_code_bb.h +++ b/gr-digital/include/digital_correlate_access_code_bb.h diff --git a/gr-digital/lib/digital_costas_loop_cc.h b/gr-digital/include/digital_costas_loop_cc.h index c78726341..c78726341 100644 --- a/gr-digital/lib/digital_costas_loop_cc.h +++ b/gr-digital/include/digital_costas_loop_cc.h diff --git a/gr-digital/hier/digital_cpmmod_bc.h b/gr-digital/include/digital_cpmmod_bc.h index 4e9547cd6..4e9547cd6 100644 --- a/gr-digital/hier/digital_cpmmod_bc.h +++ b/gr-digital/include/digital_cpmmod_bc.h diff --git a/gr-digital/lib/digital_crc32.h b/gr-digital/include/digital_crc32.h index 852d06f49..852d06f49 100644 --- a/gr-digital/lib/digital_crc32.h +++ b/gr-digital/include/digital_crc32.h diff --git a/gr-digital/lib/digital_fll_band_edge_cc.h b/gr-digital/include/digital_fll_band_edge_cc.h index 6ef8376ac..6ef8376ac 100644 --- a/gr-digital/lib/digital_fll_band_edge_cc.h +++ b/gr-digital/include/digital_fll_band_edge_cc.h diff --git a/gr-digital/hier/digital_gmskmod_bc.h b/gr-digital/include/digital_gmskmod_bc.h index 33fcc6c12..33fcc6c12 100644 --- a/gr-digital/hier/digital_gmskmod_bc.h +++ b/gr-digital/include/digital_gmskmod_bc.h diff --git a/gr-digital/lib/digital_kurtotic_equalizer_cc.h b/gr-digital/include/digital_kurtotic_equalizer_cc.h index c07862e11..c07862e11 100644 --- a/gr-digital/lib/digital_kurtotic_equalizer_cc.h +++ b/gr-digital/include/digital_kurtotic_equalizer_cc.h diff --git a/gr-digital/lib/digital_lms_dd_equalizer_cc.h b/gr-digital/include/digital_lms_dd_equalizer_cc.h index edfa18e23..edfa18e23 100644 --- a/gr-digital/lib/digital_lms_dd_equalizer_cc.h +++ b/gr-digital/include/digital_lms_dd_equalizer_cc.h diff --git a/gr-digital/lib/digital_metric_type.h b/gr-digital/include/digital_metric_type.h index 83de166f0..83de166f0 100644 --- a/gr-digital/lib/digital_metric_type.h +++ b/gr-digital/include/digital_metric_type.h diff --git a/gr-digital/lib/digital_mpsk_receiver_cc.h b/gr-digital/include/digital_mpsk_receiver_cc.h index 85cd81e99..85cd81e99 100644 --- a/gr-digital/lib/digital_mpsk_receiver_cc.h +++ b/gr-digital/include/digital_mpsk_receiver_cc.h diff --git a/gr-digital/lib/CMakeLists.txt b/gr-digital/lib/CMakeLists.txt index 30e1e3a40..7cd89a56f 100644 --- a/gr-digital/lib/CMakeLists.txt +++ b/gr-digital/lib/CMakeLists.txt @@ -46,6 +46,8 @@ LIST(APPEND gr_digital_sources digital_lms_dd_equalizer_cc.cc digital_kurtotic_equalizer_cc.cc digital_mpsk_receiver_cc.cc + digital_gmskmod_bc.cc + digital_cpmmod_bc.cc ) LIST(APPEND digital_libs @@ -63,27 +65,3 @@ INSTALL(TARGETS gnuradio-digital ARCHIVE DESTINATION ${GR_LIBRARY_DIR} COMPONENT "digital_devel" # .lib file RUNTIME DESTINATION ${GR_RUNTIME_DIR} COMPONENT "digital_runtime" # .dll file ) - -######################################################################## -# Install header files -######################################################################## -INSTALL(FILES - digital_api.h - digital_binary_slicer_fb.h - digital_clock_recovery_mm_cc.h - digital_clock_recovery_mm_ff.h - digital_constellation.h - digital_constellation_receiver_cb.h - digital_constellation_decoder_cb.h - digital_correlate_access_code_bb.h - digital_costas_loop_cc.h - digital_cma_equalizer_cc.h - digital_crc32.h - digital_fll_band_edge_cc.h - digital_lms_dd_equalizer_cc.h - digital_kurtotic_equalizer_cc.h - digital_metric_type.h - digital_mpsk_receiver_cc.h - DESTINATION ${GR_INCLUDE_DIR}/gnuradio - COMPONENT "digital_devel" -) diff --git a/gr-digital/lib/Makefile.am b/gr-digital/lib/Makefile.am index ce961ef2e..17baf2101 100644 --- a/gr-digital/lib/Makefile.am +++ b/gr-digital/lib/Makefile.am @@ -21,26 +21,8 @@ include $(top_srcdir)/Makefile.common -AM_CPPFLAGS = $(STD_DEFINES_AND_INCLUDES) $(PYTHON_CPPFLAGS) $(WITH_INCLUDES) - -# These headers get installed in ${prefix}/include/gnuradio -grinclude_HEADERS = \ - digital_api.h \ - digital_binary_slicer_fb.h \ - digital_clock_recovery_mm_cc.h \ - digital_clock_recovery_mm_ff.h \ - digital_constellation.h \ - digital_constellation_receiver_cb.h \ - digital_constellation_decoder_cb.h \ - digital_correlate_access_code_bb.h \ - digital_costas_loop_cc.h \ - digital_cma_equalizer_cc.h \ - digital_crc32.h \ - digital_fll_band_edge_cc.h \ - digital_lms_dd_equalizer_cc.h \ - digital_kurtotic_equalizer_cc.h \ - digital_metric_type.h \ - digital_mpsk_receiver_cc.h +AM_CPPFLAGS = $(STD_DEFINES_AND_INCLUDES) $(PYTHON_CPPFLAGS) \ + $(GR_DIGITAL_INCLUDES) $(WITH_INCLUDES) lib_LTLIBRARIES = libgnuradio-digital.la @@ -58,10 +40,11 @@ libgnuradio_digital_la_SOURCES = \ digital_fll_band_edge_cc.cc \ digital_lms_dd_equalizer_cc.cc \ digital_kurtotic_equalizer_cc.cc \ - digital_mpsk_receiver_cc.cc + digital_mpsk_receiver_cc.cc \ + digital_gmskmod_bc.cc \ + digital_cpmmod_bc.cc libgnuradio_digital_la_LIBADD = \ - $(GNURADIO_CORE_LA) \ - $(abs_top_builddir)/gr-digital/hier/libdigital_hier.la + $(GNURADIO_CORE_LA) libgnuradio_digital_la_LDFLAGS = $(NO_UNDEFINED) $(LTVERSIONFLAGS) diff --git a/gr-digital/hier/digital_cpmmod_bc.cc b/gr-digital/lib/digital_cpmmod_bc.cc index a95b604d1..a95b604d1 100644 --- a/gr-digital/hier/digital_cpmmod_bc.cc +++ b/gr-digital/lib/digital_cpmmod_bc.cc diff --git a/gr-digital/hier/digital_gmskmod_bc.cc b/gr-digital/lib/digital_gmskmod_bc.cc index e53e90037..e53e90037 100644 --- a/gr-digital/hier/digital_gmskmod_bc.cc +++ b/gr-digital/lib/digital_gmskmod_bc.cc diff --git a/gr-digital/python/__init__.py b/gr-digital/python/__init__.py index 7173fa09d..0fc48cc79 100644 --- a/gr-digital/python/__init__.py +++ b/gr-digital/python/__init__.py @@ -28,5 +28,6 @@ from qpsk import * from qam import * from gmsk import * from pkt import * -from packet_utils import * from crc import * +from packet_utils import * +from modulation_utils2 import * diff --git a/gr-digital/python/generic_mod_demod.py b/gr-digital/python/generic_mod_demod.py index b1986512f..dc69fc0b5 100644 --- a/gr-digital/python/generic_mod_demod.py +++ b/gr-digital/python/generic_mod_demod.py @@ -55,12 +55,12 @@ def add_common_options(parser): """ parser.add_option("-p", "--constellation-points", type="int", default=_def_constellation_points, help="set the number of constellation points (must be a power of 2 for psk, power of 4 for QAM) [default=%default]") - parser.add_option("", "--non-differential", action="store_true", - dest="differential", default=False, - help="do not use differential encoding [default=%default]") - parser.add_option("", "--differential", action="store_false", - dest="differential", - help="use differential encoding [default=False]") + parser.add_option("", "--non-differential", action="store_false", + dest="differential", + help="do not use differential encoding [default=False]") + parser.add_option("", "--differential", action="store_true", + dest="differential", default=True, + help="use differential encoding [default=%default]") parser.add_option("", "--mod-code", type="choice", choices=mod_codes.codes, default=mod_codes.NO_CODE, help="Select modulation code from: %s [default=%%default]" @@ -112,7 +112,7 @@ class generic_mod(gr.hier_block2): self._differential = differential if self._samples_per_symbol < 2: - raise TypeError, ("sbp must be >= 2, is %d" % self._samples_per_symbol) + raise TypeError, ("sbp must be >= 2, is %f" % self._samples_per_symbol) arity = pow(2,self.bits_per_symbol()) diff --git a/gr-digital/python/pkt.py b/gr-digital/python/pkt.py index c9b29bd51..8650bdbb0 100644 --- a/gr-digital/python/pkt.py +++ b/gr-digital/python/pkt.py @@ -52,18 +52,13 @@ class mod_pkts(gr.hier_block2): @type msgq_limit: int @param pad_for_usrp: If true, packets are padded such that they end up a multiple of 128 samples @param use_whitener_offset: If true, start of whitener XOR string is incremented each packet - @param modulate: If false, no modulation will be performed. See gmsk_mod for remaining parameters """ - if modulate: - output_size = gr.sizeof_gr_complex - else: - output_size = gr.sizeof_char gr.hier_block2.__init__(self, "mod_pkts", gr.io_signature(0, 0, 0), # Input signature - gr.io_signature(1, 1, output_size)) # Output signature + gr.io_signature(1, 1, gr.sizeof_gr_complex)) # Output signature self._modulator = modulator self._pad_for_usrp = pad_for_usrp @@ -78,10 +73,7 @@ class mod_pkts(gr.hier_block2): # accepts messages from the outside world self._pkt_input = gr.message_source(gr.sizeof_char, msgq_limit) - if modulate: - self.connect(self._pkt_input, self._modulator, self) - else: - self.connect(self._pkt_input, self) + self.connect(self._pkt_input, self._modulator, self) def send_pkt(self, payload='', eof=False): """ @@ -117,15 +109,13 @@ class demod_pkts(gr.hier_block2): app via the callback. """ - def __init__(self, demodulator, access_code=None, callback=None, threshold=-1, demodulate=True): + def __init__(self, demodulator, access_code=None, callback=None, threshold=-1): """ Hierarchical block for demodulating and deframing packets. The input is the complex modulated signal at baseband. Demodulated packets are sent to the handler. - If demodulator is None it is assumed the input is already demodulated. - @param demodulator: instance of demodulator class (gr_block or hier_block2) @type demodulator: complex baseband in @param access_code: AKA sync vector @@ -136,14 +126,9 @@ class demod_pkts(gr.hier_block2): @type threshold: int """ - if demodulator is not None: - input_size = gr.sizeof_gr_complex - else: - input_size = gr.sizeof_char - gr.hier_block2.__init__(self, "demod_pkts", - gr.io_signature(1, 1, input_size), # Input signature - gr.io_signature(0, 0, 0)) # Output signature + gr.io_signature(1, 1, gr.sizeof_gr_complex), # Input signature + gr.io_signature(0, 0, 0)) # Output signature self._demodulator = demodulator if access_code is None: @@ -159,13 +144,9 @@ class demod_pkts(gr.hier_block2): self.correlator = digital_swig.correlate_access_code_bb(access_code, threshold) self.framer_sink = gr.framer_sink_1(self._rcvd_pktq) - if self._demodulator is not None: - self.connect(self, self._demodulator, self.correlator, self.framer_sink) - else: - self.connect(self, self.correlator, self.framer_sink) + self.connect(self, self._demodulator, self.correlator, self.framer_sink) - if callback is not None: - self._watcher = _queue_watcher_thread(self._rcvd_pktq, callback) + self._watcher = _queue_watcher_thread(self._rcvd_pktq, callback) class _queue_watcher_thread(_threading.Thread): diff --git a/gr-digital/swig/CMakeLists.txt b/gr-digital/swig/CMakeLists.txt index 5c6477aa1..307fba248 100644 --- a/gr-digital/swig/CMakeLists.txt +++ b/gr-digital/swig/CMakeLists.txt @@ -30,7 +30,6 @@ SET(GR_SWIG_INCLUDE_DIRS SET(GR_SWIG_LIBRARIES gnuradio-digital) -GR_SWIG_MAKE(digital_hier digital_hier.i) GR_SWIG_MAKE(digital_swig digital_swig.i) GR_SWIG_INSTALL( @@ -55,6 +54,8 @@ INSTALL( digital_lms_dd_equalizer_cc.i digital_kurtotic_equalizer_cc.i digital_mpsk_receiver_cc.i + digital_gmskmod_bc.i + digital_cpmmod_bc.i DESTINATION ${GR_INCLUDE_DIR}/gnuradio/swig COMPONENT "digital_swig" ) diff --git a/gr-digital/swig/Makefile.am b/gr-digital/swig/Makefile.am index 6604665b0..abc24be19 100644 --- a/gr-digital/swig/Makefile.am +++ b/gr-digital/swig/Makefile.am @@ -42,7 +42,6 @@ noinst_GUILE = digital.test ############################## # SWIG interface and library TOP_SWIG_IFILES = \ - digital_hier.i \ digital_swig.i # Install so that they end up available as: @@ -71,10 +70,9 @@ digital_swig_swiginclude_headers = \ digital_fll_band_edge_cc.i \ digital_lms_dd_equalizer_cc.i \ digital_kurtotic_equalizer_cc.i \ - digital_mpsk_receiver_cc.i - -digital_hier_swig_args = \ - $(GR_DIGITAL_INCLUDES) + digital_mpsk_receiver_cc.i \ + digital_gmskmod_bc.i \ + digital_cpmmod_bc.i digital_swig_swig_args = \ $(GR_DIGITAL_INCLUDES) diff --git a/gr-digital/swig/Makefile.swig.gen b/gr-digital/swig/Makefile.swig.gen index 95d6aea89..ff3eff4e9 100644 --- a/gr-digital/swig/Makefile.swig.gen +++ b/gr-digital/swig/Makefile.swig.gen @@ -140,150 +140,3 @@ gnuradio/digital_swig-primitive.scm: gnuradio/digital_swig.scm -include guile/digital_swig.d endif # end of GUILE - - -# -*- Makefile -*- -# -# 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. -# - -# Makefile.swig.gen for digital_hier.i - -## Default install locations for these files: -## -## Default location for the Python directory is: -## ${prefix}/lib/python${python_version}/site-packages/[category]/digital_hier -## Default location for the Python exec directory is: -## ${exec_prefix}/lib/python${python_version}/site-packages/[category]/digital_hier -## -## The following can be overloaded to change the install location, but -## this has to be done in the including Makefile.am -before- -## Makefile.swig is included. - -digital_hier_pythondir_category ?= gnuradio/digital_hier -digital_hier_pylibdir_category ?= $(digital_hier_pythondir_category) -digital_hier_pythondir = $(pythondir)/$(digital_hier_pythondir_category) -digital_hier_pylibdir = $(pyexecdir)/$(digital_hier_pylibdir_category) - -# The .so libraries for the guile modules get installed whereever guile -# is installed, usually /usr/lib/guile/gnuradio/ -# FIXME: determince whether these should be installed with gnuradio. -digital_hier_scmlibdir = $(libdir) - -# The scm files for the guile modules get installed where ever guile -# is installed, usually /usr/share/guile/site/digital_hier -# FIXME: determince whether these should be installed with gnuradio. -digital_hier_scmdir = $(guiledir) - -## SWIG headers are always installed into the same directory. - -digital_hier_swigincludedir = $(swigincludedir) - -## This is a template file for a "generated" Makefile addition (in -## this case, "Makefile.swig.gen"). By including the top-level -## Makefile.swig, this file will be used to generate the SWIG -## dependencies. Assign the variable TOP_SWIG_FILES to be the list of -## SWIG .i files to generated wrappings for; there can be more than 1 -## so long as the names are unique (no sorting is done on the -## TOP_SWIG_FILES list). This file explicitly assumes that a SWIG .i -## file will generate .cc, .py, and possibly .h files -- meaning that -## all of these files will have the same base name (that provided for -## the SWIG .i file). -## -## This code is setup to ensure parallel MAKE ("-j" or "-jN") does the -## right thing. For more info, see < -## http://sources.redhat.com/automake/automake.html#Multiple-Outputs > - -## Other cleaned files: dependency files generated by SWIG or this Makefile - -MOSTLYCLEANFILES += $(DEPDIR)/*.S* - -## Various SWIG variables. These can be overloaded in the including -## Makefile.am by setting the variable value there, then including -## Makefile.swig . - -digital_hier_swiginclude_HEADERS = \ - digital_hier.i \ - $(digital_hier_swiginclude_headers) - -if PYTHON -digital_hier_pylib_LTLIBRARIES = \ - _digital_hier.la - -_digital_hier_la_SOURCES = \ - python/digital_hier.cc \ - $(digital_hier_la_swig_sources) - -digital_hier_python_PYTHON = \ - digital_hier.py \ - $(digital_hier_python) - -_digital_hier_la_LIBADD = \ - $(STD_SWIG_LA_LIB_ADD) \ - $(digital_hier_la_swig_libadd) - -_digital_hier_la_LDFLAGS = \ - $(STD_SWIG_LA_LD_FLAGS) \ - $(digital_hier_la_swig_ldflags) - -_digital_hier_la_CXXFLAGS = \ - $(STD_SWIG_CXX_FLAGS) \ - -I$(top_builddir) \ - $(digital_hier_la_swig_cxxflags) - -python/digital_hier.cc: digital_hier.py -digital_hier.py: digital_hier.i - -# Include the python dependencies for this file --include python/digital_hier.d - -endif # end of if python - -if GUILE - -digital_hier_scmlib_LTLIBRARIES = \ - libguile-gnuradio-digital_hier.la -libguile_gnuradio_digital_hier_la_SOURCES = \ - guile/digital_hier.cc \ - $(digital_hier_la_swig_sources) -nobase_digital_hier_scm_DATA = \ - gnuradio/digital_hier.scm \ - gnuradio/digital_hier-primitive.scm -libguile_gnuradio_digital_hier_la_LIBADD = \ - $(STD_SWIG_LA_LIB_ADD) \ - $(digital_hier_la_swig_libadd) -libguile_gnuradio_digital_hier_la_LDFLAGS = \ - $(STD_SWIG_LA_LD_FLAGS) \ - $(digital_hier_la_swig_ldflags) -libguile_gnuradio_digital_hier_la_CXXFLAGS = \ - $(STD_SWIG_CXX_FLAGS) \ - -I$(top_builddir) \ - $(digital_hier_la_swig_cxxflags) - -guile/digital_hier.cc: gnuradio/digital_hier.scm -gnuradio/digital_hier.scm: digital_hier.i -gnuradio/digital_hier-primitive.scm: gnuradio/digital_hier.scm - -# Include the guile dependencies for this file --include guile/digital_hier.d - -endif # end of GUILE - - diff --git a/gr-digital/hier/_digital_hier.i b/gr-digital/swig/_digital_hier.i index 022e38644..022e38644 100644 --- a/gr-digital/hier/_digital_hier.i +++ b/gr-digital/swig/_digital_hier.i diff --git a/gr-digital/hier/digital_cpmmod_bc.i b/gr-digital/swig/digital_cpmmod_bc.i index fa7c50da7..fa7c50da7 100644 --- a/gr-digital/hier/digital_cpmmod_bc.i +++ b/gr-digital/swig/digital_cpmmod_bc.i diff --git a/gr-digital/hier/digital_gmskmod_bc.i b/gr-digital/swig/digital_gmskmod_bc.i index ad7b82237..ad7b82237 100644 --- a/gr-digital/hier/digital_gmskmod_bc.i +++ b/gr-digital/swig/digital_gmskmod_bc.i diff --git a/gr-digital/swig/digital_hier.i b/gr-digital/swig/digital_hier.i deleted file mode 100644 index e004461d2..000000000 --- a/gr-digital/swig/digital_hier.i +++ /dev/null @@ -1,40 +0,0 @@ -/* -*- c++ -*- */ -/* - * Copyright 2009,2010 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 this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ - -#ifndef SWIGIMPORTED -%module(directors="1") digital_hier -#endif - - //%feature("autodoc", "1"); // generate python docstrings - -%include "gnuradio.i" // the common stuff - -%include "_digital_hier.i" - -#if SWIGGUILE -%scheme %{ -(load-extension-global "libguile-gnuradio-digital_hier" "scm_init_gnuradio_digital_hier_module") -%} - -%goops %{ - (use-modules (gnuradio gnuradio_core_runtime)) -%} -#endif diff --git a/gr-digital/swig/digital_swig.i b/gr-digital/swig/digital_swig.i index ca50f9c50..2e3a3242e 100644 --- a/gr-digital/swig/digital_swig.i +++ b/gr-digital/swig/digital_swig.i @@ -38,9 +38,10 @@ #include "digital_kurtotic_equalizer_cc.h" #include "digital_lms_dd_equalizer_cc.h" #include "digital_mpsk_receiver_cc.h" +#include "digital_cpmmod_bc.h" +#include "digital_gmskmod_bc.h" %} -%include "digital_hier.i" %include "digital_binary_slicer_fb.i" %include "digital_clock_recovery_mm_cc.i" %include "digital_clock_recovery_mm_ff.i" @@ -55,6 +56,8 @@ %include "digital_kurtotic_equalizer_cc.i" %include "digital_lms_dd_equalizer_cc.i" %include "digital_mpsk_receiver_cc.i" +%include "digital_cpmmod_bc.i" +%include "digital_gmskmod_bc.i" #if SWIGGUILE %scheme %{ |