… | |
… | |
55 | ~io_manager (); |
55 | ~io_manager (); |
56 | }; |
56 | }; |
57 | |
57 | |
58 | extern io_manager iom; |
58 | extern io_manager iom; |
59 | |
59 | |
60 | struct io_watcher : callback<void, short> { |
60 | struct io_watcher : callback2<void, int, short> { |
61 | template<class O1, class O2> |
61 | template<class O1, class O2> |
62 | io_watcher (O1 *object, void (O2::*method)(short revents)) |
62 | io_watcher (O1 *object, void (O2::*method)(int fd, short revents)) |
63 | : callback<void, short>(object,method) |
63 | : callback2<void, int, short>(object,method) |
64 | { } |
64 | { } |
65 | |
65 | |
66 | ~io_watcher () |
66 | ~io_watcher () |
67 | { |
67 | { |
68 | iom.unreg (this); |
68 | iom.unreg (this); |
… | |
… | |
79 | } |
79 | } |
80 | }; |
80 | }; |
81 | |
81 | |
82 | #define TSTAMP_CANCEL -1. |
82 | #define TSTAMP_CANCEL -1. |
83 | |
83 | |
84 | struct time_watcher : callback<void, tstamp &> { |
84 | struct time_watcher : callback1<void, tstamp &> { |
85 | bool registered; // already registered? |
85 | bool registered; // already registered? |
86 | tstamp at; |
86 | tstamp at; |
87 | |
87 | |
88 | template<class O1, class O2> |
88 | template<class O1, class O2> |
89 | time_watcher (O1 *object, void (O2::*method)(tstamp &)) |
89 | time_watcher (O1 *object, void (O2::*method)(tstamp &)) |
90 | : callback<void, tstamp &>(object,method) |
90 | : callback1<void, tstamp &>(object,method) |
91 | , registered(false) |
91 | , registered(false) |
92 | { } |
92 | { } |
93 | |
93 | |
94 | ~time_watcher () |
94 | ~time_watcher () |
95 | { |
95 | { |