CEmsAnimationIE Class Reference

class CEmsAnimationIE : public CEmsInformationElement

CEmsAnimationIE wraps the creation & modification of both an EMS large animation & small animation information element into a single class.

Format of Large/User Animation Information Element. -----------------------------------------------

Position (Octet) Bit Description 1 Start Position 2..n Animation Data

The start position of the information element is relative to the PDU that contains the object. However when within this class it will be an converted to an absolute position within the message.

3gpp Spec V5 section 9.2.3.24.10.1.5/6

Public Member Functions
~CEmsAnimationIE()
IMPORT_C voidCopyL(const CEmsAnimationIE &)
IMPORT_C CEmsInformationElement *DuplicateL()
IMPORT_C CFbsBitmap *GetBitmapL()
CEmsAnimationIE *NewL()
IMPORT_C CEmsAnimationIE *NewL(const CFbsBitmap &)
Private Member Functions
CEmsAnimationIE()
voidConstructL(const CFbsBitmap &)
voidDecodeBodyL(const TPtrC8, TBool)
voidEncodeBodyL(TPtr8, TBool)
CFbsBitmap *GetBitmapL(const TSize &, const TDesC8 &)
Inherited Functions
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
CEmsInformationElement::CEmsInformationElement(TSmsId,TBool)
CEmsInformationElement::CopyL(const CEmsInformationElement &)
CEmsInformationElement::DecodeInformationElementL(const CSmsInformationElement &)
CEmsInformationElement::EncodeInformationElementL()
CEmsInformationElement::ExternalizeL(RWriteStream &)const
CEmsInformationElement::InternalizeL(RReadStream &)
CEmsInformationElement::Length()const
CEmsInformationElement::SerialisedBodyLength()const
CEmsInformationElement::SetStartPosition(TUint)
CEmsInformationElement::StartPosition()const
CSmsInformationElement::CSmsInformationElement(TSmsInformationElementIdentifier)
CSmsInformationElement::ConstructL(const TDesC8 &)
CSmsInformationElement::Data()
CSmsInformationElement::Data()const
CSmsInformationElement::DecodeL(TGsmuLex8 &)
CSmsInformationElement::EncodeL(TUint8 *)const
CSmsInformationElement::Identifier()const
CSmsInformationElement::NewDataL(TInt)
CSmsInformationElement::NewL(TSmsInformationElementIdentifier,const TDesC8 &)
CSmsInformationElement::~CSmsInformationElement()
Inherited Enumerations
CSmsInformationElement:TSmsInformationElementIdentifier
Private Attributes
HBufC8 *iData
Inherited Attributes
CEmsInformationElement::iEncodedBodyLength
CEmsInformationElement::iStartPosition
CSmsInformationElement::iIdentifier

Constructor & Destructor Documentation

CEmsAnimationIE()

CEmsAnimationIE()[private]

~CEmsAnimationIE()

IMPORT_C~CEmsAnimationIE()
capability
None

Member Functions Documentation

ConstructL(const CFbsBitmap &)

voidConstructL(const CFbsBitmap &aBitmap)[private]

Constructs the object from the given FbsBitmap Will convert colour bitmaps into the correct format.

leave
KErrTooBig if the animation will not fit within a single pdu.
leave
KErrTooBig if the animation is not one of the Two animation sizes.

Parameters

const CFbsBitmap & aBitmapthe source bitmap containing the 4 frames.

CopyL(const CEmsAnimationIE &)

IMPORT_C voidCopyL(const CEmsAnimationIE &aSrc)

Copys the information element out of the source into this object.

capability
None

Parameters

const CEmsAnimationIE & aSrcthe source object to copy from.

DecodeBodyL(const TPtrC8, TBool)

voidDecodeBodyL(const TPtrC8aPtr,
TBoolaIsFromSerialisation
)[private, virtual]

Decodes the raw data out of an information element into this class.

leave
KErrargument If the size of the data does not match what is expected.

Parameters

const TPtrC8 aPtrThe raw predefined animation data
TBool aIsFromSerialisation

DuplicateL()

IMPORT_C CEmsInformationElement *DuplicateL()const [virtual]

Creates a Copy of the object.

capability
None

EncodeBodyL(TPtr8, TBool)

voidEncodeBodyL(TPtr8aPtr,
TBoolaIsForSerialisation
)const [private, virtual]

Encodes the animation object into its raw format. (no IE id)

Parameters

TPtr8 aPtrthe buffer to be used which is to contain the data
TBool aIsForSerialisation

GetBitmapL()

IMPORT_C CFbsBitmap *GetBitmapL()const
capability
None

GetBitmapL(const TSize &, const TDesC8 &)

CFbsBitmap *GetBitmapL(const TSize &aSize,
const TDesC8 &aDataBuf
)const [private]

Parameters

const TSize & aSize
const TDesC8 & aDataBuf

NewL()

CEmsAnimationIE *NewL()[static]

Creates a new of an animation object.

NewL(const CFbsBitmap &)

IMPORT_C CEmsAnimationIE *NewL(const CFbsBitmap &aBitmap)[static]

Creates a new EMS animation object from a given bitmap

leave
KErrTooBig if the animation does not match the size of a Small/Large animation.
capability
None

Parameters

const CFbsBitmap & aBitmapa 4 frame Bitmap that is converted into an EMS animation type.

Member Data Documentation

HBufC8 * iData

HBufC8 *iData[private]