CImplementationInformation Class Reference

class CImplementationInformation : public CBase

The CimplementationInformation class acts as the container for the registration data relating to a particular interface implementation. Note that this class is used in both the ECOM client and server side hence the mixed API classification seen below. For the client side only the API used to extract the registration data should be used.

Inherits from

  • CImplementationInformation
Public Member Functions
~CImplementationInformation()
voidAddExtendedInterfaceL(const TUid &)
const TDesC8 &DataType()
TBool Disabled()
const TDesC &DisplayName()
TDriveUnit Drive()
voidExternalizeL(TBool, RWriteStream &)
RExtendedInterfacesArray *GetExtendedInterfaceList()
IMPORT_C voidGetExtendedInterfaceListL(RExtendedInterfacesArray &)
TUid ImplementationUid()
voidInternalizeL(TBool, RReadStream &)
CImplementationInformation *NewL(TUid, TInt, HBufC *, HBufC8 *, HBufC8 *, TDriveUnit, TBool, TBool)
CImplementationInformation *NewL(TUid, TInt, HBufC *, HBufC8 *, HBufC8 *, TDriveUnit, TBool, TBool, RExtendedInterfacesArray *)
CImplementationInformation *NewLC(TBool, RReadStream &)
const TDesC8 &OpaqueData()
TBool RomBased()
TBool RomOnly()
voidSetDisabled(TBool)
voidSetDrive(TDriveUnit)
voidSetRomBased(TBool)
voidSetVendorId(const TVendorId)
TVendorId VendorId()
TInt Version()
Private Member Functions
CImplementationInformation()
CImplementationInformation(TUid, TInt, HBufC *, HBufC8 *, HBufC8 *, TDriveUnit, TBool, TBool)
CImplementationInformation(TUid, TInt, HBufC *, HBufC8 *, HBufC8 *, TDriveUnit, TBool, TBool, RExtendedInterfacesArray *)
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 Attributes
HBufC8 *iData
TBool iDisabled
HBufC *iDisplayName
TDriveUnit iDrive
RExtendedInterfacesArray *iExtendedInterfaceList
TUid iImplementationUid
HBufC8 *iOpaqueData
TBool iRomBased
TBool iRomOnly
TInt iVersion
TVendorId iVid

Constructor & Destructor Documentation

CImplementationInformation()

CImplementationInformation()[private]

CImplementationInformation(TUid, TInt, HBufC *, HBufC8 *, HBufC8 *, TDriveUnit, TBool, TBool)

CImplementationInformation(TUidaUid,
TIntaVersion,
HBufC *aName,
HBufC8 *aDataType,
HBufC8 *aOpaqueData,
TDriveUnitaDrive,
TBoolaRomOnly,
TBoolaRomBased
)[private]

Parameters

TUid aUid
TInt aVersion
HBufC * aName
HBufC8 * aDataType
HBufC8 * aOpaqueData
TDriveUnit aDrive
TBool aRomOnly
TBool aRomBased

CImplementationInformation(TUid, TInt, HBufC *, HBufC8 *, HBufC8 *, TDriveUnit, TBool, TBool, RExtendedInterfacesArray *)

CImplementationInformation(TUidaUid,
TIntaVersion,
HBufC *aName,
HBufC8 *aDataType,
HBufC8 *aOpaqueData,
TDriveUnitaDrive,
TBoolaRomOnly,
TBoolaRomBased,
RExtendedInterfacesArray *aExtendedInterfaces
)[private]

Parameters

TUid aUid
TInt aVersion
HBufC * aName
HBufC8 * aDataType
HBufC8 * aOpaqueData
TDriveUnit aDrive
TBool aRomOnly
TBool aRomBased
RExtendedInterfacesArray * aExtendedInterfaces

~CImplementationInformation()

~CImplementationInformation()

Member Functions Documentation

AddExtendedInterfaceL(const TUid &)

voidAddExtendedInterfaceL(const TUid &aExtendedInterface)

Parameters

const TUid & aExtendedInterface

DataType()

const TDesC8 &DataType()const [inline]

Intended Usage : Accessor for this implementation's default binary data 7.0

The data type which this implementation supports

CImplementationInformation is fully constructed and initialized

Disabled()

TBool Disabled()const [inline]

Intended Usage : Accessor for whether this implementation is currently disabled 7.0

Flag indicating whether this implementation is disabled

CImplementationInformation is fully constructed and initialized

DisplayName()

const TDesC &DisplayName()const [inline]

Intended Usage : Accessor for this implementation's human readable name 7.0

The human readable name for this implementation

CImplementationInformation is fully constructed and initialized

Drive()

TDriveUnit Drive()const [inline]

Intended Usage : Returns the drive that this implementation is installed on Error Condition : None 7.0

The drive that this implementation is on

CImplementationInformation is fully constructed.

ExternalizeL(TBool, RWriteStream &)

voidExternalizeL(TBoolaClientSide,
RWriteStream &aStream
)const

Parameters

TBool aClientSide
RWriteStream & aStream

GetExtendedInterfaceList()

RExtendedInterfacesArray *GetExtendedInterfaceList()

GetExtendedInterfaceListL(RExtendedInterfacesArray &)

IMPORT_C voidGetExtendedInterfaceListL(RExtendedInterfacesArray &aList)

Parameters

RExtendedInterfacesArray & aList

ImplementationUid()

TUid ImplementationUid()const [inline]

Intended Usage : Accessor for this implementation's Uid 7.0

The Uid of this implementation

CImplementationInformation is fully constructed and initialized

InternalizeL(TBool, RReadStream &)

voidInternalizeL(TBoolaClientSide,
RReadStream &aStream
)

Parameters

TBool aClientSide
RReadStream & aStream

NewL(TUid, TInt, HBufC *, HBufC8 *, HBufC8 *, TDriveUnit, TBool, TBool)

CImplementationInformation *NewL(TUidaUid,
TIntaVersion,
HBufC *aName,
HBufC8 *aDataType,
HBufC8 *aOpaqueData,
TDriveUnitaDrive,
TBoolaRomOnly,
TBoolaRomBased
)[static]

Parameters

TUid aUid
TInt aVersion
HBufC * aName
HBufC8 * aDataType
HBufC8 * aOpaqueData
TDriveUnit aDrive
TBool aRomOnly
TBool aRomBased

NewL(TUid, TInt, HBufC *, HBufC8 *, HBufC8 *, TDriveUnit, TBool, TBool, RExtendedInterfacesArray *)

CImplementationInformation *NewL(TUidaUid,
TIntaVersion,
HBufC *aName,
HBufC8 *aDataType,
HBufC8 *aOpaqueData,
TDriveUnitaDrive,
TBoolaRomOnly,
TBoolaRomBased,
RExtendedInterfacesArray *aExtendedInterfaces
)[static]

Parameters

TUid aUid
TInt aVersion
HBufC * aName
HBufC8 * aDataType
HBufC8 * aOpaqueData
TDriveUnit aDrive
TBool aRomOnly
TBool aRomBased
RExtendedInterfacesArray * aExtendedInterfaces

NewLC(TBool, RReadStream &)

CImplementationInformation *NewLC(TBoolaClientSide,
RReadStream &aStream
)[static]

Parameters

TBool aClientSide
RReadStream & aStream

OpaqueData()

const TDesC8 &OpaqueData()const [inline]

Intended Usage : Accessor for this implementation's opaque binary data 7.0

The opaque data which is available for this implementation

CImplementationInformation is fully constructed and initialized

RomBased()

TBool RomBased()const [inline]

Intended Usage : Accessor for whether this implementation is on ROM or is a later version of one on ROM Flag indicating whether this implementation is on ROM or is a later version of one on ROM

CImplementationInformation is fully constructed

RomOnly()

TBool RomOnly()const [inline]

Intended Usage : Accessor for whether this implementation is to be loaded from ROM only Flag indicating whether this implementation is to be loaded from ROM only

CImplementationInformation is fully constructed

SetDisabled(TBool)

voidSetDisabled(TBoolaDisabled)[inline]

Intended Usage : Marks this implementation as disabled, or enabled. Note that this function should not be used by any ECOM client side as it will have no effect at all on the implementation information stored in the server side. 7.0

CImplementationInformation is fully constructed and initialized

Implementation is marked as.

Parameters

TBool aDisabledETrue to indicate this implementation should be disabled, EFalse for enabled.

SetDrive(TDriveUnit)

voidSetDrive(TDriveUnitaDrive)

Parameters

TDriveUnit aDrive

SetRomBased(TBool)

voidSetRomBased(TBoolaRomBased)

Parameters

TBool aRomBased

SetVendorId(const TVendorId)

voidSetVendorId(const TVendorIdaVid)[inline]

Intended Usage: Sets the VID of the plug-in that this implementation belongs to. The VID is the VendorId for the plug-in's DLL. CImplementationInformation is fully constructed

Parameters

const TVendorId aVidVendorId of the plug-in that this implementation belongs to.

VendorId()

TVendorId VendorId()const [inline]

Intended Usage: Returns the VID of the plug-in that this implementation belongs to. The VID is the VendorId for the plug-in's DLL CImplementationInformation is fully constructed

VendorId of the plug-in that this implementation belongs to.

Version()

TInt Version()const [inline]

Intended Usage : Accessor for the version number of this implementation 7.0

The version number of this implementation

CImplementationInformation is fully constructed and initialized

Member Data Documentation

HBufC8 * iData

HBufC8 *iData[private]

The type of data this implementation is registered to handle : Used for matching against the run-time cue provided by the client during default interface implementation resolution.

TBool iDisabled

TBool iDisabled[private]

The flag recording if this implementation is disabled or enabled

HBufC * iDisplayName

HBufC *iDisplayName[private]

This implementations human readable name intended for display in UI implementations

TDriveUnit iDrive

TDriveUnit iDrive[private]

The drive that this plug-in resides on

RExtendedInterfacesArray * iExtendedInterfaceList

RExtendedInterfacesArray *iExtendedInterfaceList[private]

Array of extended interfaces.

TUid iImplementationUid

TUid iImplementationUid[private]

The implementation UID

HBufC8 * iOpaqueData

HBufC8 *iOpaqueData[private]

Data registered for this implementation which can be used by the client during non-default resolution operations but is ignored by the framework.

TBool iRomBased

TBool iRomBased[private]

This flag records whether this implementation was discovered on read-only internal media or that it is a later version of one that was

TBool iRomOnly

TBool iRomOnly[private]

The flag recording whether this implementation may only be loaded from read-only internal media

TInt iVersion

TInt iVersion[private]

The implementation version

TVendorId iVid

TVendorId iVid[private]

The Vendor ID of the plug-in which this implementation belongs to