libutil++  1.9.3
 All Classes Functions Variables
Public Types | Public Member Functions | Static Public Member Functions | List of all members
sella::net::SocketMux Class Reference

Public Types

typedef std::shared_ptr
< SocketMux
shared
 
typedef SocketMuxptr
 
typedef std::map< int,
Socket::shared > 
int_shared_map
 
typedef std::forward_list
< Socket::shared > 
shared_flist
 

Public Member Functions

 SocketMux (ssize_t epollMaxEvents=EPOLL_MAXEVENTS_DEF, bool pthread_cancel=true) throw (SocketException)
 
int epoll (struct timeval *tv=NULL) throw (SocketException)
 
int epoll (uint64_t usec) throw (SocketException)
 
int select (struct timeval *tv=NULL) throw (SocketException)
 
int select (uint64_t usec) throw (SocketException)
 
int rselect (struct timeval *tv=NULL) throw (SocketException)
 
int rselect (uint64_t usec) throw (SocketException)
 
int wselect (struct timeval *tv=NULL) throw (SocketException)
 
int wselect (uint64_t usec) throw (SocketException)
 
int eselect (struct timeval *tv=NULL) throw (SocketException)
 
int eselect (uint64_t usec) throw (SocketException)
 
int rwselect (struct timeval *tv=NULL) throw (SocketException)
 
int rwselect (uint64_t usec) throw (SocketException)
 
void clear (void) throw (SocketException)
 
size_t size (void) const
 
const shared_flist & getReadList (void)
 
const shared_flist & getWriteList (void)
 
const shared_flist & getExceptList (void)
 
bool insertRead (Socket::shared socket) throw (SocketException)
 
bool removeRead (Socket::shared socket) throw (SocketException)
 
bool insertWrite (Socket::shared socket) throw (SocketException)
 
bool removeWrite (Socket::shared socket) throw (SocketException)
 
bool insertExcept (Socket::shared socket) throw (SocketException)
 
bool removeExcept (Socket::shared socket) throw (SocketException)
 

Static Public Member Functions

static const SocketMux::shared shared_ptr (ssize_t epollMaxEvents=EPOLL_MAXEVENTS_DEF, bool pthread_cancel=true) throw (SocketException)
 

Detailed Description

Definition at line 40 of file SocketMux.h.


The documentation for this class was generated from the following files: