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() |
void | AddExtendedInterfaceL(const TUid &) |
const TDesC8 & | DataType() |
TBool
| Disabled() |
const TDesC & | DisplayName() |
TDriveUnit
| Drive() |
void | ExternalizeL(TBool, RWriteStream &) |
RExtendedInterfacesArray * | GetExtendedInterfaceList() |
IMPORT_C void | GetExtendedInterfaceListL(RExtendedInterfacesArray &) |
TUid
| ImplementationUid() |
void | InternalizeL(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() |
void | SetDisabled(TBool) |
void | SetDrive(TDriveUnit) |
void | SetRomBased(TBool) |
void | SetVendorId(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 *) |
Constructor & Destructor Documentation
CImplementationInformation()
CImplementationInformation | ( | ) | [private] |
CImplementationInformation(TUid, TInt, HBufC *, HBufC8 *, HBufC8 *, TDriveUnit, TBool, TBool)
Intended Usage : Constructor with parameters. This object takes ownership of aName, aDataType and aOpaqueData.
- Since
- 7.0
- Pre-condition
- None
- Post-condition
- CImplementationInformation is fully constructed.
Parameters
TUid aUid | The unique Id of this implementation |
TInt aVersion | The version number of this implementation |
HBufC * aName | The display name of this implementation |
HBufC8 * aDataType | The data type supported by this implementation |
HBufC8 * aOpaqueData | Data for this implementation which is not used by the ECom framework |
TDriveUnit aDrive | The drive which this implementation is on |
TBool aRomOnly | The flag recording whether this implementation may be loaded from ROM only |
TBool aRomBased | The flag recording whether this implementation is on ROM or is a later version of one on ROM |
CImplementationInformation(TUid, TInt, HBufC *, HBufC8 *, HBufC8 *, TDriveUnit, TBool, TBool, RExtendedInterfacesArray *)
Constructor with parameters. This object takes ownership of aName, aDataType, aOpaqueData and aExtendedInterfaces.
- Pre-condition
- None
- Post-condition
- CImplementationInformation is fully constructed.
Parameters
TUid aUid | The unique Id of this implementation |
TInt aVersion | The version number of this implementation |
HBufC * aName | The display name of this implementation |
HBufC8 * aDataType | The data type supported by this implementation |
HBufC8 * aOpaqueData | Data for this implementation which is not used by the ECom framework |
TDriveUnit aDrive | The drive which this implementation is on |
TBool aRomOnly | The flag recording whether this implementation may be loaded from ROM only |
TBool aRomBased | The flag recording whether this implementation is on ROM or is a later version of one on ROM |
RExtendedInterfacesArray * aExtendedInterfaces | The array recording the extended interfaces supported by this implementation. NULL is available for PLUGIN without extended interfaces support. |
~CImplementationInformation()
~CImplementationInformation | ( | ) | |
Member Functions Documentation
AddExtendedInterfaceL(const TUid &)
void | AddExtendedInterfaceL | ( | const TUid & | aExtendedInterface | ) | |
Intended Usage : Add extended interface to list of extended interfaces
- Pre-condition
- CImplementationInformation is fully constructed
Parameters
const TUid & aExtendedInterface | |
DataType()
const TDesC8 & | DataType | ( | ) | const [inline] |
Intended Usage : Accessor for this implementation's default binary data
- Since
- 7.0
- Pre-condition
- CImplementationInformation is fully constructed and initialized
Disabled()
TBool
| Disabled | ( | ) | const [inline] |
Intended Usage : Accessor for whether this implementation is currently disabled
- Since
- 7.0
- Pre-condition
- CImplementationInformation is fully constructed and initialized
DisplayName()
const TDesC & | DisplayName | ( | ) | const [inline] |
Intended Usage : Accessor for this implementation's human readable name
- Since
- 7.0
- Pre-condition
- CImplementationInformation is fully constructed and initialized
Drive()
Intended Usage : Returns the drive that this implementation is installed on Error Condition : None
- Since
- 7.0
- Pre-condition
- CImplementationInformation is fully constructed.
ExternalizeL(TBool, RWriteStream &)
Intended Usage : Stream out the internal state to aStream.
Parameters
TBool aClientSide | a boolean indicating whether the streaming is to performed in client/server side |
RWriteStream & aStream | The stream to store the data in. |
GetExtendedInterfaceList()
GetExtendedInterfaceListL(RExtendedInterfacesArray &)
ImplementationUid()
TUid
| ImplementationUid | ( | ) | const [inline] |
Intended Usage : Accessor for this implementation's Uid
- Since
- 7.0
- Pre-condition
- CImplementationInformation is fully constructed and initialized
InternalizeL(TBool, RReadStream &)
Intended Usage : Restore the internal state from aStream.
Parameters
TBool aClientSide | a boolean indicating whether the streaming is to performed in client/server side |
RReadStream & aStream | The stream to read the data from. |
NewL(TUid, TInt, HBufC *, HBufC8 *, HBufC8 *, TDriveUnit, TBool, TBool)
Intended Usage : Standardised two phase construction which leaves nothing on the cleanup stack.
- leave
- KErrNoMemory
- Since
- 7.0
- Post-condition
- Object is fully constructed and initialised
Parameters
TUid aUid | The unique Id of this implementation |
TInt aVersion | The version number of this implementation |
HBufC * aName | The display name of this implementation. This object takes ownership of aName. |
HBufC8 * aDataType | The data type supported by this implementation. This object takes ownership of aDataType. |
HBufC8 * aOpaqueData | Data for this implementation which is not used by the ECom framework. This object takes ownership of aOpaqueData. |
TDriveUnit aDrive | The drive that this implementation is on |
TBool aRomOnly | The flag recording whether this implementation may be loaded from ROM only |
TBool aRomBased | The flag recording whether this implementation is on ROM or is a later version of one on ROM |
NewL(TUid, TInt, HBufC *, HBufC8 *, HBufC8 *, TDriveUnit, TBool, TBool, RExtendedInterfacesArray *)
Standardised two phase construction which leaves nothing on the cleanup stack.
- leave
- KErrNoMemory
- Post-condition
- Object is fully constructed and initialised
Parameters
TUid aUid | The unique Id of this implementation |
TInt aVersion | The version number of this implementation |
HBufC * aName | The display name of this implementation. This object takes ownership of aName. |
HBufC8 * aDataType | The data type supported by this implementation. This object takes ownership of aDataType. |
HBufC8 * aOpaqueData | Data for this implementation which is not used by the ECom framework. This object takes ownership of aOpaqueData. |
TDriveUnit aDrive | The drive that this implementation is on |
TBool aRomOnly | The flag recording whether this implementation may be loaded from ROM only |
TBool aRomBased | The flag recording whether this implementation is on ROM or is a later version of one on ROM |
RExtendedInterfacesArray * aExtendedInterfaces | The pointer to the array recording the extended interfaces supported by this implementation. This object takes ownership of aExtendedInterfaces. NULL is available for PLUGIN without extended interfaces support. |
NewLC(TBool, RReadStream &)
Intended Usage : Standardised two phase constructor which leaves the
CImplementationInformation pointer upon the cleanup stack.
- leave
- KErrNoMemory
- Since
- 7.0
- Post-condition
- Object is fully constructed and initialised
Parameters
TBool aClientSide | a boolean indicating whether the streaming is to performed in client/server side |
RReadStream & aStream | The stream to internalize this object from |
OpaqueData()
const TDesC8 & | OpaqueData | ( | ) | const [inline] |
Intended Usage : Accessor for this implementation's opaque binary data
- Since
- 7.0
- Pre-condition
- 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
- Pre-condition
- CImplementationInformation is fully constructed
RomOnly()
TBool
| RomOnly | ( | ) | const [inline] |
Intended Usage : Accessor for whether this implementation is to be loaded from ROM only
- Pre-condition
- CImplementationInformation is fully constructed
SetDisabled(TBool)
void | SetDisabled | ( | TBool | aDisabled | ) | [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.
- Since
- 7.0
- Pre-condition
- CImplementationInformation is fully constructed and initialized
- Post-condition
- Implementation is marked as.
Parameters
TBool aDisabled | ETrue to indicate this implementation should be disabled, EFalse for enabled. |
SetRomBased(TBool)
void | SetRomBased | ( | TBool | aRomBased | ) | |
Intended Usage : Set whether this implementation is on ROM or is a later version of one on ROM
- Pre-condition
- CImplementationInformation is fully constructed
SetVendorId(const TVendorId)
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.
- Pre-condition
- CImplementationInformation is fully constructed
Parameters
const TVendorId aVid | VendorId of the plug-in that this implementation belongs to. |
VendorId()
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
- Pre-condition
- CImplementationInformation is fully constructed
Version()
TInt
| Version | ( | ) | const [inline] |
Intended Usage : Accessor for the version number of this implementation
- Since
- 7.0
- Pre-condition
- CImplementationInformation is fully constructed and initialized
Member Data Documentation
HBufC8 * iData
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
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
The drive that this plug-in resides on
RExtendedInterfacesArray * iExtendedInterfaceList
Array of extended interfaces.
TUid
iImplementationUid
TUid
| iImplementationUid | [private] |
HBufC8 * iOpaqueData
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
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
The flag recording whether this implementation may only be loaded from read-only internal media
TInt
iVersion
The implementation version
TVendorId
iVid
The Vendor ID of the plug-in which this implementation belongs to
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.