From b26ea69676c09f5366a9e2f33b11ae5a7521ffe5 Mon Sep 17 00:00:00 2001
From: jcorgan <jcorgan@221aa14e-8319-0410-a670-987f0aec2ac5>
Date: Sat, 28 Apr 2007 02:20:28 +0000
Subject: Merged -r 5137:5174 from developer branch jcorgan/hb.  Trunk passes
 distcheck. Converts gr.hier_block2 API to not use 'define_component'
 methodology anymore.

git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@5177 221aa14e-8319-0410-a670-987f0aec2ac5
---
 gnuradio-examples/python/hier/dect/README          |  1 +
 .../python/hier/dect/dect_receiver.py              | 28 +++++-----------
 gnuradio-examples/python/hier/dect/gmsk2.py        | 38 +++++-----------------
 gnuradio-examples/python/hier/dect/usrp_source.py  |  4 +--
 4 files changed, 19 insertions(+), 52 deletions(-)

(limited to 'gnuradio-examples/python/hier/dect')

diff --git a/gnuradio-examples/python/hier/dect/README b/gnuradio-examples/python/hier/dect/README
index 231b1af673..c8853f185b 100644
--- a/gnuradio-examples/python/hier/dect/README
+++ b/gnuradio-examples/python/hier/dect/README
@@ -5,6 +5,7 @@ digital cordless phone base stations and handsets.
 Status
 ------
 
+2007 Apr 27 - Converted to new hier_block2 format
 2007 Apr 03 - Development on hold.
 2007 Feb 11 - Added GMSK demodulation and option to log to file
 2007 Feb 10 - Able to tune and log filtered baseband to file
diff --git a/gnuradio-examples/python/hier/dect/dect_receiver.py b/gnuradio-examples/python/hier/dect/dect_receiver.py
index 491159a317..f0ec7ba0c1 100644
--- a/gnuradio-examples/python/hier/dect/dect_receiver.py
+++ b/gnuradio-examples/python/hier/dect/dect_receiver.py
@@ -30,19 +30,15 @@ _dect_channel_bandwidth = 1.728e6
 
 # Top-level hierarchical block that implements DECT demodulation and
 # decoding.
-class dect_receiver(gr.hier_block2):
+class dect_receiver(gr.top_block):
     def __init__(self, options):
-	gr.hier_block2.__init__(self, 
-                                "dect_receiver",        # Block typename
-				gr.io_signature(0,0,0), # Input signature
-				gr.io_signature(0,0,0)) # Output signature
+	gr.top_block.__init__(self, "dect_receiver")
         self._options = options
 
         # Need greater than 2 samples per symbol. This makes a decimation
         # rate of 26 and a samples per symbol of 2.136752
         if_rate = 2.461538e6
-        self._usrp = usrp_source_c(self,
-                                   which=0,
+        self._usrp = usrp_source_c(which=0,
                                    subdev_spec=options.rx_subdev_spec,
                                    if_rate=if_rate,
                                    gain=options.gain,
@@ -67,25 +63,19 @@ class dect_receiver(gr.hier_block2):
         self._demod = gmsk2_demod(samples_per_symbol=if_rate/_dect_symbol_rate,
                                   verbose=options.verbose)
 
-        # Define and connect components
-        self.define_component("usrp", self._usrp)
-        self.define_component("channel", self._channel_filter)
-        self.define_component("demod", self._demod)
-        self.define_component("sink", gr.null_sink(gr.sizeof_char))
-        self.connect("usrp", 0, "channel", 0)
-        self.connect("channel", 0, "demod", 0)
-        self.connect("demod", 0, "sink", 0)
+        self._sink = gr.null_sink(gr.sizeof_char)
+        self.connect(self._usrp, self._channel_filter, self._demod, self._sink)
 
         # Log baseband to file if requested
         if options.log_baseband is not None:
             if options.verbose:
                 print "Logging baseband to file", options.log_baseband
-            self.define_component("baseband_log", gr.file_sink(gr.sizeof_gr_complex, options.log_baseband))
-            self.connect("channel", 0, "baseband_log", 0)
+            self.baseband_log = gr.file_sink(gr.sizeof_gr_complex, options.log_baseband)
+            self.connect(self._channel_filter, self.baseband_log)
 
         # Log demodulator output to file if requested
         if options.log_demod is not None:
             if options.verbose:
                 print "Logging demodulator to file", options.log_demod
-            self.define_component("demod_log", gr.file_sink(gr.sizeof_char, options.log_demod))
-            self.connect("demod", 0, "demod_log", 0)
+            self.demod_log = gr.file_sink(gr.sizeof_char, options.log_demod)
+            self.connect(self._demod, self.demod_log)
diff --git a/gnuradio-examples/python/hier/dect/gmsk2.py b/gnuradio-examples/python/hier/dect/gmsk2.py
index 578873eed5..f7107241f2 100644
--- a/gnuradio-examples/python/hier/dect/gmsk2.py
+++ b/gnuradio-examples/python/hier/dect/gmsk2.py
@@ -106,14 +106,7 @@ class gmsk2_mod(gr.hier_block2):
         if verbose:
             self._print_verbage()
          
-	# Define and connect components
-        self.define_component("nrz", self.nrz)
-        self.define_component("filter", self.gaussian_filter)
-        self.define_component("fmmod", self.fmmod)
-        self.connect("self", 0, "nrz", 0)
-        self.connect("nrz", 0, "filter", 0)
-        self.connect("filter", 0, "fmmod", 0)
-        self.connect("fmmod", 0, "self", 0)
+        self.connect(self, self.nrz, self.gaussian_filter, self.fmmod, self)
 
         if log:
             self._setup_logging()
@@ -125,7 +118,6 @@ class gmsk2_mod(gr.hier_block2):
         return 1
     bits_per_symbol = staticmethod(bits_per_symbol)      # make it a static method.
 
-
     def _print_verbage(self):
         print "bits per symbol = %d" % self.bits_per_symbol()
         print "Gaussian filter bt = %.2f" % self._bt
@@ -133,12 +125,9 @@ class gmsk2_mod(gr.hier_block2):
 
     def _setup_logging(self):
         print "Modulation logging turned on."
-        self.define_component("nrz_log", gr.file_sink(gr.sizeof_float, "nrz.dat"))
-        self.define_component("filter_log", gr.file_sink(gr.sizeof_float, "gaussian_filter.dat"))
-        self.define_component("fmmod_log", gr.file_sink(gr.sizeof_gr_complex, "fmmod.dat"))
-        self.connect("nrz", 0, "nrz_log", 0)
-        self.connect("filter", 0, "filter_log", 0)
-        self.connect("fmmod", 0, "fmmod_log", 0)
+        self.connect(self.nrz, gr.file_sink(gr.sizeof_float, "nrz.dat"))
+        self.connect(self.gaussian_filter, gr.file_sink(gr.sizeof_float, "gaussian_filter.dat"))
+        self.connect(self.fmmod, gr.file_sink(gr.sizeof_gr_complex, "fmmod.dat"))
 
     def add_options(parser):
         """
@@ -232,14 +221,7 @@ class gmsk2_demod(gr.hier_block2):
         if verbose:
             self._print_verbage()
 
-        # Define and connect components
-        self.define_component("fmdemod", self.fmdemod)
-        self.define_component("clock_recovery", self.clock_recovery)
-        self.define_component("slicer", self.slicer)
-        self.connect("self", 0, "fmdemod", 0)
-        self.connect("fmdemod", 0, "clock_recovery", 0)
-        self.connect("clock_recovery", 0, "slicer", 0)
-        self.connect("slicer", 0, "self", 0)
+        self.connect(self, self.fmdemod, self.clock_recovery, self.slicer, self)
 
         if log:
             self._setup_logging()
@@ -251,7 +233,6 @@ class gmsk2_demod(gr.hier_block2):
         return 1
     bits_per_symbol = staticmethod(bits_per_symbol)      # make it a static method.
 
-
     def _print_verbage(self):
         print "bits per symbol = %d" % self.bits_per_symbol()
         print "M&M clock recovery omega = %f" % self._omega
@@ -263,12 +244,9 @@ class gmsk2_demod(gr.hier_block2):
 
     def _setup_logging(self):
         print "Demodulation logging turned on."
-        self.define_component("fmdemod_log", gr.file_sink(gr.sizeof_float, "fmdemod.dat"))
-        self.define_component("clock_recovery_log", gr.file_sink(gr.sizeof_float, "clock_recovery.dat"))
-        self.define_component("slicer_log", gr.file_sink(gr.sizeof_char, "slicer.dat"))
-        self.connect("fmdemod", 0, "fmdemod_log", 0)
-        self.connect("clock_recovery", 0, "clock_recovery_log", 0)
-        self.connect("slicer", 0, "slicer_log", 0)
+        self.connect(fmdemod, gr.file_sink(gr.sizeof_float, "fmdemod.dat"))
+        self.connect(clock_recovery, gr.file_sink(gr.sizeof_float, "clock_recovery.dat"))
+        self.connect(slicer, gr.file_sink(gr.sizeof_char, "slicer.dat"))
 
     def add_options(parser):
         """
diff --git a/gnuradio-examples/python/hier/dect/usrp_source.py b/gnuradio-examples/python/hier/dect/usrp_source.py
index 16949998b8..9226f92060 100644
--- a/gnuradio-examples/python/hier/dect/usrp_source.py
+++ b/gnuradio-examples/python/hier/dect/usrp_source.py
@@ -47,9 +47,7 @@ class usrp_source_c(gr.hier_block2):
         self.set_gain(gain)
         self.set_calibration(calibration)
         self.tune(freq)
-
-        self.define_component("usrp", self._u)
-        self.connect("usrp", 0, "self", 0)
+        self.connect(self._u, self)
 
     def set_subdev(self, subdev_spec):
         if subdev_spec is None:
-- 
cgit v1.2.3