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

IFullAddress Class Reference
[AddressesInterfaces]

Inheritance diagram for IFullAddress:
Collaboration diagram for IFullAddress:

List of all members.


Detailed Description

An interface that represents an IAddress which knows about its address type and that can create dynamically allocated copies of itself.

Public Member Functions

 IFullAddress ()
 Instances of this interface can be deleted by their users.
 IFullAddress (const IFullAddress &rhs)
 ~IFullAddress () override
IFullAddressoperator= (const IFullAddress &rhs)
virtual const
IAddressType
Type () const =0
 Returns the address type for the address.
virtual IFullAddressClone () const =0
 Dynamically allocates a copy of this address. You are responsible for deallocating this copy with delete when you're done with it..
virtual bool IsWildcardAddress () const override=0
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.

Static Public Member Functions

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

Constructor & Destructor Documentation

IFullAddress (  ) 

Instances of this interface can be deleted by their users.

IFullAddress ( const IFullAddress rhs  ) 

~IFullAddress (  )  [override]


Member Function Documentation

IFullAddress& operator= ( const IFullAddress rhs  ) 

virtual const IAddressType& Type (  )  const [pure virtual]

Returns the address type for the address.

Implemented in CAddressIPv4, CAddressIPv6, CFullAddress, and CFullAddressWrapper.

virtual IFullAddress* Clone (  )  const [pure virtual]

Dynamically allocates a copy of this address. You are responsible for deallocating this copy with delete when you're done with it..

Implemented in CAddressIPv4, CAddressIPv6, CFullAddress, and CFullAddressWrapper.

virtual bool IsWildcardAddress (  )  const [override, pure virtual]

bool IsValid ( const IAddress address  )  [static, inherited]

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

virtual unsigned short Family (  )  const [pure virtual, inherited]

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

virtual int Size (  )  const [pure virtual, inherited]

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, inherited]

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:22 2021 for The Server Framework - v7.4 by doxygen 1.5.3