CTasDataModelInterface Class Reference

class CTasDataModelInterface : public CBase

Interface to the TasDataModel. The tas data model contains the ui data collected From avkon. The data format and internal data model implementation are the responsibility of intarface implementations.

Some implementation considerations: All attributes of MTasAttribute and MTasObject are optional. This means that serialize implementations must take this fact into consideration. The model must be responsible for freeing all memory it has reserved. The buffer passed to the SerializeTasDataL is naturally the responsibility of the caller.

Inherits from

Constructor & Destructor Documentation

~CTasDataModelInterface()

~CTasDataModelInterface ( ) [inline, virtual]

Destructor

Member Functions Documentation

AddNewObjectContainerL()

MTasObjectContainer & AddNewObjectContainerL ( ) [pure virtual]

Add new Object to the data model. Objects added directly to the DataModel will be serialized to the top level.

CleanObjectData()

void CleanObjectData ( ) [pure virtual]

Clean and destroy the added objects from the data model.

CloneL(CTasDataModelInterface &)

void CloneL ( CTasDataModelInterface & aModel ) [pure virtual]

Make a deep copy of the given CTasDataModelInterface object to this CTasDataModelInterface object. Any existing data will be removed berofe the clone is performed. For merging models use MergeL. All data is copied so the original model can be destroyed freely after the clone.

Parameters

CTasDataModelInterface & aModel CTasDataModelInterface to be copied into this object.

MergeL(CTasDataModelInterface &)

void MergeL ( CTasDataModelInterface & aModel ) [pure virtual]

Merges two TasDataModel structures into one model. Merging is done by appending the TasObjectContainers from the given model to this model. Merged data is copied so that the given model can be deleted with no affect to this instance.

Parameters

CTasDataModelInterface & aModel CTasDataModelInterface to be merged to this object.

NewL()

CTasDataModelInterface * NewL ( ) [static, inline]

Symbian constructor

NewL(const TUid)

CTasDataModelInterface * NewL ( const TUid aUID ) [static, inline]

Wraps ECom object instantitation plug-in loaded by its UID

Parameters

const TUid aUID service plugin implementation UDI

NewL(const TDesC8 &)

CTasDataModelInterface * NewL ( const TDesC8 & aMatchString ) [static, inline]

Wraps ECom object instantitation default resovler is used

Parameters

const TDesC8 & aMatchString service plugin name

SerializeTasDataL(RBuf8 &, TBool)

TInt SerializeTasDataL ( RBuf8 & aDataBuffer,
TBool aCompressionOn = EFalse
) [pure virtual]

Serialize the datamodel structure into the given buffer.

Implementing classes must consider the following facts when implementing: All variables in MTasObject and MTasAttribute are optional. Existence of data can not be assumed. All memory reserved by the model is to be removed once model deleted. aDataBuffer is considered not part of the model so its is the responsibility of the calling module.

Parameters

RBuf8 & aDataBuffer
TBool aCompressionOn = EFalse

SerializeTasDataL(RFs &, const TDesC &, TBool)

TInt SerializeTasDataL ( RFs & aRFs,
const TDesC & aFileName,
TBool aCompressionOn = EFalse
) [pure virtual]

Serialize the datamodel structure into a file.

Implementing classes must consider the following facts when implementing: All variables in MTasObject and MTasAttribute are optional. Existence of data can not be assumed.

Parameters

RFs & aRFs
const TDesC & aFileName
TBool aCompressionOn = EFalse

Member Data Documentation

TUid iImplementation

TUid iImplementation [private]