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

  • CTasDataModelInterface

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()

voidCleanObjectData()[pure virtual]

Clean and destroy the added objects from the data model.

CloneL(CTasDataModelInterface &)

voidCloneL(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 & aModelCTasDataModelInterface to be copied into this object.

MergeL(CTasDataModelInterface &)

voidMergeL(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 & aModelCTasDataModelInterface to be merged to this object.

NewL()

CTasDataModelInterface *NewL()[static, inline]

Symbian constructor

NewL(const TUid)

CTasDataModelInterface *NewL(const TUidaUID)[static, inline]

Wraps ECom object instantitation plug-in loaded by its UID

Parameters

const TUid aUIDservice plugin implementation UDI

NewL(const TDesC8 &)

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

Wraps ECom object instantitation default resovler is used

Parameters

const TDesC8 & aMatchStringservice plugin name

SerializeTasDataL(RBuf8 &, TBool)

TInt SerializeTasDataL(RBuf8 &aDataBuffer,
TBoolaCompressionOn = 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,
TBoolaCompressionOn = 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]