RMBufPacketBase Class Reference

class RMBufPacketBase : public RMBufChain

Inherits from

Public Member Functions
RMBufPacketBase ()
IMPORT_C void CopyInfoL ( RMBufPacketBase &)
IMPORT_C void CopyPackedL ( RMBufChain &)
IMPORT_C void Free ()
IMPORT_C void FreeInfo ()
IMPORT_C RMBufPktInfo * Info ()
IMPORT_C RMBufPktInfo * NewInfo ( TUint )
IMPORT_C RMBufPktInfo * NewInfoL ( TUint )
IMPORT_C void Pack ()
IMPORT_C RMBufPktInfo * PeekInfo ()
IMPORT_C RMBufPktInfo * PeekInfoInChain ( RMBufChain &)
IMPORT_C void SetInfo ( RMBufPktInfo *)
IMPORT_C void TrimEnd ( TInt )
IMPORT_C void TrimStart ( TInt )
IMPORT_C RMBufPktInfo * Unpack ()
Protected Member Functions
IMPORT_C RMBufPktInfo * CreateCopyL (const RMBufQ &, TInt , TInt , TInt , TUint )
IMPORT_C RMBufPktInfo * CreateCopyL ( RMBufStreamQ &, TInt , TInt , TInt , TUint )
IMPORT_C RMBufPktInfo * CreateCopyL (const RMBufPktQ &, TInt , TUint )
IMPORT_C RMBufPktInfo * CreateL ( RMBufQ &, TInt , TUint )
IMPORT_C RMBufPktInfo * CreateL ( TInt , TUint )
IMPORT_C RMBufPktInfo * CreateL (const TDesC8 &, TInt , TUint )
Inherited Functions
RCommsBufChain::Alloc(TInt,TCommsBufAllocator &)
RCommsBufChain::Alloc(TInt,TInt,TCommsBufAllocator &)
RCommsBufChain::Alloc(TInt,TInt,TInt,TCommsBufAllocator &)
RCommsBufChain::Append(RCommsBuf *)
RCommsBufChain::Append(RCommsBufChain &)
RCommsBufChain::Assign(RCommsBufChain &)
RCommsBufChain::Goto(TInt,TInt &,TInt &)const
RCommsBufChain::Goto(TInt,TInt &,TInt &,RCommsBuf *&)const
RCommsBufChain::Prepend(RCommsBuf *)
RCommsBufChain::Prepend(RCommsBufChain &)
RCommsBufChain::RCommsBufChain()
RCommsBufChain::RCommsBufChain(RCommsBuf *)
RCommsBufChain::Read(TDes8 &,TInt)const
RCommsBufChain::Split(TInt,RCommsBufChain &)
RCommsBufChain::Write(const TDesC8 &,TInt)
RMBufChain::Align(TInt)
RMBufChain::Alloc(TInt)
RMBufChain::Alloc(TInt,RMBufAllocator &)
RMBufChain::Alloc(TInt,TInt)
RMBufChain::Alloc(TInt,TInt,RMBufAllocator &)
RMBufChain::Alloc(TInt,TInt,TInt)
RMBufChain::Alloc(TInt,TInt,TInt,RMBufAllocator &)
RMBufChain::AllocL(TInt)
RMBufChain::AllocL(TInt,RMBufAllocator &)
RMBufChain::Append(RMBufChain &)
RMBufChain::Append(TInt)
RMBufChain::Append(TInt,RMBufAllocator &)
RMBufChain::AppendL(TInt)
RMBufChain::Assign(RMBufChain &)
RMBufChain::Assign(RMBufQ &)
RMBufChain::Copy(RMBufChain &)const
RMBufChain::Copy(RMBufChain &,TInt)const
RMBufChain::Copy(RMBufChain &,TInt,TInt)const
RMBufChain::Copy(RMBufChain &,TInt,TInt,TInt)const
RMBufChain::CopyIn(const TDesC8 &,TInt)
RMBufChain::CopyL(RMBufChain &,TInt,TInt)const
RMBufChain::CopyOut(TDes8 &,TInt)const
RMBufChain::Create(const TDesC8 &,TInt)
RMBufChain::CreateL(const TDesC8 &,TInt)
RMBufChain::FillZ(TInt)
RMBufChain::First()
RMBufChain::First()const
RMBufChain::Goto(TInt,RMBuf *&,TInt &,TInt &)const
RMBufChain::Goto(TInt,RMBuf *&,TInt &,TInt &,RMBuf *&)const
RMBufChain::Init()
RMBufChain::IsEmpty()const
RMBufChain::Last()const
RMBufChain::Length()const
RMBufChain::Link(RMBufChain &)
RMBufChain::Next()
RMBufChain::Next()const
RMBufChain::NumBufs()const
RMBufChain::Prepend(RMBuf *)
RMBufChain::Prepend(RMBufChain &)
RMBufChain::Prepend(TInt)
RMBufChain::Prepend(TInt,RMBufAllocator &)
RMBufChain::PrependL(TInt)
RMBufChain::RMBufChain()
RMBufChain::RMBufChain(RCommsBuf *)
RMBufChain::ReAlloc(TInt)
RMBufChain::ReAllocL(TInt)
RMBufChain::Remove()
RMBufChain::Split(TInt,RMBufChain &)
RMBufChain::Split(TInt,RMBufChain &,RMBufAllocator &)
RMBufChain::SplitL(TInt,RMBufChain &)
RMBufChain::Unlink()
RMBufChain::operator=(RMBuf *)
Protected Attributes
RMBufPktInfo * iInfo
Inherited Attributes
RCommsBufChain::iNext

Constructor & Destructor Documentation

RMBufPacketBase()

IMPORT_C RMBufPacketBase ( )

Member Functions Documentation

CopyInfoL(RMBufPacketBase &)

IMPORT_C void CopyInfoL ( RMBufPacketBase & aNewPkt )

Copy the information header

Parameters

RMBufPacketBase & aNewPkt the new packet where the header is copied to

CopyPackedL(RMBufChain &)

IMPORT_C void CopyPackedL ( RMBufChain & aPacket )

Copy an entire packed packet, complete with info header

Parameters

RMBufChain & aPacket the packet

CreateCopyL(const RMBufQ &, TInt, TInt, TInt, TUint)

IMPORT_C RMBufPktInfo * CreateCopyL ( const RMBufQ & aPacket,
TInt aOffset,
TInt aLength,
TInt aHdrSize,
TUint aMBufHdrSize
) [protected]
Create a MBuf chain from an received MBuf Queue
  • used by Interfaces

Parameters

const RMBufQ & aPacket the MBuf Queue
TInt aOffset the offset
TInt aLength the length of the data to be copied
TInt aHdrSize the header size
TUint aMBufHdrSize the MBuf Header Size

CreateCopyL(RMBufStreamQ &, TInt, TInt, TInt, TUint)

IMPORT_C RMBufPktInfo * CreateCopyL ( RMBufStreamQ & aStream,
TInt aOffset,
TInt aLength,
TInt aHdrSize,
TUint aMBufHdrSize
) [protected]

Create a MBuf chain by copying data from a stream queue (basically an RMBufQ ) aOffset and aLength specify location in stream queue.

Parameters

RMBufStreamQ & aStream the stream queue
TInt aOffset the offset
TInt aLength the data length
TInt aHdrSize the header size
TUint aMBufHdrSize the MBuf Header size

CreateCopyL(const RMBufPktQ &, TInt, TUint)

IMPORT_C RMBufPktInfo * CreateCopyL ( const RMBufPktQ & aList,
TInt aHdrSize,
TUint aMBufHdrSize
) [protected]
Build a MBuf chain by copying a packet queue list, leaving space on the front for a header. (Very heavily used in PPP option processing). This is specially coded rather than using combination of RMBufChain::CopyL and RMBufChain::AppendL to ensure that the resulting packet is stored efficiently.
  • refer RMBufChain::AllocL notes regarding the deliberate decision not to provide an overloaded min/max mbuf size variant

Parameters

const RMBufPktQ & aList the packet queue
TInt aHdrSize the header size
TUint aMBufHdrSize the MBuf Header size

CreateL(RMBufQ &, TInt, TUint)

IMPORT_C RMBufPktInfo * CreateL ( RMBufQ & aPacket,
TInt aLength,
TUint aMBufHdrSize
) [protected]
Create an MBuf chain from an received MBuf Queue
  • used by Interfaces

  • queue in emptied.

Parameters

RMBufQ & aPacket the MBuf Queue
TInt aLength the chain length
TUint aMBufHdrSize the MBuf header size

CreateL(TInt, TUint)

IMPORT_C RMBufPktInfo * CreateL ( TInt aLength,
TUint aMBufHdrSize
) [protected]
Create an empty MBuf chain of required length and header size
  • used by Interfaces

  • refer RMBufChain::AllocL notes regarding the deliberate decision not to provide an overloaded min/max mbuf size variant

Parameters

TInt aLength the chain length
TUint aMBufHdrSize the header size

CreateL(const TDesC8 &, TInt, TUint)

IMPORT_C RMBufPktInfo * CreateL ( const TDesC8 & aDesc,
TInt aHdrSize,
TUint aMBufHdrSize
) [protected]
Create a MBuf chain and header for receiving from a descriptor
  • used by SAPs

Parameters

const TDesC8 & aDesc the buffer which contains the header info
TInt aHdrSize the header size
TUint aMBufHdrSize the MBuf header size

Free()

IMPORT_C void Free ( )

Delete info and data

FreeInfo()

IMPORT_C void FreeInfo ( )

Free info header only

Info()

IMPORT_C RMBufPktInfo * Info ( )

Returns pointer to info header

NewInfo(TUint)

IMPORT_C RMBufPktInfo * NewInfo ( TUint aMBufHdrSize )

Create an info header

Parameters

TUint aMBufHdrSize the MBuf header size

NewInfoL(TUint)

IMPORT_C RMBufPktInfo * NewInfoL ( TUint aMBufHdrSize )

Create an info header

Parameters

TUint aMBufHdrSize the MBuf header size

Pack()

IMPORT_C void Pack ( )

Combine info header with data ready for queueing

PeekInfo()

IMPORT_C RMBufPktInfo * PeekInfo ( )

Allows the packet info header to be accessed without unpacking

PeekInfoInChain(RMBufChain &)

IMPORT_C RMBufPktInfo * PeekInfoInChain ( RMBufChain & aChain ) [static]

Allows the packet info header to be accessed while still on a packet queue

Parameters

RMBufChain & aChain the chain to be accessed

SetInfo(RMBufPktInfo *)

IMPORT_C void SetInfo ( RMBufPktInfo * iInfo )

Associate an info header with packet (Also used to disassociate if aInfo==NULL)

Parameters

RMBufPktInfo * iInfo the info header

TrimEnd(TInt)

IMPORT_C void TrimEnd ( TInt aOffset )

As RMBufChain::TrimEnd , but updates length in info header

Parameters

TInt aOffset the offset

TrimStart(TInt)

IMPORT_C void TrimStart ( TInt aOffset )

As RMBufChain::TrimStart , but updates length in info header

Parameters

TInt aOffset the offset

Unpack()

IMPORT_C RMBufPktInfo * Unpack ( )

Splits off the info header

Member Data Documentation

RMBufPktInfo * iInfo

RMBufPktInfo * iInfo [protected]