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(TUidaInterfaceUid,
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 aInterfaceUidThe interface for which an implementation is requested
const TEComResolverParams & aAdditionalParametersThe parameters which must match for an implementation to be suitable

ListAllL(TUid, const TEComResolverParams &)

RImplInfoArray *ListAllL(TUidaInterfaceUid,
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 aInterfaceUidThe interface for which implementations are requested
const TEComResolverParams & aAdditionalParametersThe parameters which must match for an implementation to be suitable

ListAllL(TUid)

RImplInfoArray &ListAllL(TUidaInterfaceUid)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 aInterfaceUidThe interface for which implementations are requested

Member Data Documentation

const MPublicRegistry & iRegistry

const MPublicRegistry &iRegistry[protected]

A reference to the instantiated registry information