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 7.0

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. 7.0

The unique Id of the implementation which satisfies the specified parameters.

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. 7.0

Pointer to an array of suitable implementations. Ownership of this array is passed to the calling function.

Object is fully constructed and initialized

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

7.0

Array of suitable implementations

Object is fully constructed and initialized

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