ACE_Addr Class Reference

Defines the base class for the "address family independent" address format. More...

#include <Addr.h>

Inheritance diagram for ACE_Addr:

Inheritance graph
[legend]
Collaboration diagram for ACE_Addr:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 ACE_Addr (int type=-1, int size=-1)
 Initializes instance variables.

virtual ~ACE_Addr (void)
 Destructor.

int get_size (void) const
 Return the size of the address.

void set_size (int size)
 Sets the size of the address.

int get_type (void) const
 Get the type of the address.

void set_type (int type)
 Set the type of the address.

virtual void * get_addr (void) const
 Return a pointer to the address.

virtual void set_addr (void *, int len)
 Set a pointer to the address.

bool operator== (const ACE_Addr &sap) const
 Check for address equality.

bool operator!= (const ACE_Addr &sap) const
 Check for address inequality.

void base_set (int type, int size)
 Initializes instance variables.

virtual unsigned long hash (void) const
void dump (void) const
 Dump the state of an object.


Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks.


Static Public Attributes

const ACE_Addr sap_any
 Wild-card address.


Protected Attributes

int addr_type_
 e.g., AF_UNIX, AF_INET, AF_SPIPE, etc.

int addr_size_
 Number of bytes in the address.


Detailed Description

Defines the base class for the "address family independent" address format.

Definition at line 32 of file Addr.h.


Constructor & Destructor Documentation

ACE_Addr::ACE_Addr int  type = -1,
int  size = -1
 

Initializes instance variables.

Definition at line 30 of file Addr.cpp.

References base_set().

00031 {
00032   this->base_set (type, size);
00033 }

ACE_Addr::~ACE_Addr void   )  [virtual]
 

Destructor.

Definition at line 35 of file Addr.cpp.

00036 {
00037 }


Member Function Documentation

void ACE_Addr::base_set int  type,
int  size
 

Initializes instance variables.

Definition at line 53 of file Addr.cpp.

References addr_size_, and addr_type_.

Referenced by ACE_Addr(), ACE_UNIX_Addr::set(), ACE_SPIPE_Addr::set(), ACE_Netlink_Addr::set(), ACE_INET_Addr::set(), ACE_FILE_Addr::set(), ACE_DEV_Addr::set(), ACE_ATM_Addr::set(), ACE_UNIX_Addr::set_addr(), ACE_SPIPE_Addr::set_addr(), ACE_ATM_Addr::set_addr(), ACE_INET_Addr::set_address(), and ACE_ATM_Addr::string_to_addr().

00054 {
00055   this->addr_type_ = type;
00056   this->addr_size_ = size;
00057 }

void ACE_Addr::dump void   )  const
 

Dump the state of an object.

Reimplemented in ACE_ATM_Addr, ACE_DEV_Addr, ACE_FILE_Addr, ACE_INET_Addr, ACE_MEM_Addr, ACE_SPIPE_Addr, and ACE_UNIX_Addr.

Definition at line 60 of file Addr.cpp.

References ACE_BEGIN_DUMP, ACE_DEBUG, ACE_END_DUMP, ACE_LIB_TEXT, ACE_TRACE, and LM_DEBUG.

00061 {
00062 #if defined (ACE_HAS_DUMP)
00063   ACE_TRACE ("ACE_Addr::dump");
00064 
00065   ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this));
00066   ACE_DEBUG ((LM_DEBUG, ACE_LIB_TEXT ("addr_type_ = %d"), this->addr_type_));
00067   ACE_DEBUG ((LM_DEBUG, ACE_LIB_TEXT ("\naddr_size_ = %d"), this->addr_size_));
00068   ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP));
00069 #endif /* ACE_HAS_DUMP */
00070 }

void * ACE_Addr::get_addr void   )  const [virtual]
 

Return a pointer to the address.

Reimplemented in ACE_ATM_Addr, ACE_DEV_Addr, ACE_FILE_Addr, ACE_INET_Addr, ACE_MEM_Addr, ACE_Netlink_Addr, ACE_SPIPE_Addr, and ACE_UNIX_Addr.

Definition at line 40 of file Addr.cpp.

Referenced by ACE_SOCK_SEQPACK_Acceptor::accept(), ACE_SOCK_Acceptor::accept(), ACE_LSOCK_Acceptor::accept(), ACE_XTI_ATM_Mcast::add_leaf(), ACE_ATM_Connector::add_leaf(), ACE_TLI_Connector::complete(), ACE_SOCK_SEQPACK_Connector::complete(), ACE_SOCK_Connector::complete(), ACE_TLI_Connector::connect(), ACE_SOCK_SEQPACK_Connector::connect(), ACE_SOCK_Connector::connect(), ACE_WIN32_Asynch_Connect::connect_i(), ACE_POSIX_Asynch_Connect::connect_i(), ACE_TLI::get_local_addr(), ACE_SOCK::get_local_addr(), ACE_TLI_Stream::get_remote_addr(), ACE_SOCK::get_remote_addr(), ACE_TLI_Acceptor::open(), ACE_SOCK_CODgram::open(), open_new_endpoint(), ACE_SOCK_Dgram::recv(), ACE_ICMP_Socket::recv(), ACE_WIN32_Asynch_Read_Dgram_Result::saddr(), ACE_POSIX_Asynch_Read_Dgram_Result::saddr(), ACE_WIN32_Asynch_Write_Dgram::send(), ACE_SOCK_Dgram_Bcast::send(), ACE_SOCK_Dgram::send(), ACE_ICMP_Socket::send(), ACE_SOCK_SEQPACK_Connector::shared_connect_start(), ACE_SOCK_Connector::shared_connect_start(), ACE_SOCK_SEQPACK_Acceptor::shared_open(), ACE_SOCK_Dgram::shared_open(), ACE_SOCK_Acceptor::shared_open(), and ACE_ICMP_Socket::shared_open().

00041 {
00042   return 0;
00043 }

ACE_INLINE int ACE_Addr::get_size void   )  const
 

Return the size of the address.

Definition at line 26 of file Addr.inl.

References addr_size_.

Referenced by ACE_SOCK_SEQPACK_Acceptor::accept(), ACE_SOCK_Acceptor::accept(), ACE_LSOCK_Acceptor::accept(), ACE_WIN32_Asynch_Read_Dgram_Result::ACE_WIN32_Asynch_Read_Dgram_Result(), ACE_XTI_ATM_Mcast::add_leaf(), ACE::bind_port(), ACE_TLI_Connector::complete(), ACE_SOCK_SEQPACK_Connector::complete(), ACE_SOCK_Connector::complete(), ACE_TLI_Connector::connect(), ACE_SOCK_SEQPACK_Connector::connect(), ACE_SOCK_Connector::connect(), ACE_WIN32_Asynch_Connect::connect_i(), ACE_POSIX_Asynch_Connect::connect_i(), ACE_INET_Addr::get_host_addr(), ACE_TLI::get_local_addr(), ACE_SOCK::get_local_addr(), ACE_ATM_Stream::get_peer_name(), ACE_TLI_Stream::get_remote_addr(), ACE_SOCK::get_remote_addr(), ACE_TLI_Acceptor::open(), ACE_SOCK_CODgram::open(), ACE_Asynch_Acceptor< HANDLER >::open(), open_new_endpoint(), ACE_INET_Addr::operator==(), ACE_SOCK_Dgram::recv(), ACE_ICMP_Socket::recv(), ACE_WIN32_Asynch_Read_Dgram_Result::remote_address(), ACE_POSIX_Asynch_Read_Dgram_Result::remote_address(), ACE_WIN32_Asynch_Write_Dgram::send(), ACE_SOCK_Dgram_Bcast::send(), ACE_SOCK_Dgram::send(), ACE_ICMP_Socket::send(), ACE_Ping_Socket::send_echo_check(), ACE_UNIX_Addr::set(), ACE_SPIPE_Addr::set(), ACE_Netlink_Addr::set(), ACE_INET_Addr::set(), ACE_FILE_Addr::set(), ACE_DEV_Addr::set(), ACE_ATM_Addr::set(), ACE_SOCK_SEQPACK_Connector::shared_connect_start(), ACE_SOCK_Connector::shared_connect_start(), ACE_SOCK_SEQPACK_Acceptor::shared_open(), ACE_SOCK_Dgram::shared_open(), ACE_SOCK_Acceptor::shared_open(), and ACE_ICMP_Socket::shared_open().

00027 {
00028   return this->addr_size_;
00029 }

ACE_INLINE int ACE_Addr::get_type void   )  const
 

Get the type of the address.

Definition at line 42 of file Addr.inl.

References addr_type_.

Referenced by ACE_SOCK_SEQPACK_Connector::connect(), ACE_SOCK_Connector::connect(), ACE_WIN32_Asynch_Connect::connect_i(), ACE_POSIX_Asynch_Connect::connect_i(), ACE_INET_Addr::get_addr_size(), ACE_INET_Addr::get_host_addr(), ACE_INET_Addr::get_host_name_i(), ACE_INET_Addr::get_ip_address(), ACE_INET_Addr::get_port_number(), ACE_INET_Addr::hash(), ACE_INET_Addr::ip_addr_pointer(), ACE_INET_Addr::ip_addr_size(), ACE_INET_Addr::is_any(), ACE_INET_Addr::is_ipv4_compat_ipv6(), ACE_INET_Addr::is_ipv4_mapped_ipv6(), ACE_INET_Addr::is_linklocal(), ACE_INET_Addr::is_loopback(), ACE_SOCK_SEQPACK_Acceptor::open(), ACE_SOCK_Dgram_Mcast::open(), ACE_SOCK_Dgram::open(), ACE_SOCK_Acceptor::open(), ACE_Asynch_Acceptor< HANDLER >::open(), ACE_SOCK_Dgram_Mcast::open_i(), ACE_INET_Addr::operator==(), ACE_WIN32_Asynch_Read_Dgram_Result::remote_address(), ACE_POSIX_Asynch_Read_Dgram_Result::remote_address(), ACE_INET_Addr::reset(), ACE_UNIX_Addr::set(), ACE_SPIPE_Addr::set(), ACE_Netlink_Addr::set(), ACE_INET_Addr::set(), ACE_FILE_Addr::set(), ACE_DEV_Addr::set(), ACE_ATM_Addr::set(), ACE_INET_Addr::set_address(), ACE_INET_Addr::set_interface(), ACE_SOCK_Dgram_Mcast::set_option(), ACE_INET_Addr::set_port_number(), ACE_SOCK_Dgram_Mcast::subscribe_i(), ACE_SOCK_Dgram_Mcast::subscribe_ifs(), ACE_SOCK_Dgram_Mcast::unsubscribe_i(), and ACE_SOCK_Dgram_Mcast::unsubscribe_ifs().

00043 {
00044   return this->addr_type_;
00045 }

ACE_INLINE unsigned long ACE_Addr::hash void   )  const [virtual]
 

Returns a hash value. This should be overwritten by a subclass that can produce a better hash value.

Reimplemented in ACE_INET_Addr, ACE_MEM_Addr, and ACE_UNIX_Addr.

Definition at line 56 of file Addr.inl.

00057 {
00058   return 0;
00059 }

ACE_INLINE bool ACE_Addr::operator!= const ACE_Addr sap  )  const
 

Check for address inequality.

Definition at line 17 of file Addr.inl.

References addr_size_, and addr_type_.

00018 {
00019   return (sap.addr_type_ != this->addr_type_ ||
00020           sap.addr_size_ != this->addr_size_   );
00021 }

ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE bool ACE_Addr::operator== const ACE_Addr sap  )  const
 

Check for address equality.

Definition at line 10 of file Addr.inl.

References addr_size_, and addr_type_.

00011 {
00012   return (sap.addr_type_ == this->addr_type_ &&
00013           sap.addr_size_ == this->addr_size_   );
00014 }

void ACE_Addr::set_addr void *  ,
int  len
[virtual]
 

Set a pointer to the address.

Reimplemented in ACE_ATM_Addr, ACE_INET_Addr, ACE_MEM_Addr, ACE_Netlink_Addr, ACE_SPIPE_Addr, and ACE_UNIX_Addr.

Definition at line 46 of file Addr.cpp.

Referenced by ACE_TLI_Acceptor::accept(), ACE_WIN32_Asynch_Read_Dgram_Result::remote_address(), and ACE_POSIX_Asynch_Read_Dgram_Result::remote_address().

00047 {
00048 }

ACE_INLINE void ACE_Addr::set_size int  size  ) 
 

Sets the size of the address.

Definition at line 34 of file Addr.inl.

References addr_size_.

Referenced by ACE_SPIPE_Acceptor::accept(), ACE_SOCK_SEQPACK_Acceptor::accept(), ACE_SOCK_Acceptor::accept(), ACE_LSOCK_Acceptor::accept(), ACE_WIN32_Asynch_Read_Dgram_Result::complete(), ACE_POSIX_Asynch_Read_Dgram_Result::complete(), ACE_SOCK::get_local_addr(), ACE_SOCK_SEQPACK_Association::get_local_addrs(), ACE_SOCK::get_remote_addr(), ACE_SOCK_SEQPACK_Association::get_remote_addrs(), ACE_SOCK_Dgram::recv(), ACE_ICMP_Socket::recv(), ACE_INET_Addr::set(), and ACE_INET_Addr::set_address().

00035 {
00036   this->addr_size_ = size;
00037 }

ACE_INLINE void ACE_Addr::set_type int  type  ) 
 

Set the type of the address.

Definition at line 50 of file Addr.inl.

References addr_type_.

Referenced by ACE_SOCK_SEQPACK_Acceptor::accept(), ACE_SOCK_Acceptor::accept(), ACE_SOCK::get_local_addr(), ACE_SOCK_SEQPACK_Association::get_local_addrs(), ACE_SOCK::get_remote_addr(), ACE_SOCK_SEQPACK_Association::get_remote_addrs(), ACE_SOCK_Dgram::recv(), ACE_INET_Addr::set(), and ACE_INET_Addr::set_addr().

00051 {
00052   this->addr_type_ = type;
00053 }


Member Data Documentation

ACE_Addr::ACE_ALLOC_HOOK_DECLARE
 

Declare the dynamic allocation hooks.

Reimplemented in ACE_ATM_Addr, ACE_DEV_Addr, ACE_FILE_Addr, ACE_INET_Addr, ACE_MEM_Addr, ACE_Netlink_Addr, ACE_SPIPE_Addr, and ACE_UNIX_Addr.

Definition at line 86 of file Addr.h.

int ACE_Addr::addr_size_ [protected]
 

Number of bytes in the address.

Definition at line 93 of file Addr.h.

Referenced by base_set(), get_size(), operator!=(), operator==(), and set_size().

int ACE_Addr::addr_type_ [protected]
 

e.g., AF_UNIX, AF_INET, AF_SPIPE, etc.

Definition at line 90 of file Addr.h.

Referenced by base_set(), get_type(), operator!=(), operator==(), and set_type().

ACE_BEGIN_VERSIONED_NAMESPACE_DECL const ACE_Addr ACE_Addr::sap_any [static]
 

Wild-card address.


The documentation for this class was generated from the following files:
Generated on Thu Nov 9 11:19:09 2006 for ACE by doxygen 1.3.6