TSockAddr Class Reference

class TSockAddr : public TBuf8< KMaxSockAddrSize >

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.

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()
Private Member Functions
SSockAddr *BasePtr()
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
Inherited Attributes
TBuf8< KMaxSockAddrSize >::iBuf
TDes8::__DECLARE_TEST
TDes8::iMaxLength

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

TUint aFamilyAddress family Id.

Member Functions Documentation

BasePtr()

SSockAddr *BasePtr()const [private, inline]

This function returns the end point to a connection.

CmpPort(const TSockAddr &)

IMPORT_C TBoolCmpPort(const TSockAddr &anAddr)const

Compare two ports.

Compares ports in two addresses

Parameters

const TSockAddr & anAddr

Family()

IMPORT_C TUintFamily()const

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

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.

Port()

IMPORT_C TUintPort()const

Gets the port value.

SetFamily(TUint)

IMPORT_C voidSetFamily(TUintaFamily)

Sets the address family of an address.

Parameters

TUint aFamilyAddress family Id.

SetPort(TUint)

IMPORT_C voidSetPort(TUintaPort)

Sets the address port of an address.

Parameters

TUint 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

TInt 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.