diff options
Diffstat (limited to 'src/sbus/sbus_codegen')
-rwxr-xr-x | src/sbus/sbus_codegen | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/sbus/sbus_codegen b/src/sbus/sbus_codegen index 86aeff094..d2fe5073d 100755 --- a/src/sbus/sbus_codegen +++ b/src/sbus/sbus_codegen @@ -295,6 +295,17 @@ def header_vtable(iface, methods): out("};") +def header_constants(iface): + out("") + out("/* constants for %s */", iface.name) + out("#define %s \"%s\"", iface.c_name().upper(), iface.name) + for meth in iface.methods: + out("#define %s \"%s\"", meth.fq_c_name().upper(), meth.name) + for sig in iface.signals: + out("#define %s \"%s\"", sig.fq_c_name().upper(), sig.name) + for prop in iface.properties: + out("#define %s \"%s\"", prop.fq_c_name().upper(), prop.name) + def generate_header(ifaces, filename): basename = os.path.basename(filename) guard = "__%s__" % re.sub(r'([^_A-Z0-9])', "_", basename.upper()) @@ -308,6 +319,16 @@ def generate_header(ifaces, filename): out("") out("/* ------------------------------------------------------------------------") + out(" * DBus Constants") + out(" *") + out(" * Various constants of interface and method names mostly for use by clients") + out(" */") + + for iface in ifaces: + header_constants(iface) + + out("") + out("/* ------------------------------------------------------------------------") out(" * DBus Vtable handler structures") out(" *") out(" * These structures are filled in by implementors of the different") |