TSockAddr Class Reference

#include <es_sock.h>

Link against: esock.lib

class TSockAddr : public TBuf8< KMaxSockAddrSize >
Public Member Functions
TSockAddr()
TSockAddr(TUint)
IMPORT_C TBoolCmpPort(const TSockAddr &)
IMPORT_C TUintFamily()
IMPORT_C TIntGetUserLen()
IMPORT_C TUintPort()
IMPORT_C voidSetFamily(TUint)
IMPORT_C voidSetPort(TUint)
Protected Member Functions
IMPORT_C voidSetUserLen(TInt)
TUint8 *UserPtr()
Inherited Attributes
TBuf8< KMaxSockAddrSize >::iBuf
TDes8::__DECLARE_TEST
TDes8::iMaxLength
Inherited Functions
TBuf8< KMaxSockAddrSize >::TBuf8()
TBuf8< KMaxSockAddrSize >::TBuf8(TInt)
TBuf8< KMaxSockAddrSize >::TBuf8(const TDesC8 &)
TBuf8< KMaxSockAddrSize >::TBuf8(const TUint8 *)
TBuf8< KMaxSockAddrSize >::operator=(const TBuf8< S > &)
TBuf8< KMaxSockAddrSize >::operator=(const TDesC8 &)
TBuf8< KMaxSockAddrSize >::operator=(const TUint8 *)
TBufBase8::TBufBase8(TInt)
TBufBase8::TBufBase8(TInt,TInt)
TBufBase8::TBufBase8(const TDesC8 &,TInt)
TBufBase8::TBufBase8(const TUint8 *,TInt)
TDes8::Append(TChar)
TDes8::Append(const TDesC16 &)
TDes8::Append(const TDesC8 &)
TDes8::Append(const TUint8 *,TInt)
TDes8::AppendFill(TChar,TInt)
TDes8::AppendFormat(TRefByValue< const TDesC8 >,...)
TDes8::AppendFormat(TRefByValue< const TDesC8 >,TDes8Overflow *,...)
TDes8::AppendFormatList(const TDesC8 &,VA_LIST,TDes8Overflow *)
TDes8::AppendJustify(const TDesC8 &,TInt,TAlign,TChar)
TDes8::AppendJustify(const TDesC8 &,TInt,TInt,TAlign,TChar)
TDes8::AppendJustify(const TUint8 *,TInt,TAlign,TChar)
TDes8::AppendJustify(const TUint8 *,TInt,TInt,TAlign,TChar)
TDes8::AppendNum(TInt64)
TDes8::AppendNum(TReal,const TRealFormat &)
TDes8::AppendNum(TUint64,TRadix)
TDes8::AppendNumFixedWidth(TUint,TRadix,TInt)
TDes8::AppendNumFixedWidthUC(TUint,TRadix,TInt)
TDes8::AppendNumUC(TUint64,TRadix)
TDes8::Capitalize()
TDes8::Collapse()
TDes8::Collate()
TDes8::Copy(const TDesC16 &)
TDes8::Copy(const TDesC8 &)
TDes8::Copy(const TUint8 *)
TDes8::Copy(const TUint8 *,TInt)
TDes8::CopyC(const TDesC8 &)
TDes8::CopyCP(const TDesC8 &)
TDes8::CopyF(const TDesC8 &)
TDes8::CopyLC(const TDesC8 &)
TDes8::CopyUC(const TDesC8 &)
TDes8::Delete(TInt,TInt)
TDes8::DoAppendNum(TUint64,TRadix,TUint,TInt)
TDes8::DoPadAppendNum(TInt,TInt,const TUint8 *)
TDes8::Expand()
TDes8::Fill(TChar)
TDes8::Fill(TChar,TInt)
TDes8::FillZ()
TDes8::FillZ(TInt)
TDes8::Fold()
TDes8::Format(TRefByValue< const TDesC8 >,...)
TDes8::FormatList(const TDesC8 &,VA_LIST)
TDes8::Insert(TInt,const TDesC8 &)
TDes8::Justify(const TDesC8 &,TInt,TAlign,TChar)
TDes8::LeftTPtr(TInt)const
TDes8::LowerCase()
TDes8::MaxLength()const
TDes8::MaxSize()const
TDes8::MidTPtr(TInt)const
TDes8::MidTPtr(TInt,TInt)const
TDes8::Num(TInt64)
TDes8::Num(TReal,const TRealFormat &)
TDes8::Num(TUint64,TRadix)
TDes8::NumFixedWidth(TUint,TRadix,TInt)
TDes8::NumFixedWidthUC(TUint,TRadix,TInt)
TDes8::NumUC(TUint64,TRadix)
TDes8::PtrZ()
TDes8::Repeat(const TDesC8 &)
TDes8::Repeat(const TUint8 *,TInt)
TDes8::Replace(TInt,TInt,const TDesC8 &)
TDes8::RightTPtr(TInt)const
TDes8::SetLength(TInt)
TDes8::SetMax()
TDes8::Swap(TDes8 &)
TDes8::TDes8()
TDes8::TDes8(TInt,TInt,TInt)
TDes8::Trim()
TDes8::TrimAll()
TDes8::TrimLeft()
TDes8::TrimRight()
TDes8::UpperCase()
TDes8::WPtr()const
TDes8::Zero()
TDes8::ZeroTerminate()
TDes8::operator+=(const TDesC8 &)
TDes8::operator=(const TDes8 &)
TDes8::operator[](TInt)
TDes8::operator[](TInt)const
TDesC8::Alloc()const
TDesC8::AllocL()const
TDesC8::AllocLC()const
TDesC8::AtC(TInt)const
TDesC8::Compare(const TDesC8 &)const
TDesC8::CompareC(const TDesC8 &)const
TDesC8::CompareF(const TDesC8 &)const
TDesC8::DoSetLength(TInt)
TDesC8::Find(const TDesC8 &)const
TDesC8::Find(const TUint8 *,TInt)const
TDesC8::FindC(const TDesC8 &)const
TDesC8::FindC(const TUint8 *,TInt)const
TDesC8::FindF(const TDesC8 &)const
TDesC8::FindF(const TUint8 *,TInt)const
TDesC8::Left(TInt)const
TDesC8::Length()const
TDesC8::Locate(TChar)const
TDesC8::LocateF(TChar)const
TDesC8::LocateReverse(TChar)const
TDesC8::LocateReverseF(TChar)const
TDesC8::Match(const TDesC8 &)const
TDesC8::MatchC(const TDesC8 &)const
TDesC8::MatchF(const TDesC8 &)const
TDesC8::Mid(TInt)const
TDesC8::Mid(TInt,TInt)const
TDesC8::Ptr()const
TDesC8::Right(TInt)const
TDesC8::Size()const
TDesC8::TDesC8()
TDesC8::TDesC8(TInt,TInt)
TDesC8::Type()const
TDesC8::operator!=(const TDesC8 &)const
TDesC8::operator<(const TDesC8 &)const
TDesC8::operator<=(const TDesC8 &)const
TDesC8::operator==(const TDesC8 &)const
TDesC8::operator>(const TDesC8 &)const
TDesC8::operator>=(const TDesC8 &)const

Detailed Description

Represents an end point address.

Protocols interpret the class within the socket server to route packets and form connections. It can be used on its own or as derived by protocols. The SSockAddr class acts as an offset map for the TSockAddr class which has a family field and a port field. The family field may be used by protocols to "up-cast" the base-class to the correct derived class. The port field is provided because it is a common practice for protocols to use port equivalents in addressing.

Writing derived classes:

The two protected member functions allow further data members to be defined past the area of the base SSockAddr. In any derived constructor the length of the descriptor should be set to the length of the valid data contained in the address. Subsequent member function calls should also adjust the length if it affects valid data.

Constructor & Destructor Documentation

TSockAddr ( )

IMPORT_CTSockAddr()

Default constructor initialises the address to be zero-filled.

TSockAddr ( TUint )

IMPORT_CTSockAddr(TUintaFamily)

Constructs the address with the family member data specified.

.

Parameters
aFamilyAddress family Id.

Member Function Documentation

CmpPort ( const TSockAddr & )

IMPORT_C TBoolCmpPort(const TSockAddr &anAddr)const

Compare two ports.

Compares ports in two addresses

Return Value
ETrue if the ports match and EFalse if they do not

Family ( )

IMPORT_C TUintFamily()const

Gets the address family and thereby the type of address. The family may be used to effect 'down-casting'.

Return Value
Address family Id.

GetUserLen ( )

IMPORT_C TIntGetUserLen()

Gets the number of bytes a derived class has set beyond the SSockAddr part of the address. This function is mainly intended for use in derived classes.

Return Value
User length

Port ( )

IMPORT_C TUintPort()const

Gets the port value.

Return Value
Port value

SetFamily ( TUint )

IMPORT_C voidSetFamily(TUintaFamily)

Sets the address family of an address.

Parameters
aFamilyAddress family Id.

SetPort ( TUint )

IMPORT_C voidSetPort(TUintaPort)

Sets the address port of an address.

Parameters
aPortNew port value for address

SetUserLen ( TInt )

IMPORT_C voidSetUserLen(TIntaLen)[protected]

Sets the length of data it appends after the base class' data. This function is mainly intended for use in derived classes.

Parameters
aLenNew length for appended data.

UserPtr ( )

TUint8 *UserPtr()const [protected, inline]

Gets an offset to place data after the base class data. This function is mainly intended for use in derived classes.

Return Value
Pointer to derived class intended data area