CResolver Class Reference

class CResolver : public CBase

Abstract base class which is used to identify the correct interface implementation based on criteria supplied by the client. This base class can be used to write a client specific resolver, however this is not required as a default implementation is provided within ECom.

Inherits from

Constructor & Destructor Documentation

CResolver(MPublicRegistry &)

CResolver ( MPublicRegistry & aRegistry ) [protected, inline, explicit]
Intended Usage : Standardized default c'tor Error Condition : None
Since
7.0
Post-condition
CResolver is fully constructed

Parameters

MPublicRegistry & aRegistry

Member Functions Documentation

IdentifyImplementationL(TUid, const TEComResolverParams &)

TUid IdentifyImplementationL ( TUid aInterfaceUid,
const TEComResolverParams & aAdditionalParameters
) const [pure virtual]
Intended Usage : Request that the resolver identify the most appropriate interface implementation. Error Condition : Depends on implementation.
Since
7.0
Pre-condition
This object is fully constructed.

Parameters

TUid aInterfaceUid The interface for which an implementation is requested
const TEComResolverParams & aAdditionalParameters The parameters which must match for an implementation to be suitable

ListAllL(TUid, const TEComResolverParams &)

RImplInfoArray * ListAllL ( TUid aInterfaceUid,
const TEComResolverParams & aAdditionalParameters
) const [pure virtual]
Intended Usage : List all the implementations which satisfy the specified interface definition and the resolve parameters supplied. Error Condition : Depends on implementation.
Since
7.0
Pre-condition
Object is fully constructed and initialized
Post-condition
Registry contents are not modified but registry keys may be updated

Parameters

TUid aInterfaceUid The interface for which implementations are requested
const TEComResolverParams & aAdditionalParameters The parameters which must match for an implementation to be suitable

ListAllL(TUid)

RImplInfoArray & ListAllL ( TUid aInterfaceUid ) const [inline]
Intended Usage : List all the implementations which satisfy the specified interface. Error Condition : CRegistryData::ListImplementationsL
Since
7.0
Pre-condition
Object is fully constructed and initialized
Post-condition
Registry contents are not modified but registry keys may be updated

Parameters

TUid aInterfaceUid The interface for which implementations are requested

Member Data Documentation

const MPublicRegistry & iRegistry

const MPublicRegistry & iRegistry [protected]

A reference to the instantiated registry information