summaryrefslogtreecommitdiff
path: root/grc
diff options
context:
space:
mode:
authorJosh Blum2009-08-25 14:56:47 -0700
committerJosh Blum2009-08-25 14:56:47 -0700
commitaf5701409859af4b20a03bfd6b2cebf3559b1b3d (patch)
tree66d51b6a67c3ad48a3f33ff301b752a9d45b360a /grc
parente6f9073f11e016fba2793c3a6d9c026399994e08 (diff)
downloadgnuradio-af5701409859af4b20a03bfd6b2cebf3559b1b3d.tar.gz
gnuradio-af5701409859af4b20a03bfd6b2cebf3559b1b3d.tar.bz2
gnuradio-af5701409859af4b20a03bfd6b2cebf3559b1b3d.zip
Work on command line options for generated code.
Simplified eng_option eng_float to reuse str_to_num code.
Diffstat (limited to 'grc')
-rw-r--r--grc/blocks/options.xml1
-rw-r--r--grc/blocks/parameter.xml9
-rw-r--r--grc/python/flow_graph.tmpl22
-rw-r--r--grc/todo.txt3
4 files changed, 26 insertions, 9 deletions
diff --git a/grc/blocks/options.xml b/grc/blocks/options.xml
index 18d6e2f0c..a28a0b143 100644
--- a/grc/blocks/options.xml
+++ b/grc/blocks/options.xml
@@ -17,6 +17,7 @@ import wx
#if $generate_options() != 'hb'
from optparse import OptionParser
from gnuradio.eng_option import eng_option
+from gnuradio import eng_notation
#end if
</import>
<make></make>
diff --git a/grc/blocks/parameter.xml b/grc/blocks/parameter.xml
index 5d08c4b39..e35b8f4d1 100644
--- a/grc/blocks/parameter.xml
+++ b/grc/blocks/parameter.xml
@@ -45,7 +45,7 @@
</option>
<option>
<name>Int</name>
- <key>int</key>
+ <key>intx</key>
<opt>type:int</opt>
</option>
<option>
@@ -58,6 +58,13 @@
<key>string</key>
<opt>type:string</opt>
</option>
+ <!-- not supported yet in tmpl
+ <option>
+ <name>Boolean</name>
+ <key>bool</key>
+ <opt>type:bool</opt>
+ </option>
+ -->
</param>
<param>
<name>Short ID</name>
diff --git a/grc/python/flow_graph.tmpl b/grc/python/flow_graph.tmpl
index 32139636a..924a280c4 100644
--- a/grc/python/flow_graph.tmpl
+++ b/grc/python/flow_graph.tmpl
@@ -211,6 +211,20 @@ class $(class_name)(gr.hier_block2):
## For top block code, generate a main routine.
## Instantiate the top block and run as gui or cli.
########################################################
+#def make_default($type, $param)
+ #if $type == 'eng_float'
+eng_notation.num_to_str($param.get_make())#slurp
+ #else
+$param.get_make()#slurp
+ #end if
+#end def
+#def make_short_id($param)
+ #set $short_id = $param.get_param('short_id').get_evaluated()
+ #if $short_id
+ #set $short_id = '-' + $short_id
+ #end if
+$short_id#slurp
+#end def
#if $generate_options != 'hb'
if __name__ == '__main__':
parser = OptionParser(option_class=eng_option, usage="%prog: [options]")
@@ -219,12 +233,8 @@ if __name__ == '__main__':
#set $type = $param.get_param('type').get_value()
#if $type
#silent $params_eq_list.append('%s=options.%s'%($param.get_id(), $param.get_id()))
- #set $short_id = $param.get_param('short_id').get_evaluated()
- #if $short_id
- #set $short_id = '-' + $short_id
- #end if
- parser.add_option("$short_id", "--$param.get_id()", dest="$param.get_id()", type="$type", default=$param.get_make(),
- help="Set $($param.get_param('label').evaluate() or $param.get_id()) [default=%default]")
+ parser.add_option("$make_short_id($param)", "--$param.get_id().replace('_', '-')", dest="$param.get_id()", type="$type", default=$make_default($type, $param),
+ help="Set $($param.get_param('label').get_evaluated() or $param.get_id()) [default=%default]")
#end if
#end for
(options, args) = parser.parse_args()
diff --git a/grc/todo.txt b/grc/todo.txt
index 577e4c330..ad02bf790 100644
--- a/grc/todo.txt
+++ b/grc/todo.txt
@@ -25,8 +25,7 @@
* size params for the graphical sinks
* callbacks for set average on fft, waterfall, number sinks
* add units to params: Sps, Hz, dB...
-* command line options should replace _ with - for the --option
- * add bool type to command line option store_true or store_false
+* add bool type to command line option store_true or store_false
##################################################
# Features