CImplementationInformation Class Reference

#include <ecom/implementationinformation.h>

Link against: ecom.lib

class CImplementationInformation : public CBase

Inherits from

  • CImplementationInformation

    Detailed Description

    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.

    Constructor & Destructor Documentation

    ~CImplementationInformation ( )

    ~CImplementationInformation()
    Intended Usage : D'tor
    Since
    7.0
    Pre-condition
    CImplementationInformation is fully constructed.
    Post-condition
    CImplementationInformation is completely destroyed.

    Member Function Documentation

    AddExtendedInterfaceL ( const TUid & )

    voidAddExtendedInterfaceL(const TUid &aExtendedInterface)
    Intended Usage : Add extended interface to list of extended interfaces
    Pre-condition
    CImplementationInformation is fully constructed

    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

    Returns: The data type which this implementation supports

    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

    Returns: Flag indicating whether this implementation is disabled

    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

    Returns: The human readable name for this implementation

    Drive ( )

    TDriveUnit Drive()const [inline]
    Intended Usage : Returns the drive that this implementation is installed on Error Condition : None
    Since
    7.0
    Pre-condition
    CImplementationInformation is fully constructed.

    Returns: The drive that this implementation is on

    ExternalizeL ( TBool, RWriteStream & )

    voidExternalizeL(TBoolaClientSide,
    RWriteStream &aStream
    )const

    Intended Usage : Stream out the internal state to aStream.

    Error Condition : Leave with the error code.
    leave
    KErrNoMemory.
    leave

    See also: RWriteStream.

    Since
    7.0
    Pre-condition
    CImplementationInformation is fully constructed and initialized
    ParameterDescription
    aClientSidea boolean indicating whether the streaming is to performed in client/server side
    aStreamThe stream to store the data in.

    GetExtendedInterfaceList ( )

    RExtendedInterfacesArray *GetExtendedInterfaceList()
    Intended Usage : Get extended interface list.
    Pre-condition
    CImplementationInformation is fully constructed

    GetExtendedInterfaceListL ( RExtendedInterfacesArray & )

    IMPORT_C voidGetExtendedInterfaceListL(RExtendedInterfacesArray &aList)
    Intended Usage : Get extended interface list.
    Pre-condition
    CImplementationInformation is fully constructed
    ParameterDescription
    aListThe array of the extended interfaces which are supported by this implementation.

    ImplementationUid ( )

    TUid ImplementationUid()const [inline]
    Intended Usage : Accessor for this implementation's Uid
    Since
    7.0
    Pre-condition
    CImplementationInformation is fully constructed and initialized

    Returns: The Uid of this implementation

    InternalizeL ( TBool, RReadStream & )

    voidInternalizeL(TBoolaClientSide,
    RReadStream &aStream
    )

    Intended Usage : Restore the internal state from aStream.

    Error Condition : Leave with the error code.
    leave
    KErrNoMemory.
    leave

    See also: RReadStream.

    Since
    7.0
    Pre-condition
    CImplementationInformation is fully constructed.
    Post-condition
    CImplementationInformation is restored to the state specified by the contents of aStream.
    ParameterDescription
    aClientSidea boolean indicating whether the streaming is to performed in client/server side
    aStreamThe stream to read the data from.

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

    CImplementationInformation *NewL(TUidaUid,
    TIntaVersion,
    HBufC *aName,
    HBufC8 *aDataType,
    HBufC8 *aOpaqueData,
    TDriveUnitaDrive,
    TBoolaRomOnly,
    TBoolaRomBased
    )[static]
    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
    ParameterDescription
    aUidThe unique Id of this implementation
    aVersionThe version number of this implementation
    aNameThe display name of this implementation. This object takes ownership of aName.
    aDataTypeThe data type supported by this implementation. This object takes ownership of aDataType.
    aOpaqueDataData for this implementation which is not used by the ECom framework. This object takes ownership of aOpaqueData.
    aDriveThe drive that this implementation is on
    aRomOnlyThe flag recording whether this implementation may be loaded from ROM only
    aRomBasedThe flag recording whether this implementation is on ROM or is a later version of one on ROM

    Returns: A pointer to a fully constructed CImplementationInformation

    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]
    Standardised two phase construction which leaves nothing on the cleanup stack.
    leave
    KErrNoMemory
    Post-condition
    Object is fully constructed and initialised
    ParameterDescription
    aUidThe unique Id of this implementation
    aVersionThe version number of this implementation
    aNameThe display name of this implementation. This object takes ownership of aName.
    aDataTypeThe data type supported by this implementation. This object takes ownership of aDataType.
    aOpaqueDataData for this implementation which is not used by the ECom framework. This object takes ownership of aOpaqueData.
    aDriveThe drive that this implementation is on
    aRomOnlyThe flag recording whether this implementation may be loaded from ROM only
    aRomBasedThe flag recording whether this implementation is on ROM or is a later version of one on ROM
    aExtendedInterfacesThe 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.

    Returns: A pointer to a fully constructed CImplementationInformation

    NewLC ( TBool, RReadStream & )

    CImplementationInformation *NewLC(TBoolaClientSide,
    RReadStream &aStream
    )[static]
    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
    ParameterDescription
    aClientSidea boolean indicating whether the streaming is to performed in client/server side
    aStreamThe stream to internalize this object from

    Returns: A pointer to a fully constructed CImplementationInformation

    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

    Returns: The opaque data which is available for this implementation

    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

    Returns: Flag indicating whether this implementation is on ROM or is a later version of one on ROM

    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

    Returns: Flag indicating whether this implementation is to be loaded from ROM only

    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.
    Since
    7.0
    Pre-condition
    CImplementationInformation is fully constructed and initialized
    Post-condition
    Implementation is marked as.
    ParameterDescription
    aDisabledETrue to indicate this implementation should be disabled, EFalse for enabled.

    SetDrive ( TDriveUnit )

    voidSetDrive(TDriveUnitaDrive)

    SetRomBased ( TBool )

    voidSetRomBased(TBoolaRomBased)
    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 )

    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.
    Pre-condition
    CImplementationInformation is fully constructed
    ParameterDescription
    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
    Pre-condition
    CImplementationInformation is fully constructed

    Returns: 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
    Since
    7.0
    Pre-condition
    CImplementationInformation is fully constructed and initialized

    Returns: The version number of this implementation