summaryrefslogtreecommitdiffstats
path: root/src/Net/FdManager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/Net/FdManager.cpp')
-rw-r--r--src/Net/FdManager.cpp11
1 files changed, 4 insertions, 7 deletions
diff --git a/src/Net/FdManager.cpp b/src/Net/FdManager.cpp
index c7abe73..d8faef4 100644
--- a/src/Net/FdManager.cpp
+++ b/src/Net/FdManager.cpp
@@ -24,9 +24,6 @@
#include <unistd.h>
#include <sys/fcntl.h>
-#include <sigc++/adaptors/hide.h>
-#include <sigc++/bind.h>
-
namespace Mad {
namespace Net {
@@ -43,7 +40,7 @@ FdManager::FdManager() : running(false) {
flags = fcntl(interruptPipe[1], F_GETFL, 0);
fcntl(interruptPipe[1], F_SETFL, flags | O_NONBLOCK);
- registerFd(interruptPipe[0], sigc::hide(sigc::mem_fun(this, &FdManager::readInterrupt)), POLLIN);
+ registerFd(interruptPipe[0], boost::bind(&FdManager::readInterrupt, this), POLLIN);
}
FdManager::~FdManager() {
@@ -54,7 +51,7 @@ FdManager::~FdManager() {
}
-bool FdManager::registerFd(int fd, const sigc::slot<void, short> &handler, short events) {
+bool FdManager::registerFd(int fd, const boost::function1<void, short> &handler, short events) {
struct pollfd pollfd = {fd, events, 0};
boost::lock(handlerLock, eventLock);
@@ -149,11 +146,11 @@ void FdManager::ioThread() {
if(poll(fdarray, count, -1) > 0) {
handlerLock.lock_shared();
- std::queue<sigc::slot<void> > calls;
+ std::queue<boost::function0<void> > calls;
for(size_t n = 0; n < count; ++n) {
if(fdarray[n].revents)
- calls.push(sigc::bind(handlers[fdarray[n].fd], fdarray[n].revents));
+ calls.push(boost::bind(handlers[fdarray[n].fd], fdarray[n].revents));
}
handlerLock.unlock_shared();