32 lines
		
	
	
		
			1012 B
		
	
	
	
		
			Factor
		
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			1012 B
		
	
	
	
		
			Factor
		
	
	
| ! Copyright (C) 2008 Slava Pestov.
 | |
| ! See http://factorcode.org/license.txt for BSD license.
 | |
| IN: unix.linux.epoll
 | |
| USING: alien.syntax math ;
 | |
| 
 | |
| FUNCTION: int epoll_create ( int size ) ;
 | |
| 
 | |
| FUNCTION: int epoll_ctl ( int epfd, int op, int fd, epoll_event* event ) ;
 | |
| 
 | |
| C-STRUCT: epoll-event
 | |
|     { "uint" "events" }
 | |
|     { "uint" "fd" }
 | |
|     { "uint" "padding" } ;
 | |
| 
 | |
| FUNCTION: int epoll_wait ( int epfd, epoll_event* events, int maxevents, int timeout ) ;
 | |
| 
 | |
| : EPOLL_CTL_ADD 1 ; inline ! Add a file decriptor to the interface.
 | |
| : EPOLL_CTL_DEL 2 ; inline ! Remove a file decriptor from the interface.
 | |
| : EPOLL_CTL_MOD 3 ; inline ! Change file decriptor epoll_event structure.
 | |
| 
 | |
| : EPOLLIN     HEX: 001 ; inline
 | |
| : EPOLLPRI    HEX: 002 ; inline
 | |
| : EPOLLOUT    HEX: 004 ; inline
 | |
| : EPOLLRDNORM HEX: 040 ; inline
 | |
| : EPOLLRDBAND HEX: 080 ; inline
 | |
| : EPOLLWRNORM HEX: 100 ; inline
 | |
| : EPOLLWRBAND HEX: 200 ; inline
 | |
| : EPOLLMSG    HEX: 400 ; inline
 | |
| : EPOLLERR    HEX: 008 ; inline
 | |
| : EPOLLHUP    HEX: 010 ; inline
 | |
| : EPOLLET     31 2^    ; inline
 |