Symbian Developer Library

SYMBIAN OS V6.1 EDITION FOR C++

[Index] [Glossary] [Previous] [Next]



Location: mtuireg.h

Typedef MtmUiFactoryFunctionL

typedef CBaseMtmUi* MtmUiFactoryFunctionL(CBaseMtm&, CRegisteredMtmDll&);

Support

Supported from 5.0

Description

A concrete User Interface MTM must implement an exported factory function of this type. It should return an instance of the CBaseMtmUi-derived class that provides the implementation. The factory function is called by the User Interface MTM registry when a client requests this User Interface MTM.

A CBaseMtmUi-derived class typically provides a NewL() function, which the factory function calls.

The factory function is called by ordinal. The ordinal of the function must match that recorded in the MTM’s registry information.

For example, a User Interface MTM whose concrete class was CEgMtmUi could define a suitable factory function as:

EXPORT_C CBaseMtmUi* NewEgMtmUiL(CBaseMtm& aMtm, CRegisteredMtmDll& aRegisteredDll){return CEgMtmUi::NewL(aMtm, aRegisteredDll);}

Parameters are as follows:

The return value is a newly-created instance of the CBaseMtmUi-derived class for the User Interface MTM.

The factory function should leave if it cannot create the object.