summaryrefslogtreecommitdiff
path: root/gr-utils/modtool/core/makeyaml.py
diff options
context:
space:
mode:
Diffstat (limited to 'gr-utils/modtool/core/makeyaml.py')
-rw-r--r--gr-utils/modtool/core/makeyaml.py47
1 files changed, 27 insertions, 20 deletions
diff --git a/gr-utils/modtool/core/makeyaml.py b/gr-utils/modtool/core/makeyaml.py
index 88ba4cdf82..f5baa319bd 100644
--- a/gr-utils/modtool/core/makeyaml.py
+++ b/gr-utils/modtool/core/makeyaml.py
@@ -73,7 +73,8 @@ class ModToolMakeYAML(ModTool):
# This portion will be covered by the CLI
if not self.cli:
self.validate()
- logger.warning("Warning: This is an experimental feature. Don't expect any magic.")
+ logger.warning(
+ "Warning: This is an experimental feature. Don't expect any magic.")
# 1) Go through lib/
if not self.skip_subdirs['lib']:
if self.info['version'] in ('37', '38', '310'):
@@ -158,7 +159,8 @@ class ModToolMakeYAML(ModTool):
ed = CMakeFileEditor(self._file['cmgrc'])
if re.search(fname_yml, ed.cfile) is None and not ed.check_for_glob('*.yml'):
logger.info("Adding GRC bindings to grc/CMakeLists.txt...")
- ed.append_value('install', fname_yml, to_ignore_end='DESTINATION[^()]+')
+ ed.append_value('install', fname_yml,
+ to_ignore_end='DESTINATION[^()]+')
ed.write()
self.scm.mark_files_updated(self._file['cmgrc'])
@@ -186,26 +188,30 @@ class ModToolMakeYAML(ModTool):
def _get_blockdata(fname_cc):
""" 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]
+ 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)
+ contains_modulename = blockname.startswith(
+ self.info['modname'] + '_')
+ blockname = blockname.replace(self.info['modname'] + '_', '', 1)
return (blockname, fname_h, contains_modulename)
# Go, go, go
logger.info(f"Making GRC bindings for {fname_cc}...")
(blockname, fname_h, contains_modulename) = _get_blockdata(fname_cc)
try:
parser = ParserCCBlock(fname_cc,
- os.path.join(self.info['includedir'], fname_h),
+ os.path.join(
+ self.info['includedir'], fname_h),
blockname,
self.info['version'],
_type_translate
)
except IOError:
- raise ModToolException(f"Can't open some of the files necessary to parse {fname_cc}.")
+ raise ModToolException(
+ f"Can't open some of the files necessary to parse {fname_cc}.")
if contains_modulename:
- return (parser.read_params(), parser.read_io_signature(), self.info['modname']+'_'+blockname)
+ return (parser.read_params(), parser.read_io_signature(), self.info['modname'] + '_' + blockname)
else:
return (parser.read_params(), parser.read_io_signature(), blockname)
@@ -218,14 +224,14 @@ def yaml_generator(self, **kwargs):
block = self.modname.split('-')[-1]
label = header.split('_')
del label[-1]
- yml_file = os.path.join('.', block+'_'+header+'.block.yml')
+ yml_file = os.path.join('.', block + '_' + header + '.block.yml')
_header = (('id', f'{block}_{ header}'),
('label', ' '.join(label).upper()),
('category', f'[{block.capitalize()}]'),
('flags', '[python, cpp]')
)
params_list = [
- '${'+s['name']+'}' for s in self.parsed_data['properties'] if self.parsed_data['properties']]
+ '${' + s['name'] + '}' for s in self.parsed_data['properties'] if self.parsed_data['properties']]
str_ = ', '.join(params_list)
_templates = [('imports', f'from gnuradio import {block}'),
('make', f'{block}.{ header}({str_})')
@@ -237,10 +243,10 @@ def yaml_generator(self, **kwargs):
arguments = []
for args in param['arguments_type']:
arguments.append(args['name'])
- arg_list = ['${'+s+'}' for s in arguments if arguments]
+ arg_list = ['${' + s + '}' for s in arguments if arguments]
arg_ = ', '.join(arg_list)
list_callbacks.append(
- param['name']+f'({arg_})')
+ param['name'] + f'({arg_})')
callback_key = ('callbacks')
callbacks = (callback_key, tuple(list_callbacks))
_templates.append(callbacks)
@@ -277,11 +283,11 @@ def yaml_generator(self, **kwargs):
elif i_sig is Constants.MAKE2:
input_sig['domain'] = 'stream'
input_sig['dtype'] = self.parsed_data['io_signature']['input']['sizeof_stream_item' +
- str(port+1)]
+ str(port + 1)]
elif i_sig is Constants.MAKE3:
input_sig['domain'] = 'stream'
input_sig['dtype'] = self.parsed_data['io_signature']['input']['sizeof_stream_item' +
- str(port+1)]
+ str(port + 1)]
elif i_sig is Constants.MAKEV:
input_sig['domain'] = 'stream'
input_sig['dtype'] = self.parsed_data['io_signature']['input']['sizeof_stream_items']
@@ -307,11 +313,11 @@ def yaml_generator(self, **kwargs):
elif o_sig is Constants.MAKE2:
output_sig['domain'] = 'stream'
output_sig['dtype'] = self.parsed_data['io_signature']['output']['sizeof_stream_item' +
- str(port+1)]
+ str(port + 1)]
elif o_sig is Constants.MAKE3:
output_sig['domain'] = 'stream'
output_sig['dtype'] = self.parsed_data['io_signature']['output']['sizeof_stream_item' +
- str(port+1)]
+ str(port + 1)]
elif o_sig is Constants.MAKEV:
output_sig['domain'] = 'stream'
output_sig['dtype'] = self.parsed_data['io_signature']['output']['sizeof_stream_items']
@@ -325,11 +331,12 @@ def yaml_generator(self, **kwargs):
output_signature.append(m_output_sig)
if output_signature:
data['outputs'] = output_signature
-
+
param_ = ', '.join(params_list)
_cpp_templates = [('includes', '#include <gnuradio/{block}/{self.filename}>'),
('declarations', '{block}::{ header}::sptr ${{id}}'),
- ('make', 'this->${{id}} = {block}::{ header}::make({param_})')
+ ('make',
+ 'this->${{id}} = {block}::{ header}::make({param_})')
]
if self.parsed_data['methods']:
@@ -338,10 +345,10 @@ def yaml_generator(self, **kwargs):
arguments = []
for args in param['arguments_type']:
arguments.append(args['name'])
- arg_list = ['${'+s+'}' for s in arguments if arguments]
+ arg_list = ['${' + s + '}' for s in arguments if arguments]
arg_ = ', '.join(arg_list)
list_callbacks.append(
- param['name']+f'({arg_})')
+ param['name'] + f'({arg_})')
callback_key = ('callbacks')
callbacks = (callback_key, tuple(list_callbacks))
_cpp_templates.append(callbacks)