diff options
Diffstat (limited to 'Swiften/EventLoop')
-rw-r--r-- | Swiften/EventLoop/Event.h | 22 | ||||
-rw-r--r-- | Swiften/EventLoop/EventLoop.h | 16 |
2 files changed, 24 insertions, 14 deletions
diff --git a/Swiften/EventLoop/Event.h b/Swiften/EventLoop/Event.h new file mode 100644 index 0000000..edd35f4 --- /dev/null +++ b/Swiften/EventLoop/Event.h @@ -0,0 +1,22 @@ +#pragma once + +#include <boost/shared_ptr.hpp> +#include <boost/function.hpp> + +#include "Swiften/EventLoop/EventOwner.h" + +namespace Swift { + struct Event { + Event(boost::shared_ptr<EventOwner> owner, const boost::function<void()>& callback) : + owner(owner), callback(callback) { + } + + bool operator==(const Event& o) const { + return o.id == id; + } + + unsigned int id; + boost::shared_ptr<EventOwner> owner; + boost::function<void()> callback; + }; +} diff --git a/Swiften/EventLoop/EventLoop.h b/Swiften/EventLoop/EventLoop.h index bf6f929..2b45288 100644 --- a/Swiften/EventLoop/EventLoop.h +++ b/Swiften/EventLoop/EventLoop.h @@ -4,6 +4,8 @@ #include <boost/thread/mutex.hpp> #include <list> +#include "Swiften/EventLoop/Event.h" + namespace Swift { class EventOwner; class EventLoop { @@ -15,20 +17,6 @@ namespace Swift { void removeEventsFromOwner(boost::shared_ptr<EventOwner> owner); protected: - struct Event { - Event(boost::shared_ptr<EventOwner> owner, const boost::function<void()>& callback) : - owner(owner), callback(callback) { - } - - bool operator==(const Event& o) const { - return o.id == id; - } - - unsigned int id; - boost::shared_ptr<EventOwner> owner; - boost::function<void()> callback; - }; - /** * Reimplement this to call handleEvent(event) from the thread in which * the event loop is residing. |