From 542a17226c94eefdf056599397550d048fbd3472 Mon Sep 17 00:00:00 2001 From: Arpit Gupta <guptarpit1997@gmail.com> Date: Wed, 27 Mar 2019 01:08:19 +0530 Subject: gr_modtool: fix for yaml generator --- gr-utils/python/modtool/core/makeyaml.py | 10 +++++++--- gr-utils/python/modtool/tools/grc_yaml_generator.py | 6 +++--- 2 files changed, 10 insertions(+), 6 deletions(-) (limited to 'gr-utils/python') diff --git a/gr-utils/python/modtool/core/makeyaml.py b/gr-utils/python/modtool/core/makeyaml.py index 7f80555338..05903238b6 100644 --- a/gr-utils/python/modtool/core/makeyaml.py +++ b/gr-utils/python/modtool/core/makeyaml.py @@ -149,11 +149,12 @@ class ModToolMakeYAML(ModTool): """ Return the block name and the header file name from the .cc file name """ blockname = os.path.splitext(os.path.basename(fname_cc.replace('_impl.', '.')))[0] fname_h = (blockname + '.h').replace('_impl.', '.') + contains_modulename = blockname.startswith(self.info['modname']+'_') blockname = blockname.replace(self.info['modname']+'_', '', 1) - return (blockname, fname_h) + return (blockname, fname_h, contains_modulename) # Go, go, go logger.info("Making GRC bindings for {}...".format(fname_cc)) - (blockname, fname_h) = _get_blockdata(fname_cc) + (blockname, fname_h, contains_modulename) = _get_blockdata(fname_cc) try: parser = ParserCCBlock(fname_cc, os.path.join(self.info['includedir'], fname_h), @@ -164,4 +165,7 @@ class ModToolMakeYAML(ModTool): except IOError: raise ModToolException("Can't open some of the files necessary to parse {}.".format(fname_cc)) - return (parser.read_params(), parser.read_io_signature(), blockname) + if contains_modulename: + return (parser.read_params(), parser.read_io_signature(), self.info['modname']+'_'+blockname) + else: + return (parser.read_params(), parser.read_io_signature(), blockname) diff --git a/gr-utils/python/modtool/tools/grc_yaml_generator.py b/gr-utils/python/modtool/tools/grc_yaml_generator.py index 5bb0b64047..556ab298cf 100644 --- a/gr-utils/python/modtool/tools/grc_yaml_generator.py +++ b/gr-utils/python/modtool/tools/grc_yaml_generator.py @@ -55,11 +55,11 @@ class GRCYAMLGenerator(object): """ Create and write the YAML bindings for a GRC block. """ def __init__(self, modname=None, blockname=None, doc=None, params=None, iosig=None): """docstring for __init__""" - params_list = ['$'+s['key'] for s in params if s['in_constructor']] + params_list = ['${'+s['key']+'}' for s in params if s['in_constructor']] # Can't make a dict 'cause order matters self._header = (('id', '{}_{}'.format(modname, blockname)), - ('label', blockname.replace('_', ' ').capitalize()), - ('category', '[{}]'.format(modname.upper())) + ('label', blockname.replace('_', ' ')), + ('category', '[{}]'.format(modname.capitalize())) ) self._templates = (('imports', 'import {}'.format(modname)), ('make', '{}.{}({})'.format(modname, blockname, ', '.join(params_list))) -- cgit v1.2.3