diff options
-rw-r--r-- | src/libcamera/control_ids.cpp.in | 13 | ||||
-rwxr-xr-x | src/libcamera/gen-controls.py | 18 |
2 files changed, 24 insertions, 7 deletions
diff --git a/src/libcamera/control_ids.cpp.in b/src/libcamera/control_ids.cpp.in index f699ac9e..dd543382 100644 --- a/src/libcamera/control_ids.cpp.in +++ b/src/libcamera/control_ids.cpp.in @@ -16,9 +16,20 @@ namespace libcamera { +/** + * \brief Namespace for libcamera controls + */ namespace controls { -${controls} +${controls_doc} + +#ifndef __DOXYGEN__ +/* + * Keep the controls definitions hidden from doxygen as it incorrectly parses + * them as functions. + */ +${controls_def} +#endif } /* namespace controls */ diff --git a/src/libcamera/gen-controls.py b/src/libcamera/gen-controls.py index 0899e40b..a3e52fb3 100755 --- a/src/libcamera/gen-controls.py +++ b/src/libcamera/gen-controls.py @@ -17,12 +17,14 @@ def snake_case(s): def generate_cpp(controls): - template = string.Template('''/** + doc_template = string.Template('''/** + * \\var extern const Control<${type}> ${name} ${description} - */ -extern const Control<${type}> ${name}(${id_name}, "${name}");''') + */''') + def_template = string.Template('extern const Control<${type}> ${name}(${id_name}, "${name}");') - ctrls = [] + ctrls_doc = [] + ctrls_def = [] for ctrl in controls: name, ctrl = ctrl.popitem() @@ -39,9 +41,13 @@ extern const Control<${type}> ${name}(${id_name}, "${name}");''') 'id_name': id_name, } - ctrls.append(template.substitute(info)) + ctrls_doc.append(doc_template.substitute(info)) + ctrls_def.append(def_template.substitute(info)) - return {'controls': '\n\n'.join(ctrls)} + return { + 'controls_doc': '\n\n'.join(ctrls_doc), + 'controls_def': '\n'.join(ctrls_def), + } def generate_h(controls): |