ACE_TLI_Acceptor Class Reference

Defines the member functions for ACE_TLI_Acceptor abstraction. More...

#include <TLI_Acceptor.h>

Inheritance diagram for ACE_TLI_Acceptor:

Inheritance graph
[legend]
Collaboration diagram for ACE_TLI_Acceptor:

Collaboration graph
[legend]
List of all members.

Public Types

typedef ACE_INET_Addr PEER_ADDR
typedef ACE_TLI_Stream PEER_STREAM

Public Member Functions

 ACE_TLI_Acceptor (void)
 Default constructor.
 ACE_TLI_Acceptor (const ACE_Addr &remote_sap, int reuse_addr=0, int oflag=O_RDWR, struct t_info *info=0, int backlog=ACE_DEFAULT_BACKLOG, const char device[]=ACE_TLI_TCP_DEVICE)
 Initiate a passive mode socket.
ACE_HANDLE open (const ACE_Addr &remote_sap, int reuse_addr=0, int oflag=O_RDWR, struct t_info *info=0, int backlog=ACE_DEFAULT_BACKLOG, const char device[]=ACE_TLI_TCP_DEVICE)
 Initiate a passive mode socket.
int close (void)
 Close down the acceptor and release resources.
int accept (ACE_TLI_Stream &new_tli_sap, ACE_Addr *remote_addr=0, ACE_Time_Value *timeout=0, int restart=1, int reset_new_handle=0, int rwflag=1, netbuf *udata=0, netbuf *opt=0)
void dump (void) const
 Dump the state of an object.

Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks.

Private Member Functions

int handle_async_event (int restart, int rwflag)
 Handle TLI accept insanity...

Private Attributes

const char * device_
 Network "device" we are using.
int backlog_
 Number of connections to queue.
int rwflag_
 Are we using "tirdwr" mod?
ACE_TLI_Request_Queuequeue_
 Used for queueing up pending requests.
t_discon * disp_
 Used for handling disconnects.

Friends

class ACE_Request_Queue

Detailed Description

Defines the member functions for ACE_TLI_Acceptor abstraction.

This class implements the algorithm described in Steve Rago's book on System V UNIX network programming. It basically makes TLI look like the C++ SOCK_SAP socket wrappers with respect to establishing passive-mode listener endpoints.


Member Typedef Documentation

typedef ACE_INET_Addr ACE_TLI_Acceptor::PEER_ADDR

typedef ACE_TLI_Stream ACE_TLI_Acceptor::PEER_STREAM


Constructor & Destructor Documentation

ACE_TLI_Acceptor::ACE_TLI_Acceptor ( void   ) 

Default constructor.

ACE_TLI_Acceptor::ACE_TLI_Acceptor ( const ACE_Addr remote_sap,
int  reuse_addr = 0,
int  oflag = O_RDWR,
struct t_info *  info = 0,
int  backlog = ACE_DEFAULT_BACKLOG,
const char  device[] = ACE_TLI_TCP_DEVICE 
)

Initiate a passive mode socket.


Member Function Documentation

int ACE_TLI_Acceptor::accept ( ACE_TLI_Stream new_tli_sap,
ACE_Addr remote_addr = 0,
ACE_Time_Value timeout = 0,
int  restart = 1,
int  reset_new_handle = 0,
int  rwflag = 1,
netbuf *  udata = 0,
netbuf *  opt = 0 
)

Accept a new data transfer connection. A <timeout> of 0 means block forever, a <timeout> of {0, 0} means poll. <restart> == 1 means "restart if interrupted."

int ACE_TLI_Acceptor::close ( void   ) 

Close down the acceptor and release resources.

Reimplemented from ACE_TLI.

void ACE_TLI_Acceptor::dump ( void   )  const

Dump the state of an object.

Reimplemented from ACE_TLI.

int ACE_TLI_Acceptor::handle_async_event ( int  restart,
int  rwflag 
) [private]

Handle TLI accept insanity...

ACE_HANDLE ACE_TLI_Acceptor::open ( const ACE_Addr remote_sap,
int  reuse_addr = 0,
int  oflag = O_RDWR,
struct t_info *  info = 0,
int  backlog = ACE_DEFAULT_BACKLOG,
const char  device[] = ACE_TLI_TCP_DEVICE 
)

Initiate a passive mode socket.


Friends And Related Function Documentation

friend class ACE_Request_Queue [friend]


Member Data Documentation

ACE_TLI_Acceptor::ACE_ALLOC_HOOK_DECLARE

Declare the dynamic allocation hooks.

Reimplemented from ACE_TLI.

int ACE_TLI_Acceptor::backlog_ [private]

Number of connections to queue.

const char* ACE_TLI_Acceptor::device_ [private]

Network "device" we are using.

struct t_discon* ACE_TLI_Acceptor::disp_ [private]

Used for handling disconnects.

ACE_TLI_Request_Queue* ACE_TLI_Acceptor::queue_ [private]

Used for queueing up pending requests.

int ACE_TLI_Acceptor::rwflag_ [private]

Are we using "tirdwr" mod?


The documentation for this class was generated from the following files:
Generated on Tue Nov 21 09:22:31 2006 for ACE by  doxygen 1.4.7-1