diff --git a/src/utils/signal.hpp b/src/utils/signal.hpp index 0720454955..4215e44e05 100644 --- a/src/utils/signal.hpp +++ b/src/utils/signal.hpp @@ -1,12 +1,14 @@ -#pragma +#pragma once -#include +#include template class signal_ { public: + using key_type = unsigned; + template - unsigned connect(F f) { + key_type connect(F f) { ++counter; functors[counter] = f; return counter; @@ -26,6 +28,6 @@ class signal_ { } private: - unsigned counter = 0; - std::map> functors; + key_type counter = 0; + std::unordered_map> functors; };