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 TBool CmpPort (const TSockAddr &)
IMPORT_C TUint Family ()
IMPORT_C TInt GetUserLen ()
IMPORT_C TUint Port ()
IMPORT_C void SetFamily ( TUint )
IMPORT_C void SetPort ( TUint )
Protected Member Functions
IMPORT_C void SetUserLen ( 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_C TSockAddr ( )

Default constructor initialises the address to be zero-filled.

TSockAddr(TUint)

IMPORT_C TSockAddr ( TUint aFamily )

Constructs the address with the family member data specified.

.

Parameters

TUint aFamily Address 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 TBool CmpPort ( const TSockAddr & anAddr ) const

Compare two ports.

Compares ports in two addresses

Parameters

const TSockAddr & anAddr

Family()

IMPORT_C TUint Family ( ) const

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

GetUserLen()

IMPORT_C TInt GetUserLen ( )

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 TUint Port ( ) const

Gets the port value.

SetFamily(TUint)

IMPORT_C void SetFamily ( TUint aFamily )

Sets the address family of an address.

Parameters

TUint aFamily Address family Id.

SetPort(TUint)

IMPORT_C void SetPort ( TUint aPort )

Sets the address port of an address.

Parameters

TUint aPort New port value for address

SetUserLen(TInt)

IMPORT_C void SetUserLen ( TInt aLen ) [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 aLen New 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.