removed is_running method from gr_top_block
[debian/gnuradio] / gr-utils / src / python / usrp_siggen.py
index f0a096e2d259b3f0c3404e0b5d386d922af9165e..add3888ba277de2c792377c13973bd4aa0a0cd3c 100755 (executable)
@@ -69,23 +69,22 @@ class my_top_block(gr.top_block):
         # self.file_sink = gr.file_sink (gr.sizeof_gr_complex, "siggen.dat")
 
     def _configure_graph (self, type):
-        was_running = self.is_running ()
-        if was_running:
-            self.stop ()
-        self.disconnect_all ()
-        if type == gr.GR_SIN_WAVE or type == gr.GR_CONST_WAVE:
-            self.connect (self.siggen, self.u)
-            # self.connect (self.siggen, self.file_sink)
-            self.siggen.set_waveform (type)
-            self.src = self.siggen
-        elif type == gr.GR_UNIFORM or type == gr.GR_GAUSSIAN:
-            self.connect (self.noisegen, self.u)
-            self.noisegen.set_type (type)
-            self.src = self.noisegen
-        else:
-            raise ValueError, type
-        if was_running:
-            self.start ()
+        try:
+            self.lock()
+            self.disconnect_all ()
+            if type == gr.GR_SIN_WAVE or type == gr.GR_CONST_WAVE:
+                self.connect (self.siggen, self.u)
+                # self.connect (self.siggen, self.file_sink)
+                self.siggen.set_waveform (type)
+                self.src = self.siggen
+            elif type == gr.GR_UNIFORM or type == gr.GR_GAUSSIAN:
+                self.connect (self.noisegen, self.u)
+                self.noisegen.set_type (type)
+                self.src = self.noisegen
+            else:
+                raise ValueError, type
+        finally:
+            self.unlock()
 
     def set_freq(self, target_freq):
         """