diff options
Diffstat (limited to 'Swiften/EventLoop/EventLoop.cpp')
| m--------- | Swiften | 0 | ||||
| -rw-r--r-- | Swiften/EventLoop/EventLoop.cpp | 49 | 
2 files changed, 0 insertions, 49 deletions
diff --git a/Swiften b/Swiften new file mode 160000 +Subproject 8213ba16d0043d2461f4b031c881d61dda5a38c diff --git a/Swiften/EventLoop/EventLoop.cpp b/Swiften/EventLoop/EventLoop.cpp deleted file mode 100644 index 3c3c356..0000000 --- a/Swiften/EventLoop/EventLoop.cpp +++ /dev/null @@ -1,49 +0,0 @@ -#include "Swiften/EventLoop/EventLoop.h" - -#include <algorithm> -#include <boost/bind.hpp> - -#include "Swiften/EventLoop/MainEventLoop.h" - -namespace Swift { - -EventLoop::EventLoop() : nextEventID_(0) { -	MainEventLoop::setInstance(this); -} - -EventLoop::~EventLoop() { -	MainEventLoop::resetInstance(); -} - -void EventLoop::handleEvent(const Event& event) { -	bool doCallback = false; -	{ -		boost::lock_guard<boost::mutex> lock(eventsMutex_); -		std::list<Event>::iterator i = std::find(events_.begin(), events_.end(), event); -		if (i != events_.end()) { -			doCallback = true; -			events_.erase(i); -		} -	} -	if (doCallback) { -		event.callback(); -	} -} - -void EventLoop::postEvent(boost::function<void ()> callback, boost::shared_ptr<EventOwner> owner) { -	Event event(owner, callback); -	{ -		boost::lock_guard<boost::mutex> lock(eventsMutex_); -		event.id = nextEventID_; -		nextEventID_++; -		events_.push_back(event); -	} -	post(event); -} - -void EventLoop::removeEventsFromOwner(boost::shared_ptr<EventOwner> owner) { -		boost::lock_guard<boost::mutex> lock(eventsMutex_); -		events_.remove_if(HasOwner(owner)); -} - -}  | 
 Swift