diff --git a/src/base/callback.hh b/src/base/callback.hh index f1933612ab..cef28c32a9 100644 --- a/src/base/callback.hh +++ b/src/base/callback.hh @@ -29,6 +29,7 @@ #ifndef __BASE_CALLBACK_HH__ #define __BASE_CALLBACK_HH__ +#include #include #include @@ -79,6 +80,21 @@ class MakeCallback : public Callback void process() { (object->*F)(); } }; +class CallbackQueue2 : public std::list> +{ + public: + using Base = std::list>; + + using Base::Base; + + void + process() + { + for (auto &f: *this) + f(); + } +}; + class CallbackQueue { protected: