CRegistryData::CImplementationData Class Reference
class CRegistryData::CImplementationData : public CBase |
This wrapper class is needed, to create a 2 way relationship between CInterfaceData and the public CImplementationInformation objects. It holds a reference to an implementation and a reference to its parent interface data.
Inherits from
- CRegistryData::CImplementationData
Public Member Functions |
---|
| ~CImplementationData() |
TInt
| CompareImplUid(const CImplementationData &, const CImplementationData &) |
TInt
| CompareImplUidIgnoreIfUid(const CImplementationData &, const CImplementationData &) |
TInt
| CompareUidAgainstImplData(const CImplementationData &, const CImplementationData &) |
void | ExternalizeL(RWriteStream &) |
void | InternalizeL(RReadStream &) |
CImplementationData * | NewL(CInterfaceData *, TUid, TInt, HBufC *, HBufC8 *, HBufC8 *, TDriveUnit, TBool, TBool) |
CImplementationData * | NewL(CInterfaceData *, TUid, TInt, HBufC *, HBufC8 *, HBufC8 *, TDriveUnit, TBool, TBool, RExtendedInterfacesArray *) |
CImplementationData * | NewLC(CInterfaceData *) |
Private Member Functions |
---|
| CImplementationData(CInterfaceData *) |
void | ConstructL(TUid, TInt, HBufC *, HBufC8 *, HBufC8 *, TDriveUnit, TBool, TBool) |
void | ConstructL(TUid, TInt, HBufC *, HBufC8 *, HBufC8 *, TDriveUnit, TBool, TBool, RExtendedInterfacesArray *) |
Constructor & Destructor Documentation
CImplementationData(CInterfaceData *)
Parameters
CInterfaceData * aParent | The parent interface data of this implementation |
Member Functions Documentation
CompareImplUid(const CImplementationData &, const CImplementationData &)
This method determines the order of two
CImplementationData objects. For backward compatibility reason, ECom allows different I/Fs using the same implementation UID for when the device has an implementation UID that is not unique. Although this is not a valid or supported situation ECOM server should be robust.
FindImplementation CompareTUidValues - Pre-condition
- This object is fully constructed
CompareImplUidIgnoreIfUid(const CImplementationData &, const CImplementationData &)
Similar to CompareImplUid above. This comparer only compare the Impl UID and ignore the I/F UID part.
- Pre-condition
- This object is fully constructed
CompareUidAgainstImplData(const CImplementationData &, const CImplementationData &)
ConstructL(TUid, TInt, HBufC *, HBufC8 *, HBufC8 *, TDriveUnit, TBool, TBool)
The object's memory has been allocated.
- Pre-condition
- This object is fully constructed.
- Post-condition
- This object is fully constructed and initialized.
Parameters
TUid aUid | The unique Id of the new implementation |
TInt aVersion | The version number of the new implementation |
HBufC * aName | The display name of the new implementation |
HBufC8 * aDataType | The data type supported by the new implementation |
HBufC8 * aOpaqueData | Data for the new implementation which is not used by the ECom framework |
TDriveUnit aDrive | The drive that the new implementation is on |
TBool aRomOnly | The flag recording whether the new implementation may be loaded from ROM only |
TBool aRomBased | The flag recording whether the new implementation is on ROM or is a later version of one on ROM |
ConstructL(TUid, TInt, HBufC *, HBufC8 *, HBufC8 *, TDriveUnit, TBool, TBool, RExtendedInterfacesArray *)
The object's memory has been allocated.
- Pre-condition
- This object is fully constructed.
- Post-condition
- This object is fully constructed and initialized.
Parameters
TUid aUid | The unique Id of the new implementation |
TInt aVersion | The version number of the new implementation |
HBufC * aName | The display name of the new implementation |
HBufC8 * aDataType | The data type supported by the new implementation |
HBufC8 * aOpaqueData | Data for the new implementation which is not used by the ECom framework |
TDriveUnit aDrive | The drive that the new implementation is on |
TBool aRomOnly | The flag recording whether the new implementation may be loaded from ROM only |
TBool aRomBased | The flag recording whether the new 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. NULL is available for PLUGIN without extended interfaces support. |
ExternalizeL(RWriteStream &)
Writes out the state of this member variable of type
CImplementationInformation to aStore.
- Pre-condition
- This object is fully constructed.
InternalizeL(RReadStream &)
Initialises member variable with the
CImplementationInformation state specified in aStore.
- Pre-condition
- This object is full constructed.
- Post-condition
- This object is set to the state specified in aStore.
NewL(CInterfaceData *, TUid, TInt, HBufC *, HBufC8 *, HBufC8 *, TDriveUnit, TBool, TBool)
Creates a new CImplemenatationData object. It takes parameters to create a
CImplementationInformation object, during 2nd phase construction and initializes iImplInfo to reference to this
CImplementationInformation object.
- Post-condition
- This object is fully constructed and initialized.
Parameters
CInterfaceData * aParent | A pointer to the parent instance of CInterfaceData |
TUid aUid | The unique Id of the new implementation |
TInt aVersion | The version number of the new implementation |
HBufC * aName | The display name of the new implementation |
HBufC8 * aDataType | The data type supported by the new implementation |
HBufC8 * aOpaqueData | Data for the new implementation which is not used by the ECom framework |
TDriveUnit aDrive | The drive that the new implementation is on |
TBool aRomOnly | The flag recording whether the new implementation may be loaded from ROM only |
TBool aRomBased | The flag recording whether the new implementation is on ROM or is a later version of one on ROM |
NewL(CInterfaceData *, TUid, TInt, HBufC *, HBufC8 *, HBufC8 *, TDriveUnit, TBool, TBool, RExtendedInterfacesArray *)
Creates a new CImplemenatationData object. It takes parameters to create a
CImplementationInformation object, during 2nd phase construction and initializes iImplInfo to reference to this
CImplementationInformation object.
- Post-condition
- This object is fully constructed and initialized.
Parameters
CInterfaceData * aParent | A pointer to the parent instance of CInterfaceData |
TUid aUid | The unique Id of the new implementation |
TInt aVersion | The version number of the new implementation |
HBufC * aName | The display name of the new implementation |
HBufC8 * aDataType | The data type supported by the new implementation |
HBufC8 * aOpaqueData | Data for the new implementation which is not used by the ECom framework |
TDriveUnit aDrive | The drive that the new implementation is on |
TBool aRomOnly | The flag recording whether the new implementation may be loaded from ROM only |
TBool aRomBased | The flag recording whether the new 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. NULL is available for PLUGIN without extended interfaces support. |
NewLC(CInterfaceData *)
Creates a new CImplemenatationData object. Note that
CImplementationInformation needs to be constructed too, for this object to be fully constructed.
- Post-condition
- This object is partly constructed and initialized and is on the CleanupStack.
Parameters
CInterfaceData * aParent | A pointer to the parent instance of CInterfaceData |
Member Data Documentation
CImplementationInformation * iImplInfo
A pointer to the implementation
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.