[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commit-gnuradio] r8474 - in grc/trunk/src: grc/elements grc_gnuradio gr
From: |
jblum |
Subject: |
[Commit-gnuradio] r8474 - in grc/trunk/src: grc/elements grc_gnuradio grc_gnuradio/blks2 grc_gnuradio/blocks/misc grc_gnuradio/blocks/sinks grc_gnuradio/blocks/variables grc_gnuradio/data grc_gnuradio/usrp grc_gnuradio/wxgui |
Date: |
Wed, 21 May 2008 13:27:47 -0600 (MDT) |
Author: jblum
Date: 2008-05-21 13:27:46 -0600 (Wed, 21 May 2008)
New Revision: 8474
Added:
grc/trunk/src/grc_gnuradio/blks2/queue.py
grc/trunk/src/grc_gnuradio/blocks/sinks/gr_vector_sink_x.xml
grc/trunk/src/grc_gnuradio/blocks/variables/variable_sink.xml
Modified:
grc/trunk/src/grc/elements/Block.py
grc/trunk/src/grc_gnuradio/FlowGraph.py
grc/trunk/src/grc_gnuradio/Generator.py
grc/trunk/src/grc_gnuradio/Param.py
grc/trunk/src/grc_gnuradio/blks2/__init__.py
grc/trunk/src/grc_gnuradio/blks2/error_rate.py
grc/trunk/src/grc_gnuradio/blks2/packet.py
grc/trunk/src/grc_gnuradio/blocks/misc/gr_throttle.xml
grc/trunk/src/grc_gnuradio/blocks/variables/variable.xml
grc/trunk/src/grc_gnuradio/data/block_tree.xml
grc/trunk/src/grc_gnuradio/data/wx_gui.tmpl
grc/trunk/src/grc_gnuradio/usrp/__init__.py
grc/trunk/src/grc_gnuradio/wxgui/__init__.py
grc/trunk/src/grc_gnuradio/wxgui/callback_controls.py
grc/trunk/src/grc_gnuradio/wxgui/top_block_gui.py
Log:
queue source/sink, variable sink
Modified: grc/trunk/src/grc/elements/Block.py
===================================================================
--- grc/trunk/src/grc/elements/Block.py 2008-05-21 17:58:54 UTC (rev 8473)
+++ grc/trunk/src/grc/elements/Block.py 2008-05-21 19:27:46 UTC (rev 8474)
@@ -174,9 +174,7 @@
def get_sources(self): return self._sources.values()
def get_connections(self):
- connections = list()
- for port in self.get_sources() + self.get_sinks():
connections.extend(port.get_connections())
- return connections
+ return sum([port.get_connections() for port in
self.get_sources() + self.get_sinks()], [])
def resolve_dependencies(self, tmpl):
"""
Modified: grc/trunk/src/grc_gnuradio/FlowGraph.py
===================================================================
--- grc/trunk/src/grc_gnuradio/FlowGraph.py 2008-05-21 17:58:54 UTC (rev
8473)
+++ grc/trunk/src/grc_gnuradio/FlowGraph.py 2008-05-21 19:27:46 UTC (rev
8474)
@@ -42,7 +42,7 @@
try: exec block.get_make() in n
except: pass
#load variables
- for block in filter(lambda b:
b.get_key().startswith('variable'), self.get_blocks()):
+ for block in filter(lambda b: b.get_key() in
('variable', 'variable_slider', 'variable_chooser'), self.get_blocks()):
try:
e = eval(block.get_make(), n, n)
n[block.get_id()] = e
Modified: grc/trunk/src/grc_gnuradio/Generator.py
===================================================================
--- grc/trunk/src/grc_gnuradio/Generator.py 2008-05-21 17:58:54 UTC (rev
8473)
+++ grc/trunk/src/grc_gnuradio/Generator.py 2008-05-21 19:27:46 UTC (rev
8474)
@@ -74,7 +74,7 @@
for block in filter(lambda b: b.get_key() == 'import',
all_blocks):
imports.append(block.get_make())
#separate variables
- variables = filter(lambda b:
b.get_key().startswith('variable'), all_blocks)
+ variables = filter(lambda b: b.get_key() in ('variable',
'variable_slider', 'variable_chooser'), all_blocks)
variables = sorted(variables, lambda x, y: cmp(x.get_id(),
y.get_id()))
#separate blocks
blocks = filter(lambda b: b not in variables and b.get_key() !=
'import', all_blocks)
@@ -97,8 +97,8 @@
imports = sorted(set(imports)) #unique and sorted
#separate variables with wx controls
sliders = filter(lambda v: v.get_key() ==
'variable_slider', variables)
- buttons = filter(lambda v: v.get_key() ==
'variable_button', variables)
choosers = filter(lambda v: v.get_key() ==
'variable_chooser', variables)
+ variable_sinks = filter(lambda v: v.get_key() ==
'variable_sink', blocks)
#graphical sinks
graphical_sinks = filter(lambda b:
b.get_key().startswith('wxgui'), blocks)
#all callbacks
@@ -110,8 +110,8 @@
'flow_graph': self._flow_graph,
'variables': variables,
'sliders': sliders,
- 'buttons': buttons,
'choosers': choosers,
+ 'variable_sinks': variable_sinks,
'blocks': blocks,
'graphical_sinks': graphical_sinks,
'connections':
self._flow_graph.get_connections(),
Modified: grc/trunk/src/grc_gnuradio/Param.py
===================================================================
--- grc/trunk/src/grc_gnuradio/Param.py 2008-05-21 17:58:54 UTC (rev 8473)
+++ grc/trunk/src/grc_gnuradio/Param.py 2008-05-21 19:27:46 UTC (rev 8474)
@@ -246,12 +246,5 @@
@param type the specified type
@return a list of params
"""
- all_params = list()
- #get all blocks
- blocks = self.get_parent().get_parent().get_blocks()
- for block in blocks:
- #filter params of other types
- params = filter(lambda p: p.get_type() == type,
block.get_params())
- all_params.extend(params)
- return all_params
+ return sum([filter(lambda p: p.get_type() == type,
block.get_params()) for block in self.get_parent().get_parent().get_blocks()],
[])
Modified: grc/trunk/src/grc_gnuradio/blks2/__init__.py
===================================================================
--- grc/trunk/src/grc_gnuradio/blks2/__init__.py 2008-05-21 17:58:54 UTC
(rev 8473)
+++ grc/trunk/src/grc_gnuradio/blks2/__init__.py 2008-05-21 19:27:46 UTC
(rev 8474)
@@ -1,5 +1,28 @@
-# make this directory a package
+# Copyright 2008 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 selector import selector, valve
from packet import packet_encoder, packet_decoder
from error_rate import error_rate
+
+from queue import queue_sink_thread
+from queue import queue_sink_c, queue_sink_f, queue_sink_i, queue_sink_s,
queue_sink_b
+from queue import queue_source_c, queue_source_f, queue_source_i,
queue_source_s, queue_source_b
+
Modified: grc/trunk/src/grc_gnuradio/blks2/error_rate.py
===================================================================
--- grc/trunk/src/grc_gnuradio/blks2/error_rate.py 2008-05-21 17:58:54 UTC
(rev 8473)
+++ grc/trunk/src/grc_gnuradio/blks2/error_rate.py 2008-05-21 19:27:46 UTC
(rev 8474)
@@ -1,5 +1,3 @@
-#!/usr/bin/env python
-#
# Copyright 2008 Free Software Foundation, Inc.
#
# This file is part of GNU Radio
Modified: grc/trunk/src/grc_gnuradio/blks2/packet.py
===================================================================
--- grc/trunk/src/grc_gnuradio/blks2/packet.py 2008-05-21 17:58:54 UTC (rev
8473)
+++ grc/trunk/src/grc_gnuradio/blks2/packet.py 2008-05-21 19:27:46 UTC (rev
8474)
@@ -1,5 +1,3 @@
-#!/usr/bin/env python
-#
# Copyright 2008 Free Software Foundation, Inc.
#
# This file is part of GNU Radio
Added: grc/trunk/src/grc_gnuradio/blks2/queue.py
===================================================================
--- grc/trunk/src/grc_gnuradio/blks2/queue.py (rev 0)
+++ grc/trunk/src/grc_gnuradio/blks2/queue.py 2008-05-21 19:27:46 UTC (rev
8474)
@@ -0,0 +1,170 @@
+# Copyright 2008 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
+import gnuradio.gr.gr_threading as _threading
+import numpy
+
+class queue_sink_thread(_threading.Thread):
+ """!
+ Read samples from the queue sink and execute the callback.
+ """
+
+ def __init__(self, queue_sink, callback):
+ """!
+ Queue sink thread contructor.
+ @param queue_sink the queue to pop messages from
+ @param callback the function of one argument
+ """
+ self._queue_sink = queue_sink
+ self._callback = callback
+ _threading.Thread.__init__(self)
+ self.setDaemon(1)
+ self.keep_running = True
+ self.start()
+
+ def run(self):
+ while self.keep_running:
+ self._callback(self._queue_sink.pop())
+
+#######################################################################################
+## Queue Sink
+#######################################################################################
+class _queue_sink_base(gr.hier_block2):
+ """!
+ Queue sink base, a queue sink for any size queue.
+ """
+
+ def __init__(self, vlen=1):
+ """!
+ Queue sink base contructor.
+ @param vlen the vector length
+ """
+ self._vlen = vlen
+ #initialize hier2
+ gr.hier_block2.__init__(
+ self,
+ "queue_sink",
+ gr.io_signature(1, 1, self._item_size*self._vlen), #
Input signature
+ gr.io_signature(0, 0, 0) # Output signature
+ )
+ #create message sink
+ self._msgq = gr.msg_queue(1)
+ message_sink = gr.message_sink(self._item_size*self._vlen,
self._msgq, False) #False -> blocking
+ #connect
+ self.connect(self, message_sink)
+ self.arr = ''
+
+ def pop(self):
+ """!
+ Pop a new sample off the front of the queue.
+ @return a new sample
+ """
+ while len(self.arr) < self._item_size*self._vlen:
+ msg = self._msgq.delete_head()
+ self.arr = self.arr + msg.to_string()
+ sample = self.arr[:self._item_size*self._vlen]
+ self.arr = self.arr[self._item_size*self._vlen:]
+ sample = map(self._cast, numpy.fromstring(sample, self._numpy))
+ if self._vlen == 1: return sample[0]
+ return sample
+
+class queue_sink_c(_queue_sink_base):
+ _item_size = gr.sizeof_gr_complex
+ _numpy = numpy.complex64
+ _cast = complex
+
+class queue_sink_f(_queue_sink_base):
+ _item_size = gr.sizeof_float
+ _numpy = numpy.float32
+ _cast = float
+
+class queue_sink_i(_queue_sink_base):
+ _item_size = gr.sizeof_int
+ _numpy = numpy.int32
+ _cast = int
+
+class queue_sink_s(_queue_sink_base):
+ _item_size = gr.sizeof_short
+ _numpy = numpy.int16
+ _cast = int
+
+class queue_sink_b(_queue_sink_base):
+ _item_size = gr.sizeof_char
+ _numpy = numpy.int8
+ _cast = int
+
+#######################################################################################
+## Queue Source
+#######################################################################################
+class _queue_source_base(gr.hier_block2):
+ """!
+ Queue source base, a queue source for any size queue.
+ """
+
+ def __init__(self, vlen=1):
+ """!
+ Queue source base contructor.
+ @param vlen the vector length
+ """
+ self._vlen = vlen
+ #initialize hier2
+ gr.hier_block2.__init__(
+ self,
+ "queue_source",
+ gr.io_signature(0, 0, 0), # Input signature
+ gr.io_signature(1, 1, self._item_size*self._vlen) #
Output signature
+ )
+ #create message sink
+ message_source = gr.message_source(self._item_size*self._vlen,
1)
+ self._msgq = message_source.msgq()
+ #connect
+ self.connect(message_source, self)
+
+ def push(self, item):
+ """!
+ Push an item into the back of the queue.
+ @param item the item
+ """
+ if self._vlen == 1: item = [item]
+ arr = numpy.array(item, self._numpy)
+ msg = gr.message_from_string(arr.tostring(), 0,
self._item_size, self._vlen)
+ self._msgq.insert_tail(msg)
+
+class queue_source_c(_queue_source_base):
+ _item_size = gr.sizeof_gr_complex
+ _numpy = numpy.complex64
+
+class queue_source_f(_queue_source_base):
+ _item_size = gr.sizeof_float
+ _numpy = numpy.float32
+
+class queue_source_i(_queue_source_base):
+ _item_size = gr.sizeof_int
+ _numpy = numpy.int32
+
+class queue_source_s(_queue_source_base):
+ _item_size = gr.sizeof_short
+ _numpy = numpy.int16
+
+class queue_source_b(_queue_source_base):
+ _item_size = gr.sizeof_char
+ _numpy = numpy.int8
+
Modified: grc/trunk/src/grc_gnuradio/blocks/misc/gr_throttle.xml
===================================================================
--- grc/trunk/src/grc_gnuradio/blocks/misc/gr_throttle.xml 2008-05-21
17:58:54 UTC (rev 8473)
+++ grc/trunk/src/grc_gnuradio/blocks/misc/gr_throttle.xml 2008-05-21
19:27:46 UTC (rev 8474)
@@ -41,7 +41,7 @@
</option>
</param>
<param>
- <name>Samples per Second</name>
+ <name>Sample Rate</name>
<key>samples_per_second</key>
<value>samp_rate</value>
<type>real</type>
Added: grc/trunk/src/grc_gnuradio/blocks/sinks/gr_vector_sink_x.xml
===================================================================
--- grc/trunk/src/grc_gnuradio/blocks/sinks/gr_vector_sink_x.xml
(rev 0)
+++ grc/trunk/src/grc_gnuradio/blocks/sinks/gr_vector_sink_x.xml
2008-05-21 19:27:46 UTC (rev 8474)
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<!DOCTYPE block SYSTEM "../block.dtd">
+<!--
+###################################################
+##Vector sink
+###################################################
+ -->
+<block>
+ <name>Vector Sink</name>
+ <key>gr_vector_sink_x</key>
+ <import>from gnuradio import gr</import>
+ <make>gr.vector_sink_$(type.fcn)()</make>
+ <param>
+ <name>Input Type</name>
+ <key>type</key>
+ <type>enum</type>
+ <option>
+ <name>Complex</name>
+ <key>complex</key>
+ <opt>fcn:c</opt>
+ </option>
+ <option>
+ <name>Float</name>
+ <key>float</key>
+ <opt>fcn:f</opt>
+ </option>
+ <option>
+ <name>Int</name>
+ <key>int</key>
+ <opt>fcn:i</opt>
+ </option>
+ <option>
+ <name>Short</name>
+ <key>short</key>
+ <opt>fcn:s</opt>
+ </option>
+ <option>
+ <name>Byte</name>
+ <key>byte</key>
+ <opt>fcn:b</opt>
+ </option>
+ </param>
+ <sink>
+ <name>in</name>
+ <type>$type</type>
+ </sink>
+</block>
Modified: grc/trunk/src/grc_gnuradio/blocks/variables/variable.xml
===================================================================
--- grc/trunk/src/grc_gnuradio/blocks/variables/variable.xml 2008-05-21
17:58:54 UTC (rev 8473)
+++ grc/trunk/src/grc_gnuradio/blocks/variables/variable.xml 2008-05-21
19:27:46 UTC (rev 8474)
@@ -2,7 +2,7 @@
<!DOCTYPE block SYSTEM "../block.dtd">
<!--
###################################################
-##Variable block: a grc variable with key, value, min, max, step
+##Variable block: a grc variable with key, value
###################################################
-->
<block>
@@ -17,7 +17,6 @@
</param>
<doc>
This block maps a value to a unique variable. \
-This variable block has no graphical representation. \
-Use the variable slider, enum, or button for graphical options.
+This variable block has no graphical representation.
</doc>
</block>
Added: grc/trunk/src/grc_gnuradio/blocks/variables/variable_sink.xml
===================================================================
--- grc/trunk/src/grc_gnuradio/blocks/variables/variable_sink.xml
(rev 0)
+++ grc/trunk/src/grc_gnuradio/blocks/variables/variable_sink.xml
2008-05-21 19:27:46 UTC (rev 8474)
@@ -0,0 +1,68 @@
+<?xml version="1.0"?>
+<!DOCTYPE block SYSTEM "../block.dtd">
+<!--
+###################################################
+##Variable Sink: Custom blks2 block
+###################################################
+ -->
+<block>
+ <name>Variable Sink</name>
+ <key>variable_sink</key>
+ <import>from grc_gnuradio import blks2 as grc_blks2</import>
+ <make>grc_blks2.queue_sink_$(type.fcn)($vlen)</make>
+ <param>
+ <name>Type</name>
+ <key>type</key>
+ <type>enum</type>
+ <option>
+ <name>Complex</name>
+ <key>complex</key>
+ <opt>fcn:c</opt>
+ </option>
+ <option>
+ <name>Float</name>
+ <key>float</key>
+ <opt>fcn:f</opt>
+ </option>
+ <option>
+ <name>Int</name>
+ <key>int</key>
+ <opt>fcn:i</opt>
+ </option>
+ <option>
+ <name>Short</name>
+ <key>short</key>
+ <opt>fcn:s</opt>
+ </option>
+ <option>
+ <name>Byte</name>
+ <key>byte</key>
+ <opt>fcn:b</opt>
+ </option>
+ </param>
+ <param>
+ <name>Variable</name>
+ <key>variable</key>
+ <value></value>
+ <type>string</type>
+ </param>
+ <param>
+ <name>Vec Length</name>
+ <key>vlen</key>
+ <value>1</value>
+ <type>int</type>
+ </param>
+ <check>$vlen > 0</check>
+ <sink>
+ <name>in</name>
+ <type>$type</type>
+ <vlen>$vlen</vlen>
+ </sink>
+ <doc>
+Read samples from the input stream and write each sample to the variable.
+
+The variable must be the id of an existing variable block.
+
+The variable sink is only supported in wx gui mode.
+ </doc>
+</block>
Modified: grc/trunk/src/grc_gnuradio/data/block_tree.xml
===================================================================
--- grc/trunk/src/grc_gnuradio/data/block_tree.xml 2008-05-21 17:58:54 UTC
(rev 8473)
+++ grc/trunk/src/grc_gnuradio/data/block_tree.xml 2008-05-21 19:27:46 UTC
(rev 8474)
@@ -21,6 +21,7 @@
</cat>
<cat>
<name>Sinks</name>
+ <block>gr_vector_sink_x</block>
<block>gr_null_sink</block>
<block>gr_file_sink</block>
<block>gr_udp_sink</block>
@@ -233,6 +234,7 @@
<block>variable</block>
<block>variable_slider</block>
<block>variable_chooser</block>
+ <block>variable_sink</block>
</cat>
<cat>
<name>Misc</name>
Modified: grc/trunk/src/grc_gnuradio/data/wx_gui.tmpl
===================================================================
--- grc/trunk/src/grc_gnuradio/data/wx_gui.tmpl 2008-05-21 17:58:54 UTC (rev
8473)
+++ grc/trunk/src/grc_gnuradio/data/wx_gui.tmpl 2008-05-21 19:27:46 UTC (rev
8474)
@@ -8,8 +8,8 @@
address@hidden blocks the signal blocks
address@hidden connections the connections
address@hidden sliders variable blocks for sliders
address@hidden buttons variable blocks for buttons
address@hidden choosers variable blocks for choosers
address@hidden variable_sinks blocks for variable sinks
address@hidden callbacks the block callback strings
address@hidden graphical_sinks the graphical sink blocks
########################################################
@@ -81,19 +81,26 @@
########################################################
## Create Controls
########################################################
-#for $control in $sliders + $choosers
- #set $id = $control.get_id()
+#for $control in $sliders + $choosers + $variable_sinks
+ #if $control in $variable_sinks
+ #set $id = $control.get_param('variable').evaluate()
+ #else
+ #set $id = $control.get_id()
+ #end if
#set $my_callbacks = filter(lambda c: id in ''.join(c.split('(')[1:]),
$callbacks)
$('#'*50)
# Create control for $id
$('#'*50)
def _set_$(id)(_$id):
+ global $id
$id = _$id
- #for $callback in $my_callbacks
+ #for $callback in $my_callbacks
$callback
- #end for
- #if $control in $sliders
+ #end for
+ #if $control in $variable_sinks
+grc_blks2.queue_sink_thread($control.get_id(), _set_$(id))
+ #elif $control in $sliders
_$(id)_control = grc_wxgui.slider_control(
window=tb.GetWin(),
callback=_set_$(id),
@@ -121,8 +128,10 @@
labels=$control.get_param('labels').to_code(),
)
#end if
-#set $grid_pos = $control.get_param('grid_pos').evaluate()
+ #if $control not in $variable_sinks
+ #set $grid_pos = $control.get_param('grid_pos').evaluate()
tb.GridAdd(_$(id)_control, $grid_pos[0], $grid_pos[1], $grid_pos[2],
$grid_pos[3])
+ #end if
#end for
tb.Run()
Modified: grc/trunk/src/grc_gnuradio/usrp/__init__.py
===================================================================
--- grc/trunk/src/grc_gnuradio/usrp/__init__.py 2008-05-21 17:58:54 UTC (rev
8473)
+++ grc/trunk/src/grc_gnuradio/usrp/__init__.py 2008-05-21 19:27:46 UTC (rev
8474)
@@ -1,4 +1,22 @@
-# make this directory a package
+# Copyright 2008 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 simple_usrp import simple_source_c, simple_source_s
from simple_usrp import dual_source_c, dual_source_s
Modified: grc/trunk/src/grc_gnuradio/wxgui/__init__.py
===================================================================
--- grc/trunk/src/grc_gnuradio/wxgui/__init__.py 2008-05-21 17:58:54 UTC
(rev 8473)
+++ grc/trunk/src/grc_gnuradio/wxgui/__init__.py 2008-05-21 19:27:46 UTC
(rev 8474)
@@ -1,4 +1,22 @@
-# make this directory a package
+# Copyright 2008 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 callback_controls import button_control, drop_down_control,
radio_buttons_horizontal_control, radio_buttons_vertical_control,
slider_control
from top_block_gui import top_block_gui
Modified: grc/trunk/src/grc_gnuradio/wxgui/callback_controls.py
===================================================================
--- grc/trunk/src/grc_gnuradio/wxgui/callback_controls.py 2008-05-21
17:58:54 UTC (rev 8473)
+++ grc/trunk/src/grc_gnuradio/wxgui/callback_controls.py 2008-05-21
19:27:46 UTC (rev 8474)
@@ -1,4 +1,3 @@
-#
# Copyright 2008 Free Software Foundation, Inc.
#
# This file is part of GNU Radio
Modified: grc/trunk/src/grc_gnuradio/wxgui/top_block_gui.py
===================================================================
--- grc/trunk/src/grc_gnuradio/wxgui/top_block_gui.py 2008-05-21 17:58:54 UTC
(rev 8473)
+++ grc/trunk/src/grc_gnuradio/wxgui/top_block_gui.py 2008-05-21 19:27:46 UTC
(rev 8474)
@@ -1,5 +1,3 @@
-#!/usr/bin/env python
-#
# Copyright 2008 Free Software Foundation, Inc.
#
# This file is part of GNU Radio
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Commit-gnuradio] r8474 - in grc/trunk/src: grc/elements grc_gnuradio grc_gnuradio/blks2 grc_gnuradio/blocks/misc grc_gnuradio/blocks/sinks grc_gnuradio/blocks/variables grc_gnuradio/data grc_gnuradio/usrp grc_gnuradio/wxgui,
jblum <=