ACE 8.0.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | Private Attributes | List of all members
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]

Public Types

typedef ACE_ATM_Addr PEER_ADDR
 
typedef ACE_ATM_Stream PEER_STREAM
 

Public Member Functions

 ACE_ATM_Connector ()
 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)
 
bool reset_new_handle (ACE_HANDLE handle)
 Resets any event associations on this handle.
 
void dump () 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

◆ PEER_ADDR

◆ PEER_STREAM

Constructor & Destructor Documentation

◆ ACE_ATM_Connector() [1/2]

ACE_ATM_Connector::ACE_ATM_Connector ( )

Default constructor.

◆ ACE_ATM_Connector() [2/2]

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 )
inline

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

◆ add_leaf()

int ACE_ATM_Connector::add_leaf ( ACE_ATM_Stream & current_stream,
const ACE_Addr & remote_sap,
ACE_ATM_QoS & qos )
inline

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.

◆ complete()

int ACE_ATM_Connector::complete ( ACE_ATM_Stream & new_stream,
ACE_ATM_Addr * remote_sap,
ACE_Time_Value * tv )
inline

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.

◆ connect()

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.

◆ dump()

void ACE_ATM_Connector::dump ( ) const
inline

Dump the state of an object.

◆ reset_new_handle()

bool ACE_ATM_Connector::reset_new_handle ( ACE_HANDLE handle)
inline

Resets any event associations on this handle.

Member Data Documentation

◆ ACE_ALLOC_HOOK_DECLARE

ACE_ATM_Connector::ACE_ALLOC_HOOK_DECLARE

Declare the dynamic allocation hooks.

◆ connector_

ATM_Connector ACE_ATM_Connector::connector_
private

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