Add callback groups
Allow named collections of callbacks to be defined and used anywhere
callbacks are used.
Change-Id: I3224aa06b2250e9a055bc70d20c186caecd033af
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/src/templates/generated.mako.hpp b/src/templates/generated.mako.hpp
index 61c2b6f..67b9149 100644
--- a/src/templates/generated.mako.hpp
+++ b/src/templates/generated.mako.hpp
@@ -128,6 +128,23 @@
}
};
+struct ConfigPropertyCallbackGroups
+{
+ using CallbackGroups = std::array<std::vector<size_t>, ${len(callbackgroups)}>;
+ static auto& get()
+ {
+ static const CallbackGroups propertyCallbackGraph =
+ {
+ {
+% for g in callbackgroups:
+ {${', '.join([str(x) for x in g.members])}},
+% endfor
+ }
+ };
+ return propertyCallbackGraph;
+ }
+};
+
struct ConfigPropertyCallbacks
{
using Callbacks = std::array<std::unique_ptr<Callback>, ${len(callbacks)}>;