CMtmUiRegistry Class Reference

#include <mw/mtuireg.h>

Link against: mtur.lib

class CMtmUiRegistry : public CObserverRegistry, public CObserverRegistry
Public Member Functions
virtual ~CMtmUiRegistry()
IMPORT_C CMtmUiRegistry *NewL(CMsvSession &, TTimeIntervalMicroSeconds32)
IMPORT_C CBaseMtmUi *NewMtmUiL(CBaseMtm &)
Protected Member Functions
CMtmUiRegistry(CMsvSession &, TTimeIntervalMicroSeconds32)
Inherited Attributes
CMtmDllRegistry::iFs
CMtmDllRegistry::iMtmDllTypeUid
CMtmDllRegistry::iRegisteredMtmDllArray
CMtmDllRegistry::iTimeoutMicroSeconds32
CObserverRegistry::iIsAdded
CObserverRegistry::iMsvSession
Inherited Enumerations
MMsvSessionObserver:TMsvSessionEvent
Inherited Functions
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
CMtmDllRegistry::AddRegisteredMtmDll(TUid,TUid,const CMtmDllInfo &,MRegisteredMtmDllObserver &)
CMtmDllRegistry::CMtmDllRegistry(RFs &,TUid,TTimeIntervalMicroSeconds32)
CMtmDllRegistry::IsInUse()const
CMtmDllRegistry::IsInUse(TUid)const
CMtmDllRegistry::IsPresent(TUid)const
CMtmDllRegistry::MtmTypeUid(TInt)const
CMtmDllRegistry::MtmTypeUidToIndex(TUid)const
CMtmDllRegistry::NumRegisteredMtmDlls()const
CMtmDllRegistry::RegisteredMtmDllInfo(TUid)const
CMtmDllRegistry::RemoveAllRegisteredMtmDlls()
CMtmDllRegistry::RemoveRegisteredMtmDll(TUid)
CMtmDllRegistry::TechnologyTypeUid(TUid)const
CMtmDllRegistry::~CMtmDllRegistry()
CObserverRegistry::CObserverRegistry(CMsvSession &,TUid,TTimeIntervalMicroSeconds32)
CObserverRegistry::ConstructL()
CObserverRegistry::HandleSessionEventL(TMsvSessionEvent,TAny *,TAny *,TAny *)
CObserverRegistry::~CObserverRegistry()

Detailed Description

Accesses the User Interface MTM registry.

This registry holds details of the all the User Interface MTMs currently available on the system. Message client applications use this class to get a CBaseMtmUi-derived object by which to access User Interface MTM functionality.

Note that the base class CMtmDllRegistry provides functions for discovering what MTMs are present in the registry.

Constructor & Destructor Documentation

CMtmUiRegistry ( CMsvSession &, TTimeIntervalMicroSeconds32 )

CMtmUiRegistry(CMsvSession &aMsvSession,
TTimeIntervalMicroSeconds32aTimeoutMicroSeconds32
)[protected]

~CMtmUiRegistry ( )

~CMtmUiRegistry()[virtual]

Destructor.

Member Function Documentation

NewL ( CMsvSession &, TTimeIntervalMicroSeconds32 )

IMPORT_C CMtmUiRegistry *NewL(CMsvSession &aMsvSession,
TTimeIntervalMicroSeconds32aTimeoutMicroSeconds32 =  TTimeIntervalMicroSeconds32(30000000)
)[static]

Constructs and allocates a CMtmUiRegistry object.

The client should delete this object when it is no longer required.

The registry keeps a reference count of the number of instances of each MTM in use. When that reference count falls to zero, the DLL that provides the MTM is unloaded. However, this is not done immediately, but only after the time specified in aTimeoutMicroSeconds32. This increases efficiency in cases where the DLL is required again shortly.

Parameters
aMsvSessionThe client's Message Server session
aTimeoutMicroSeconds32Time to wait before unloading MTM DLLs
Return Value
A pointer to a newly allocated and initialised object
Leave Codes
KErrNoMemoryA memory allocation failed

NewMtmUiL ( CBaseMtm & )

IMPORT_C CBaseMtmUi *NewMtmUiL(CBaseMtm &aMtm)

Creates a User Interface MTM object for the specified MTM.

The client should delete the returned object when it is no longer required.

Parameters
aMtmClient MTM for which to get the associated UI MTM
Return Value
User Interface MTM object for specified MTM
Leave Codes
KErrNotFoundMTM type could not be found
KErrNoMemoryA memory allocation failed
KErrBadLibraryEntryPointMalformed MTM: a library entry point was not of the required type
OtherDLL loading error codes if the DLL that provides the MTM cannot be loaded