namespace fpoller {
extern const short WRITE;
extern const short READ;
template<typename Delegate> class basic_poller {
private:
Delegate delegate_;
public:
basic_poller():delegate_(){}
void add(int fd,short interest, callback * cb){
delegate_.add(fd,interest,cb);}
void remove(int fd,short interest){
delegate_.remove(fd,interest);}
void remove(int fd){ remove(fd,WRITE); remove(fd,READ);}
int poll(int timeout){return delegate_.poll(timeout);}
};
}
End of Listing