X-Git-Url: https://git.gag.com/?a=blobdiff_plain;ds=sidebyside;f=grc%2Fpython%2FGenerator.py;fp=grc%2Fpython%2FGenerator.py;h=acd98ef8414ef2a6ee1241451efd28d76f70e511;hb=35e43e8d8c271e6842191cac3fc3f2f88a861183;hp=33be4a72615e8c6a053e6a87f8de76dd8a75029f;hpb=ea29b08aeb54227e6628f655ccfdb96fe4d8c378;p=debian%2Fgnuradio diff --git a/grc/python/Generator.py b/grc/python/Generator.py index 33be4a72..acd98ef8 100644 --- a/grc/python/Generator.py +++ b/grc/python/Generator.py @@ -1,5 +1,5 @@ """ -Copyright 2008, 2009 Free Software Foundation, Inc. +Copyright 2008, 2009, 2010 Free Software Foundation, Inc. This file is part of GNU Radio GNU Radio Companion is free software; you can redistribute it and/or @@ -19,6 +19,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA import os import subprocess +import tempfile from Cheetah.Template import Template import expr_utils from Constants import \ @@ -45,6 +46,10 @@ class Generator(object): else: self._mode = TOP_BLOCK_FILE_MODE dirname = os.path.dirname(file_path) + #handle the case where the directory is read-only + #in this case, use the system's temp directory + if not os.access(dirname, os.W_OK): + dirname = tempfile.gettempdir() filename = self._flow_graph.get_option('id') + '.py' self._file_path = os.path.join(dirname, filename) @@ -98,7 +103,8 @@ Add a Misc->Throttle block to your flow graph to avoid CPU congestion.''') #list of regular blocks (all blocks minus the special ones) blocks = filter(lambda b: b not in (imports + parameters + variables + probes + notebooks), blocks) + probes #list of connections where each endpoint is enabled - connections = self._flow_graph.get_enabled_connections() + connections = filter(lambda c: not c.is_msg(), self._flow_graph.get_enabled_connections()) + messages = filter(lambda c: c.is_msg(), self._flow_graph.get_enabled_connections()) #list of variable names var_ids = [var.get_id() for var in parameters + variables] #prepend self. @@ -124,6 +130,7 @@ Add a Misc->Throttle block to your flow graph to avoid CPU congestion.''') 'parameters': parameters, 'blocks': blocks, 'connections': connections, + 'messages': messages, 'generate_options': self._generate_options, 'var_id2cbs': var_id2cbs, }