CCdlInstance Class Reference

class CCdlInstance : public CCdlEngineRef

The abstract base class for all customisation instance objects. Only the CDL engine can create objects derived from this class.

Inherits from

Constructor & Destructor Documentation

CCdlInstance(CCdlEngine *, TInt *)

CCdlInstance(CCdlEngine *aEngine,
TInt *aLastApi
)[protected]

Parameters

CCdlEngine * aEngine
TInt * aLastApi

Member Functions Documentation

Extension(TInt)

TAny *Extension(TIntaId)const [virtual]

Parameters

TInt aId

FileNameRelativeToLastAccessedInstance(TFileName &)

IMPORT_C voidFileNameRelativeToLastAccessedInstance(TFileName &aFileName)const

Adjusts a filename to be relative to the file containing the CDL instance that implemented the last accessed API. The filename will be made relative to this instances file, or the file of one of this instances sub-layers.

Parameters

TFileName & aFileNamethe filename to be adjusted.

GetData(TInt)

IMPORT_C TAny *GetData(TIntaCdlApiId)const

Parameters

TInt aCdlApiId

GetFunction(TInt)

IMPORT_C TCdlEngineFunc *GetFunction(TIntaCdlApiId)const

Parameters

TInt aCdlApiId

Implementation(TInt)

TAny *Implementation(TIntaCdlApiId)const [pure virtual]

Parameters

TInt aCdlApiId

Implementor(TInt)

const CCdlInstance *Implementor(TIntaCdlApiId)const

Parameters

TInt aCdlApiId

Interface()

const SCdlInterface &Interface()const [pure virtual]

IsComplete()

TBool IsComplete()const [pure virtual]

Does this instance implement all of it's API? Instances that don't implement their entire API need a sub-layer that does implement the entire API.

LastAccessedRef()

IMPORT_C const TCdlRef &LastAccessedRef()const

The CDL instance reference for the instance that actually implemented the last accessed API. If this instance implemented the API, then this instance's reference will be returned. Otherwise it will be the reference of one of this instance's sub-layers.

NewL(const TCdlRef &, const SCdlInterface *, const CCdlInstance *, CCdlEngine *, TInt *)

IMPORT_C CCdlInstance *NewL(const TCdlRef &aRef,
const SCdlInterface *aInterfaceParams,
const CCdlInstance *aSubLayer = NULL,
CCdlEngine *aEngine = NULL,
TInt *aLastApi = NULL
)[static]

Parameters

const TCdlRef & aRef
const SCdlInterface * aInterfaceParams
const CCdlInstance * aSubLayer = NULL
CCdlEngine * aEngine = NULL
TInt * aLastApi = NULL

NewLC(const TCdlRef &, const SCdlInterface *, const CCdlInstance *, CCdlEngine *, TInt *)

IMPORT_C CCdlInstance *NewLC(const TCdlRef &aRef,
const SCdlInterface *aInterfaceParams,
const CCdlInstance *aSubLayer = NULL,
CCdlEngine *aEngine = NULL,
TInt *aLastApi = NULL
)[static]

Parameters

const TCdlRef & aRef
const SCdlInterface * aInterfaceParams
const CCdlInstance * aSubLayer = NULL
CCdlEngine * aEngine = NULL
TInt * aLastApi = NULL

Ref()

IMPORT_C const TCdlRef &Ref()const

Gets the CDL instance reference for this instance

SubLayer()

IMPORT_C const CCdlInstance *SubLayer()const

Gets the instance that forms the sub-layer for this instance. Any API not implemented by this instance will be implemented in a sub-layer.

operator==(const CCdlInstance &)

IMPORT_C TBooloperator==(const CCdlInstance &aOther)const

Test whether this instance is the same as another.

Parameters

const CCdlInstance & aOtherthe instance you want to compare with this one.

Member Data Documentation

TInt & iLastApi

TInt &iLastApi[protected]

TCdlRef iRef

TCdlRef iRef[protected]

const CCdlInstance * iSubLayer

const CCdlInstance *iSubLayer[protected]