iolooper.h revision 5d8f37ad78fc66901af50c762029a501561f3b23
15d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner#ifndef IOLOOPER_H 25d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner#define IOLOOPER_H 35d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner 45d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner#include <stdint.h> 55d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner 65d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner/* An IOLooper is an abstraction for select() */ 75d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner 85d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turnertypedef struct IoLooper IoLooper; 95d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner 105d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' TurnerIoLooper* iolooper_new(void); 115d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turnervoid iolooper_free( IoLooper* iol ); 125d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turnervoid iolooper_reset( IoLooper* iol ); 135d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner 145d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turnervoid iolooper_add_read( IoLooper* iol, int fd ); 155d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turnervoid iolooper_add_write( IoLooper* iol, int fd ); 165d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turnervoid iolooper_del_read( IoLooper* iol, int fd ); 175d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turnervoid iolooper_del_write( IoLooper* iol, int fd ); 185d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner 195d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turnerint iolooper_poll( IoLooper* iol ); 205d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turnerint iolooper_wait( IoLooper* iol, int64_t duration ); 215d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner 225d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turnerint iolooper_is_read( IoLooper* iol, int fd ); 235d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turnerint iolooper_is_write( IoLooper* iol, int fd ); 245d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner 255d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner#endif /* IOLOOPER_H */ 26