Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes

socket_t Class Reference

List of all members.

Public Types

enum  socket_domain { sock_any_domain, sock_local_domain, sock_global_domain }

Public Member Functions

virtual int read (void *buf, size_t min_size, size_t max_size, time_t timeout=((time_t)-1))=0
virtual int write (void const *buf, size_t size, time_t timeout=((time_t)-1))=0
virtual int sendto (int ip_addr, int ip_port, void const *buf, size_t size)=0
virtual int recvfrom (int &ip_addr, int &ip_port, void *buf, size_t size)=0
virtual int is_ok ()=0
virtual void get_error_text (char *buf, size_t buf_size)=0
virtual socket_taccept ()=0
int rpoll (time_t timeout=((time_t)-1))
int wpoll (time_t timeout=((time_t)-1))
virtual int cancel_accept ()=0
virtual int shutdown ()=0
virtual int close ()=0
virtual ~socket_t ()
 socket_t ()

Static Public Member Functions

static socket_tconnect (char const *address, socket_domain domain=sock_any_domain, int max_attempts=10, time_t timeout=1)
static socket_tcreate_local (char const *address, int listen_queue_size=5)
static socket_tcreate_global (char const *address, int listen_queue_size=5)
static socket_tcreate_dgram (char const *address=NULL, int flags=0)
static int get_ip (char const *address)

Protected Types

enum  { ss_open, ss_shutdown, ss_close }

Protected Member Functions

virtual int poll (time_t timeout, bool read)=0

Protected Attributes

enum socket_t:: { ... }  state

Member Enumeration Documentation

anonymous enum [protected]
Enumerator:
ss_open 
ss_shutdown 
ss_close 
Enumerator:
sock_any_domain 
sock_local_domain 
sock_global_domain 

Constructor & Destructor Documentation

virtual socket_t::~socket_t (  )  [inline, virtual]
socket_t::socket_t (  )  [inline]

Member Function Documentation

virtual socket_t* socket_t::accept (  )  [pure virtual]
virtual int socket_t::cancel_accept (  )  [pure virtual]
virtual int socket_t::close (  )  [pure virtual]
static socket_t* socket_t::connect ( char const *  address,
socket_domain  domain = sock_any_domain,
int  max_attempts = 10,
time_t  timeout = 1 
) [static]
static socket_t* socket_t::create_dgram ( char const *  address = NULL,
int  flags = 0 
) [static]
static socket_t* socket_t::create_global ( char const *  address,
int  listen_queue_size = 5 
) [static]
static socket_t* socket_t::create_local ( char const *  address,
int  listen_queue_size = 5 
) [static]
virtual void socket_t::get_error_text ( char *  buf,
size_t  buf_size 
) [pure virtual]
static int socket_t::get_ip ( char const *  address  )  [static]
virtual int socket_t::is_ok (  )  [pure virtual]
virtual int socket_t::poll ( time_t  timeout,
bool  read 
) [protected, pure virtual]
virtual int socket_t::read ( void *  buf,
size_t  min_size,
size_t  max_size,
time_t  timeout = ((time_t)-1) 
) [pure virtual]
virtual int socket_t::recvfrom ( int &  ip_addr,
int &  ip_port,
void *  buf,
size_t  size 
) [pure virtual]
int socket_t::rpoll ( time_t  timeout = ((time_t)-1)  )  [inline]
virtual int socket_t::sendto ( int  ip_addr,
int  ip_port,
void const *  buf,
size_t  size 
) [pure virtual]
virtual int socket_t::shutdown (  )  [pure virtual]
int socket_t::wpoll ( time_t  timeout = ((time_t)-1)  )  [inline]
virtual int socket_t::write ( void const *  buf,
size_t  size,
time_t  timeout = ((time_t)-1) 
) [pure virtual]

Member Data Documentation

enum { ... } socket_t::state [protected]