Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

ACE_ATM_Connector Class Reference

Defines an active connection factory for the ACE_ATM C++ wrappers. More...

#include <ATM_Connector.h>

Collaboration diagram for ACE_ATM_Connector:

Collaboration graph
[legend]
List of all members.

Public Types

typedef ACE_ATM_Addr PEER_ADDR
typedef ACE_ATM_Stream PEER_STREAM

Public Methods

 ACE_ATM_Connector (void)
 Default constructor.

 ACE_ATM_Connector (ACE_ATM_Stream &new_stream, const ACE_ATM_Addr &remote_sap, ACE_ATM_Params params=ACE_ATM_Params(), ACE_ATM_QoS options=ACE_ATM_QoS(), ACE_Time_Value *timeout=0, const ACE_ATM_Addr &local_sap=ACE_ATM_Addr("", 0), int reuse_addr=0, int flags=0, int perms=0)
int connect (ACE_ATM_Stream &new_stream, const ACE_ATM_Addr &remote_sap, ACE_ATM_Params params=ACE_ATM_Params(), ACE_ATM_QoS options=ACE_ATM_QoS(), ACE_Time_Value *timeout=0, const ACE_ATM_Addr &local_sap=ACE_ATM_Addr("", 0), int reuse_addr=0, int flags=0, int perms=0)
int complete (ACE_ATM_Stream &new_stream, ACE_ATM_Addr *remote_sap, ACE_Time_Value *tv)
int add_leaf (ACE_ATM_Stream &current_stream, const ACE_Addr &remote_sap, ACE_ATM_QoS &qos)
int reset_new_handle (ACE_HANDLE handle)
 Resets any event associations on this handle.

void dump (void) const
 Dump the state of an object.


Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks.


Private Attributes

ATM_Connector connector_

Detailed Description

Defines an active connection factory for the ACE_ATM C++ wrappers.


Member Typedef Documentation

typedef ACE_ATM_Addr ACE_ATM_Connector::PEER_ADDR
 

typedef ACE_ATM_Stream ACE_ATM_Connector::PEER_STREAM
 


Constructor & Destructor Documentation

ACE_ATM_Connector::ACE_ATM_Connector void   
 

Default constructor.

ACE_INLINE ACE_ATM_Connector::ACE_ATM_Connector ACE_ATM_Stream   new_stream,
const ACE_ATM_Addr   remote_sap,
ACE_ATM_Params    params = ACE_ATM_Params(),
ACE_ATM_QoS    options = ACE_ATM_QoS(),
ACE_Time_Value   timeout = 0,
const ACE_ATM_Addr   local_sap = ACE_ATM_Addr("", 0),
int    reuse_addr = 0,
int    flags = 0,
int    perms = 0
 

Actively connect and produce a <new_stream> if things go well. The <remote_sap> is the address that we are trying to connect with. The <params> are the parameters needed for either socket or XTI/ATM connections. The <timeout> is the amount of time to wait to connect. If it's 0 then we block indefinitely. If *timeout == {0, 0} then the connection is done using non-blocking mode. In this case, if the connection can't be made immediately the value of -1 is returned with <errno == EWOULDBLOCK>. If *timeout > {0, 0} then this is the maximum amount of time to wait before timing out. If the time expires before the connection is made <errno == ETIME>. The <local_sap> is the value of local address to bind to. If it's the default value of <ACE_ATM_Addr::sap_any> then the user is letting the OS do the binding. If <reuse_addr> == 1 then the <local_addr> is reused, even if it hasn't been cleanedup yet.


Member Function Documentation

ACE_INLINE int ACE_ATM_Connector::add_leaf ACE_ATM_Stream   current_stream,
const ACE_Addr   remote_sap,
ACE_ATM_QoS   qos
 

Actively add a leaf to the root (i.e., point-to-multipoint). The <remote_sap> is the address of the leaf that we are trying to add.

ACE_INLINE int ACE_ATM_Connector::complete ACE_ATM_Stream   new_stream,
ACE_ATM_Addr   remote_sap,
ACE_Time_Value   tv
 

Try to complete a non-blocking connection. If connection completion is successful then <new_stream> contains the connected ACE_SOCK_Stream. If <remote_sap> is non-NULL then it will contain the address of the connected peer.

int ACE_ATM_Connector::connect ACE_ATM_Stream   new_stream,
const ACE_ATM_Addr   remote_sap,
ACE_ATM_Params    params = ACE_ATM_Params(),
ACE_ATM_QoS    options = ACE_ATM_QoS(),
ACE_Time_Value   timeout = 0,
const ACE_ATM_Addr   local_sap = ACE_ATM_Addr("", 0),
int    reuse_addr = 0,
int    flags = 0,
int    perms = 0
 

Actively connect and produce a <new_stream> if things go well. The <remote_sap> is the address that we are trying to connect with. The <params> are the parameters needed for either socket or XTI/ATM connections. The <timeout> is the amount of time to wait to connect. If it's 0 then we block indefinitely. If *timeout == {0, 0} then the connection is done using non-blocking mode. In this case, if the connection can't be made immediately the value of -1 is returned with <errno == EWOULDBLOCK>. If *timeout > {0, 0} then this is the maximum amount of time to wait before timing out. If the time expires before the connection is made <errno == ETIME>. The <local_sap> is the value of local address to bind to. If it's the default value of <ACE_ATM_Addr::sap_any> then the user is letting the OS do the binding. If <reuse_addr> == 1 then the <local_addr> is reused, even if it hasn't been cleanedup yet.

ACE_INLINE void ACE_ATM_Connector::dump void    const
 

Dump the state of an object.

ACE_INLINE int ACE_ATM_Connector::reset_new_handle ACE_HANDLE    handle
 

Resets any event associations on this handle.


Member Data Documentation

ACE_ATM_Connector::ACE_ALLOC_HOOK_DECLARE
 

Declare the dynamic allocation hooks.

ATM_Connector ACE_ATM_Connector::connector_ [private]
 


The documentation for this class was generated from the following files:
Generated on Fri Apr 2 16:47:07 2004 for ACE by doxygen1.2.18