RWsGraphicMsgBuf Class Reference

class RWsGraphicMsgBuf : private RBuf8

Utility class for building data buffers to be attached to CWindowGc::DrawWsGraphic commands Useful when there is more than one piece of data to be attached to the draw command

Inherits from

Public Member Functions
RWsGraphicMsgBuf()
IMPORT_C TIntAppend(TUid, const TDesC8 &)
IMPORT_C TIntAppend(TUid, const TDesC16 &)
IMPORT_C TIntAppend(TUid, TInt, TPtr8 &)
IMPORT_C TIntAppend(const TWsGraphicMsgFixedBase &)
IMPORT_C TIntCount()
IMPORT_C TPtrC8Data(TInt)
IMPORT_C TPtr8Data(TInt)
IMPORT_C voidGetFixedMsg(TWsGraphicMsgFixedBase &, TInt)
IMPORT_C const TDesC8 &Pckg()
IMPORT_C voidRemove(TInt)
IMPORT_C TUidTypeId(TInt)
Private Member Functions
TInt ExpandForAppend(TInt)
TInt IntAt(TInt)
voidWriteHeader(TUid, TInt)
Inherited Functions
RBuf8::Assign(HBufC8 *)
RBuf8::Assign(TUint8 *,TInt)
RBuf8::Assign(TUint8 *,TInt,TInt)
RBuf8::Assign(const RBuf8 &)
RBuf8::CleanupClosePushL()
RBuf8::Close()
RBuf8::Create(TInt)
RBuf8::Create(const TDesC8 &)
RBuf8::Create(const TDesC8 &,TInt)
RBuf8::CreateL(RReadStream &,TInt)
RBuf8::CreateL(TInt)
RBuf8::CreateL(const TDesC8 &)
RBuf8::CreateL(const TDesC8 &,TInt)
RBuf8::CreateMax(TInt)
RBuf8::CreateMaxL(TInt)
RBuf8::RBuf8()
RBuf8::RBuf8(HBufC8 *)
RBuf8::RBuf8(TInt,TInt,TInt)
RBuf8::RBuf8(const RBuf8 &)
RBuf8::ReAlloc(TInt)
RBuf8::ReAllocL(TInt)
RBuf8::Swap(RBuf8 &)
RBuf8::operator=(const RBuf8 &)
RBuf8::operator=(const TDesC8 &)
RBuf8::operator=(const TUint8 *)
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
Private Attributes
TInt iRMsgBufSpare
Inherited Attributes
RBuf8::@14
RBuf8::__DECLARE_TEST
RBuf8::iEBufCPtrType
RBuf8::iEPtrType
TDes8::iMaxLength

Constructor & Destructor Documentation

RWsGraphicMsgBuf()

IMPORT_CRWsGraphicMsgBuf()

Default Constructor

Member Functions Documentation

Append(TUid, const TDesC8 &)

IMPORT_C TIntAppend(TUidaTypeId,
const TDesC8 &aData
)

Append a descriptor as data

Parameters

TUid aTypeIdthe type of the message to append
const TDesC8 & aDataarbitrary length data consisting of the whole message

Append(TUid, const TDesC16 &)

IMPORT_C TIntAppend(TUidaTypeId,
const TDesC16 &aData
)

Append a descriptor as data

Parameters

TUid aTypeIdthe type of the message to append
const TDesC16 & aDataarbitrary length data consisting of the whole message

Append(TUid, TInt, TPtr8 &)

IMPORT_C TIntAppend(TUidaTypeId,
TIntaLen,
TPtr8 &aPtr
)

Append a message of the specified length and type, and return a pointer to allow client code to modify the message. aPtr is only set if the append succeeds. aPtr is only valid until the next message is appended to the buffer.

Parameters

TUid aTypeIdthe type of the message to append
TInt aLenthe length of the message to be reserved
TPtr8 & aPtra modifiable descriptor to be used by the client code to write into the message body

Append(const TWsGraphicMsgFixedBase &)

IMPORT_C TIntAppend(const TWsGraphicMsgFixedBase &aMsg)

Append a fixed-size message

Parameters

const TWsGraphicMsgFixedBase & aMsgthe fixed-size message to append

Count()

IMPORT_C TIntCount()const

Returns the number of messages in the buffer

Data(TInt)

IMPORT_C TPtrC8Data(TIntaIndex)const
Returns a non-modifiable descriptor of a message body in the buffer
panic
if the index is out of bounds

Parameters

TInt aIndexthe ordinal position of the message

Data(TInt)

IMPORT_C TPtr8Data(TIntaIndex)
Returns a modifiable descriptor of a message body in the buffer The returned TPtr8 is only valid until the next message is appended to the buffer.
panic
if the index is out of bounds

Parameters

TInt aIndexthe ordinal position of the message

ExpandForAppend(TInt)

TInt ExpandForAppend(TIntaDataLen)[private]

Parameters

TInt aDataLen

GetFixedMsg(TWsGraphicMsgFixedBase &, TInt)

IMPORT_C voidGetFixedMsg(TWsGraphicMsgFixedBase &aMsg,
TIntaIndex
)const
Returns a copy of a fixed-size message in the buffer
panic
if the index is out of bounds
panic
the message specified is not of the correct type

Parameters

TWsGraphicMsgFixedBase & aMsg
TInt aIndexthe ordinal position of the message

IntAt(TInt)

TInt IntAt(TIntaOfs)const [private]

Parameters

TInt aOfs

Pckg()

IMPORT_C const TDesC8 &Pckg()const
Returns the message buffer as a descriptor. Example:
	RWsGraphicMsgBuf msgBuf;
	msgBuf.Append(...);
	...
	TWsGraphicId id(...);
	SystemGc().DrawWsGraphic(id,Rect(),msgBuf.Pckg());
	msgBuf.Close();
CWindowGc::DrawWsGraphic CCoeControl::Draw

Remove(TInt)

IMPORT_C voidRemove(TIntaIndex)
Remove a message from the buffer
panic
if the index is out of bounds

Parameters

TInt aIndexthe ordinal position of message to be removed

TypeId(TInt)

IMPORT_C TUidTypeId(TIntaIndex)const
Returns the Type ID of a message in the buffer
panic
if the index is out of bounds

Parameters

TInt aIndexthe ordinal position of the message

WriteHeader(TUid, TInt)

voidWriteHeader(TUidaUid,
TIntaLen
)[private]

Parameters

TUid aUid
TInt aLen

Member Data Documentation

TInt iRMsgBufSpare

TInt iRMsgBufSpare[private]