The C++ framework for developing highly scalable, high performance servers on Windows platforms.

IAddress Class Reference
[AddressesInterfacesProtected destructors on abstract base classes]

Inheritance diagram for IAddress:

List of all members.


Detailed Description

An interface that represents a Winsock address. This interface only deals with the data that's available from the underlying address; none of the 'meta-data' related to the address type is available; see IFullAddress for that stuff.

Public Member Functions

 IAddress ()
 IAddress (const IAddress &rhs)
IAddressoperator= (const IAddress &rhs)
virtual unsigned short Family () const =0
 Returns the address family of the address.
virtual const sockaddr & AsSockAddr () const =0
 Returns the address as a reference to a sockaddr structure.
virtual int Size () const =0
 Returns the size of the sockaddr structure required to store the address.
virtual IAddressRefGetAddressRef () const =0
 Returns a reference counted view on this address, be sure to call Release() on the IAdressRef when you're done with it.
virtual bool IsWildcardAddress () const =0

Static Public Member Functions

static bool IsValid (const IAddress &address)
static bool IsSameAddress (const IAddress &lhs, const IAddress &rhs)

Protected Member Functions

virtual ~IAddress ()
 We never delete instances of this interface; you must manage the lifetime of the class that implements it.

Constructor & Destructor Documentation

IAddress (  ) 

IAddress ( const IAddress rhs  ) 

virtual ~IAddress (  )  [protected, virtual]

We never delete instances of this interface; you must manage the lifetime of the class that implements it.


Member Function Documentation

bool IsValid ( const IAddress address  )  [static]

bool IsSameAddress ( const IAddress lhs,
const IAddress rhs 
) [static]

IAddress& operator= ( const IAddress rhs  ) 

Reimplemented in CAddress.

virtual unsigned short Family (  )  const [pure virtual]

virtual const sockaddr& AsSockAddr (  )  const [pure virtual]

virtual int Size (  )  const [pure virtual]

Returns the size of the sockaddr structure required to store the address.

Implemented in CAddress, CAddressImpl, CAddressInfo::Iterator, CAddressIPv4, CAddressIPv6, CAddressWrapper, CFullAddress, CFullAddressWrapper, and CNetworkInterfaceAddresses::Iterator.

virtual IAddressRef* GetAddressRef (  )  const [pure virtual]

Returns a reference counted view on this address, be sure to call Release() on the IAdressRef when you're done with it.

Implemented in CAddress, CAddressImpl, CAddressInfo::Iterator, CAddressIPv4, CAddressIPv6, CAddressWrapper, CFullAddress, CFullAddressWrapper, and CNetworkInterfaceAddresses::Iterator.


Generated on Sun Sep 12 19:10:14 2021 for The Server Framework - v7.4 by doxygen 1.5.3