diff options
Diffstat (limited to 'sensor_gen.py')
-rwxr-xr-x | sensor_gen.py | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/sensor_gen.py b/sensor_gen.py new file mode 100755 index 0000000..bedf4f8 --- /dev/null +++ b/sensor_gen.py @@ -0,0 +1,43 @@ +#!/usr/bin/env python + +import os +import yaml +import argparse +from mako.template import Template +import contextlib + +if __name__ == '__main__': + script_dir = os.path.dirname(os.path.realpath(__file__)) + parser = argparse.ArgumentParser() + parser.add_argument( + "-f", "--filename", + default='occ_sensor.yaml', + help="Input File Name") + parser.add_argument( + "-i", "--input-dir", + dest='inputdir', + default=script_dir, + help="Input directory") + + args = parser.parse_args() + + # Default to the one that is in the current. + yaml_dir = script_dir + yaml_file = os.path.join(yaml_dir, 'occ_sensor.yaml') + + if args.inputdir: + yaml_dir = args.inputdir + + if args.filename: + yaml_file = os.path.join(yaml_dir, args.filename) + + with open(yaml_file, 'r') as fd: + ifile = yaml.safe_load(fd) + + # Render the mako template + template = os.path.join(script_dir, 'occ_sensor.mako.hpp') + t = Template(filename=template) + with open('occ_sensor.hpp', 'w') as fd: + fd.write( + t.render( + occDict=ifile)) |