CCdlRefs Class Reference

class CCdlRefs : public CCdlRefCollection

CCdlRefs is a collection of references to CDL interfaces. This class contains functions for manipulating such collections. It also is the basis for the customisation control system, so it has functions for maniplating customisation state.

Inherits from

Public Member Functions
~CCdlRefs()
IMPORT_C voidAddLayerL(const CCdlRefs &)
IMPORT_C voidAppendL(const TCdlRef &)
IMPORT_C voidAppendL(const CCdlRefCollection &)
IMPORT_C voidAppendL(const TDesC &, const TCdlArray< TCdlRef > &)
IMPORT_C TIteratorBegin()
IMPORT_C TIteratorBegin(TUid)
IMPORT_C TIteratorBegin(const TDesC &)
IMPORT_C TIntCountRefs()
IMPORT_C voidDelete(TIterator &)
IMPORT_C voidDelete(const TIterator &, const TIterator &)
IMPORT_C voidDelete(const TDesC &)
IMPORT_C TIteratorEnd()
IMPORT_C HBufC8 *ExportL()
IMPORT_C HBufC8 *ExportLC()
IMPORT_C voidImportL(const TDesC8 &)
IMPORT_C voidInsertL(const TIterator &, const TCdlRef &)
IMPORT_C voidMergeAndReplaceL(const CCdlRefs &)
IMPORT_C const CCdlNames &Names()
IMPORT_C CCdlRefs *NewL()
IMPORT_C CCdlRefs *NewLC()
IMPORT_C TCdlRefRef(TInt)
IMPORT_C CCdlRefs *SubsetByNameLC(const TDesC &)
IMPORT_C CCdlRefs *SubsetByUidLC(TUid)
IMPORT_C CCdlRefs *SubsetByUidsLC(const CCdlUids &)
IMPORT_C CCdlUids *UidsLC()
Private Member Functions
CCdlRefs()
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()
Private Member Type Definitions
typedef CArrayFixFlat< TCdlRef > CRefs
Private Attributes
CCdlNames iNames
CRefs iRefs

Constructor & Destructor Documentation

CCdlRefs()

CCdlRefs()[private]

~CCdlRefs()

IMPORT_C~CCdlRefs()

Destructor.

Member Functions Documentation

AddLayerL(const CCdlRefs &)

IMPORT_C voidAddLayerL(const CCdlRefs &aRefs)

This function adds references to the collection for use as new layers of customisation. The effect of this function is useful for customisation state management. The current customisation state is defined by a CCdlRefs object, where for each CDL interface UID that appears in the collection, the references using that UID identify the layers of customisation instances that customise the interface. The earlier references in the collection for the sub-layers for the later one.

Parameters

const CCdlRefs & aRefsthe new layers of customisation state that will modify the current customisation.

AppendL(const TCdlRef &)

IMPORT_C voidAppendL(const TCdlRef &aRef)

Append a single reference to this collection

Parameters

const TCdlRef & aRefthe reference to append.

AppendL(const CCdlRefCollection &)

IMPORT_C voidAppendL(const CCdlRefCollection &aRefs)

Append a collection of references to this collection

Parameters

const CCdlRefCollection & aRefsthe collection of references to append.

AppendL(const TDesC &, const TCdlArray< TCdlRef > &)

IMPORT_C voidAppendL(const TDesC &aHomeName,
const TCdlArray< TCdlRef > &aRefs
)

Append a collection of references to this collection

Parameters

const TDesC & aHomeNamethe DLL name that this collection of refs was found in.
const TCdlArray< TCdlRef > & aRefsthe collection of references to append.

Begin()

IMPORT_C TIteratorBegin()const

Create an iterator that will iterate through all references in the collection

Begin(TUid)

IMPORT_C TIteratorBegin(TUidaUid)const

Create an iterator that will iterate through only those references with a particular UID.

Parameters

TUid aUidthe UID to match.

Begin(const TDesC &)

IMPORT_C TIteratorBegin(const TDesC &aName)const

Create an iterator that will iterate through only those references with a particular file name.

Parameters

const TDesC & aNamethe name to match.

CountRefs()

IMPORT_C TIntCountRefs()const [virtual]

Delete(TIterator &)

IMPORT_C voidDelete(TIterator &aAt)

Delete the reference indicated by the iterator.

Parameters

TIterator & aAtthe position to delete, Delete(Begin()) deletes the first element in the collection.

Delete(const TIterator &, const TIterator &)

IMPORT_C voidDelete(const TIterator &aBegin,
const TIterator &aEnd
)

Delete the references from aBegin up to, but not including aEnd.

Parameters

const TIterator & aBeginthe first position to delete
const TIterator & aEndthe stop position for the iterator

Delete(const TDesC &)

IMPORT_C voidDelete(const TDesC &aName)

Delete a name and all references that use it from the collection.

Parameters

const TDesC & aNamethe name to delete.

End()

IMPORT_C TIteratorEnd()const

Create an iterator representing the first postition after the end of the collection. This iterator must not be dereferenced, but other iterators can be compared with this one. They will be equal when the other iterator gone past the last valid reference.

ExportL()

IMPORT_C HBufC8 *ExportL()const

Create a descriptor containing the contents of this collection. This is useful for externalising customisation state.

ExportLC()

IMPORT_C HBufC8 *ExportLC()const

Create a descriptor containing the contents of this collection. This is useful for externalising customisation state.

ImportL(const TDesC8 &)

IMPORT_C voidImportL(const TDesC8 &aData)

Populate this collection from a descriptor containing a collection that was externalised by one of the ExportL functions.

Parameters

const TDesC8 & aData

InsertL(const TIterator &, const TCdlRef &)

IMPORT_C voidInsertL(const TIterator &aAt,
const TCdlRef &aRef
)

Insert a reference at the specified iterator position.

Parameters

const TIterator & aAtan iterator giving the position at which to insert the reference InsertL(End(), aRef) is equivalent to Append(aRef)
const TCdlRef & aRefthe reference to insert.

MergeAndReplaceL(const CCdlRefs &)

IMPORT_C voidMergeAndReplaceL(const CCdlRefs &aRefs)

This function replaces references in this collection for any CDL interface UIDs that appear in the new collection with those from the new collection. All other references are appended. The effect of this function is useful for customisation state management. The current customisation state is defined by a CCdlRefs object, where for each CDL interface UID that appears in the collection, the references using that UID identify the layers of customisation instances that customise the interface. The earlier references in the collection for the sub-layers for the later one.

Parameters

const CCdlRefs & aRefsthe new customisation state which will replace and be merged with the current state.

Names()

IMPORT_C const CCdlNames &Names()const

NewL()

IMPORT_C CCdlRefs *NewL()[static]

Two-phased constructor.

NewLC()

IMPORT_C CCdlRefs *NewLC()[static]

Two-phased constructor.

Ref(TInt)

IMPORT_C TCdlRefRef(TIntaIndex)const [virtual]

Access a reference at a particular index in this collection.

Parameters

TInt aIndexthe postion to access.

SubsetByNameLC(const TDesC &)

IMPORT_C CCdlRefs *SubsetByNameLC(const TDesC &aName)const

Parameters

const TDesC & aName

SubsetByUidLC(TUid)

IMPORT_C CCdlRefs *SubsetByUidLC(TUidaUid)const

Parameters

TUid aUid

SubsetByUidsLC(const CCdlUids &)

IMPORT_C CCdlRefs *SubsetByUidsLC(const CCdlUids &aUids)const

Parameters

const CCdlUids & aUids

UidsLC()

IMPORT_C CCdlUids *UidsLC()const

Member Type Definitions Documentation

Typedef CRefs

typedef CArrayFixFlat< TCdlRef >CRefs[private]

Member Data Documentation

CCdlNames iNames

CCdlNames iNames[private]

CRefs iRefs

CRefs iRefs[private]