Zigbee Protocol Controller 1.6.0
Unify Multi Invoke C++ template

Template for multiple invoke callback maps.

Template for multiple invoke callback maps.

Template that be used for handling callback maps, where each key may contain multiple callback functions.

Example of Usage:

void my_cb(int arg) {
std::cout << arg << std:endl;
}
void my_2nd_cb(int arg) {
std::cout << arg << std:endl;
}
void my_init() {
multi_invoke<int, int> my_multi_invoke;
my_multi_invoke.add(1, my_cb);
my_multi_invoke.add(1, my_2nd_cb);
my_multi_invoke(1, 42); // Will call my_cb and my_2nd_cb with "42" as arg
my_multi_invoke.erase(1, my_cb); // remove callback to my_cb under key 1
}