summaryrefslogtreecommitdiff
path: root/ev++.h
diff options
context:
space:
mode:
Diffstat (limited to 'ev++.h')
-rw-r--r--ev++.h29
1 files changed, 13 insertions, 16 deletions
diff --git a/ev++.h b/ev++.h
index fea0ac1..71a3d52 100644
--- a/ev++.h
+++ b/ev++.h
@@ -22,10 +22,10 @@ namespace ev {
ev_init (this, 0);
}
- void set_ (void *object, void (*cb)(EV_P_ ev_watcher *w, int revents))
+ void set_ (void *data, void (*cb)(EV_P_ watcher *w, int revents))
{
- this->data = object;
- ev_set_cb (static_cast<ev_watcher *>(this), cb);
+ this->data = data;
+ ev_set_cb (static_cast<watcher *>(this), cb);
}
template<class K, void (K::*method)(watcher &w, int)>
@@ -35,11 +35,10 @@ namespace ev {
}
template<class K, void (K::*method)(watcher &w, int)>
- static void method_thunk (EV_P_ ev_watcher *w, int revents)
+ static void method_thunk (EV_P_ watcher *w, int revents)
{
- watcher *self = static_cast<watcher *>(w);
- K *obj = static_cast<K *>(self->data);
- (obj->*method) (*self, revents);
+ K *obj = static_cast<K *>(w->data);
+ (obj->*method) (*w, revents);
}
template<class K, void (K::*method)(watcher &w, int) const>
@@ -49,24 +48,22 @@ namespace ev {
}
template<class K, void (K::*method)(watcher &w, int) const>
- static void const_method_thunk (EV_P_ ev_watcher *w, int revents)
+ static void const_method_thunk (EV_P_ watcher *w, int revents)
{
- watcher *self = static_cast<watcher *>(w);
- K *obj = static_cast<K *>(self->data);
- (obj->*method) (*self, revents);
+ K *obj = static_cast<K *>(w->data);
+ (obj->*method) (*w, revents);
}
- template<void (*function)(watcher &w, int), void *data = 0>
- void set ()
+ template<void (*function)(watcher &w, int)>
+ void set (void *data = 0)
{
set_ (data, function_thunk<function>);
}
template<void (*function)(watcher &w, int)>
- static void function_thunk (EV_P_ ev_watcher *w, int revents)
+ static void function_thunk (EV_P_ watcher *w, int revents)
{
- watcher *self = static_cast<watcher *>(w);
- function (*self, revents);
+ function (*w, revents);
}
void operator ()(int events = EV_UNDEF)