#ifndef I{name | to_uppercase}_HPP #define I{name | to_uppercase}_HPP namespace {namespace} \{ class {name} \{ public: {{ for enumeration in enumerations }} /** * @brief {enumeration.name} * */ enum class {enumeration.name} \{ {{ for variant in enumeration.variants }} {variant}, {{ endfor }} }; {{ endfor }} {{ for method in methods }} /** * @brief Set the {method.identifier} object * * @param value */ virtual void {method.identifier}({method.arg_type}) = 0; {{ endfor }} }; } //namespace {namespace} #endif // I{name | to_uppercase}_HPP