CMceManager Class Reference

class CMceManager : public CBase

Class for connecting to MCE server.

This class provides the connection to the MCE server and provides functions for setting observers for asynchronous events.

The user should create only one instance of this class.

mceclient.lib

Inherits from

Public Member Functions
~CMceManager ()
TUid AppUid ()
void CancelTranscodeL (const CMceFileSource &, TUint32 )
IMPORT_C CDesC8Array * DefaultHeadersL (const TDesC8 &)
MMceDtmfObserver * DtmfObserver ()
MMceEventObserver * EventObserver ()
IMPORT_C const RPointerArray < CMceEvent > & Events ()
CMceSession * FindAssociatedSession ( TUint32 )
CMceRefer * FindRefer (const CMceEvent &)
void HandleIncomingEventL ( TMceIds &)
MMceInEventObserver * InEventObserver ()
MMceInReferObserver * InReferObserver ()
MMceInSessionObserver * InSessionObserver ()
MMceInTransactionObserver * InTransactionObserver ()
MMceStreamObserver * MediaObserver ()
IMPORT_C CMceManager * NewL (const TUid &, TMceTransactionDataContainer *)
TMceMediaId NextMediaId ()
MMceReferObserver * ReferObserver ()
IMPORT_C const RPointerArray < CMceRefer > & Refers ()
MMceRtpObserver * RtpObserver ()
RMce & ServerSession ()
MMceSessionObserver * SessionObserver ()
IMPORT_C const RPointerArray < CMceSession > & Sessions ()
IMPORT_C void SetDefaultHeadersL ( CDesC8Array *, CDesC8Array *)
IMPORT_C void SetDtmfObserver ( MMceDtmfObserver *)
IMPORT_C void SetEventObserver ( MMceEventObserver *)
IMPORT_C void SetInEventObserver ( MMceInEventObserver *)
IMPORT_C void SetInReferObserver ( MMceInReferObserver *)
IMPORT_C void SetInSessionObserver ( MMceInSessionObserver *)
IMPORT_C void SetInTransactionObserver ( MMceInTransactionObserver *)
IMPORT_C void SetMediaObserver ( MMceStreamObserver *)
IMPORT_C void SetReferObserver ( MMceReferObserver *)
IMPORT_C void SetRtpObserver ( MMceRtpObserver *)
IMPORT_C void SetSessionObserver ( MMceSessionObserver *)
IMPORT_C void SetTransactionObserver ( MMceTransactionObserver *)
IMPORT_C const RPointerArray < const CMceAudioCodec > & SupportedAudioCodecs ()
IMPORT_C const RPointerArray < const CMceVideoCodec > & SupportedVideoCodecs ()
TMceTransactionDataContainer * TransactionContainer ()
MMceTransactionObserver * TransactionObserver ()
void TranscodeCompleted (const CMceFileSource &)
TUint32 TranscodeL ( CMceFileSource &)
Private Member Functions
CMceManager (const TUid &, TMceTransactionDataContainer *)
void AddEventL ( CMceEvent *)
void AddReferL ( CMceRefer *)
void AddSessionL ( CMceSession *)
void ConstructL ()
void IncomingSessionUpdateL ( CMceInSession &, CMceSession &)
void PrepareForITC ( TMceIds &, TUint )
void ReceiveSupportedAudioCodecsL ()
void ReceiveSupportedVideoCodecsL ()
TUint32 RegisterEventL ( CMceEvent *, CDesC8Array &, TUint32 &, TUint32 )
TUint32 RegisterReferL ( CMceRefer *, CDesC8Array &, TUint32 &)
TUint32 RegisterSessionL ( CMceSession *, CDesC8Array &, TUint32 &, TBool &)
void RemoveSession ( CMceSession *)
void UnregisterEvent ( CMceEvent *)
void UnregisterRefer ( CMceRefer *)
void UnregisterSession ( CMceSession *)
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()
Private Attributes
TUid iAppUid
TMceTransactionDataContainer * iContainer
TBool iDetailedCallbacks
MMceDtmfObserver * iDtmfObserver
MMceEventObserver * iEventObserver
CMceEventManagerReceiver * iEventReceiver
RPointerArray < CMceEvent > iEvents
MMceInEventObserver * iInEventObserver
MMceInReferObserver * iInReferObserver
MMceInSessionObserver * iInSessionObserver
MMceInTransactionObserver * iMceInTransactionObserver
MMceTransactionObserver * iMceTransactionObserver
MMceStreamObserver * iMediaObserver
TUint32 iNextId
MMceReferObserver * iReferObserver
RPointerArray < CMceRefer > iRefers
TAny * iReserved
MMceRtpObserver * iRtpObserver
CMceItcSender * iSender
RMce * iServerSession
MMceSessionObserver * iSessionObserver
CMceManagerReceiver * iSessionReceiver
RPointerArray < CMceSession > iSessions
RPointerArray < const CMceAudioCodec > iSupportedAudioCodecs
RPointerArray < const CMceVideoCodec > iSupportedVideoCodecs
RPointerArray < CMceFileSource > iTranscodingFiles

Constructor & Destructor Documentation

CMceManager(const TUid &, TMceTransactionDataContainer *)

CMceManager ( const TUid & aAppUid,
TMceTransactionDataContainer * aContainer = 0
) [private]

C++ default constructor.

Parameters

const TUid & aAppUid
TMceTransactionDataContainer * aContainer = 0

~CMceManager()

IMPORT_C ~CMceManager ( )

Destructor.

Member Functions Documentation

AddEventL(CMceEvent *)

void AddEventL ( CMceEvent * aEvent ) [private]

Adds event

Parameters

CMceEvent * aEvent the event

AddReferL(CMceRefer *)

void AddReferL ( CMceRefer * aRefer ) [private]

Adds refer

Parameters

CMceRefer * aRefer the refer

AddSessionL(CMceSession *)

void AddSessionL ( CMceSession * aSession ) [private]

Adds session

Parameters

CMceSession * aSession the session

AppUid()

TUid AppUid ( ) const

Returns app uid

CancelTranscodeL(const CMceFileSource &, TUint32)

void CancelTranscodeL ( const CMceFileSource & aFile,
TUint32 aSessionId
)

Cancels transcoding

Parameters

const CMceFileSource & aFile The file
TUint32 aSessionId the tc session id

ConstructL()

void ConstructL ( ) [private]

By default Symbian 2nd phase constructor is private.

DefaultHeadersL(const TDesC8 &)

IMPORT_C CDesC8Array * DefaultHeadersL ( const TDesC8 & aMethod ) const

Parameters

const TDesC8 & aMethod

DtmfObserver()

MMceDtmfObserver * DtmfObserver ( ) const

Gets dtmf observer

EventObserver()

MMceEventObserver * EventObserver ( ) const

Gets event observer

Events()

IMPORT_C const RPointerArray < CMceEvent > & Events ( ) const

Gets currently ongoing events

FindAssociatedSession(TUint32)

CMceSession * FindAssociatedSession ( TUint32 aDialogId ) const

Finds associated session

Parameters

TUint32 aDialogId

FindRefer(const CMceEvent &)

CMceRefer * FindRefer ( const CMceEvent & aEvent )

Finds a refer instance for an event.

Parameters

const CMceEvent & aEvent The event

HandleIncomingEventL(TMceIds &)

void HandleIncomingEventL ( TMceIds & aIds )

handles incoming event

Parameters

TMceIds & aIds The ids

InEventObserver()

MMceInEventObserver * InEventObserver ( ) const

Gets observer for incoming events

InReferObserver()

MMceInReferObserver * InReferObserver ( ) const

Gets observer for incoming refers

InSessionObserver()

MMceInSessionObserver * InSessionObserver ( ) const

Gets observer for incoming sessions

InTransactionObserver()

MMceInTransactionObserver * InTransactionObserver ( ) const

Gets transaction observer

IncomingSessionUpdateL(CMceInSession &, CMceSession &)

void IncomingSessionUpdateL ( CMceInSession & aNewSession,
CMceSession & aOldSession
) [private]

New session registers itself and deregisters its old (zombie) instance.

Parameters

CMceInSession & aNewSession the new session
CMceSession & aOldSession the old session

MediaObserver()

MMceStreamObserver * MediaObserver ( ) const

Gets media observer

NewL(const TUid &, TMceTransactionDataContainer *)

IMPORT_C CMceManager * NewL ( const TUid & aAppUid,
TMceTransactionDataContainer * aContainer = 0
) [static]

Two-phased constructor.

Parameters

const TUid & aAppUid Identification of the application.
TMceTransactionDataContainer * aContainer = 0 If set, detailed data provided in observers. Ownership is not transferred, instance must not be deleted in lifetime of CMceManager.

NextMediaId()

TMceMediaId NextMediaId ( )

Returns next id

PrepareForITC(TMceIds &, TUint)

void PrepareForITC ( TMceIds & aId,
TUint aRole
) const [private]

prepares for ITC

Parameters

TMceIds & aId
TUint aRole role as sip session manager or event manager

ReceiveSupportedAudioCodecsL()

void ReceiveSupportedAudioCodecsL ( ) [private]

Receives supported audio codecs

ReceiveSupportedVideoCodecsL()

void ReceiveSupportedVideoCodecsL ( ) [private]

Receives supported video codecs

ReferObserver()

MMceReferObserver * ReferObserver ( ) const

Gets refer observer

Refers()

IMPORT_C const RPointerArray < CMceRefer > & Refers ( ) const

Gets currently ongoing refers

RegisterEventL(CMceEvent *, CDesC8Array &, TUint32 &, TUint32)

TUint32 RegisterEventL ( CMceEvent * aEvent,
CDesC8Array & aParams,
TUint32 & aDialogId,
TUint32 aDialogType
) [private]

Event registers itself to event manager

Parameters

CMceEvent * aEvent the event
CDesC8Array & aParams parameter list for dialog creation
TUint32 & aDialogId in/out dialog id
TUint32 aDialogType the dialog type

RegisterReferL(CMceRefer *, CDesC8Array &, TUint32 &)

TUint32 RegisterReferL ( CMceRefer * aRefer,
CDesC8Array & aParams,
TUint32 & aDialogId
) [private]

Refer registers itself to event manager

Parameters

CMceRefer * aRefer the refer
CDesC8Array & aParams parameter list for dialog creation
TUint32 & aDialogId in/out dialog id

RegisterSessionL(CMceSession *, CDesC8Array &, TUint32 &, TBool &)

TUint32 RegisterSessionL ( CMceSession * aSession,
CDesC8Array & aParams,
TUint32 & aDialogId,
TBool & aConnectionState
) [private]

Session registers itself to manager

Parameters

CMceSession * aSession the session
CDesC8Array & aParams parameter list for dialog creation
TUint32 & aDialogId in/out dialog id
TBool & aConnectionState in/out connection state

RemoveSession(CMceSession *)

void RemoveSession ( CMceSession * aSession ) [private]

Removes session

Parameters

CMceSession * aSession the session

RtpObserver()

MMceRtpObserver * RtpObserver ( ) const

Gets rtp observer

ServerSession()

RMce & ServerSession ( ) const

Returns server sessiom

SessionObserver()

MMceSessionObserver * SessionObserver ( ) const

Gets session observer

Sessions()

IMPORT_C const RPointerArray < CMceSession > & Sessions ( ) const

Gets currently ongoing sessions

SetDefaultHeadersL(CDesC8Array *, CDesC8Array *)

IMPORT_C void SetDefaultHeadersL ( CDesC8Array * aMethods,
CDesC8Array * aHeaders
)

Parameters

CDesC8Array * aMethods
CDesC8Array * aHeaders

SetDtmfObserver(MMceDtmfObserver *)

IMPORT_C void SetDtmfObserver ( MMceDtmfObserver * aDtmfObserver )

Sets observer for DTMF events.

Parameters

MMceDtmfObserver * aDtmfObserver

SetEventObserver(MMceEventObserver *)

IMPORT_C void SetEventObserver ( MMceEventObserver * aEventObserver )

Sets observer for incoming events.

Parameters

MMceEventObserver * aEventObserver Observer of the event. Ownership is not transferred. May be NULL to remove observer.

SetInEventObserver(MMceInEventObserver *)

IMPORT_C void SetInEventObserver ( MMceInEventObserver * aInEventObserver )

Set observer for incoming events.

Parameters

MMceInEventObserver * aInEventObserver Observer of the events. Ownership is not transferred. May be NULL to remove observer.

SetInReferObserver(MMceInReferObserver *)

IMPORT_C void SetInReferObserver ( MMceInReferObserver * aInReferObserver )

Set observer for incoming refers.

Parameters

MMceInReferObserver * aInReferObserver Observer of the refers. Ownership is not transferred. May be NULL to remove observer.

SetInSessionObserver(MMceInSessionObserver *)

IMPORT_C void SetInSessionObserver ( MMceInSessionObserver * aInSessionObserver )

Set observer for incoming sessions.

Parameters

MMceInSessionObserver * aInSessionObserver Observer of the sessions. Ownership is not transferred. May be NULL to remove observer.

SetInTransactionObserver(MMceInTransactionObserver *)

IMPORT_C void SetInTransactionObserver ( MMceInTransactionObserver * aInTransactionObserver )

Sets observer for incoming SIP extension requests.

Parameters

MMceInTransactionObserver * aInTransactionObserver

SetMediaObserver(MMceStreamObserver *)

IMPORT_C void SetMediaObserver ( MMceStreamObserver * aMediaObserver )

Set observer for medias

Parameters

MMceStreamObserver * aMediaObserver Observer of medias. Ownership is not transferred. May be NULL to remove observer.

SetReferObserver(MMceReferObserver *)

IMPORT_C void SetReferObserver ( MMceReferObserver * aReferObserver )

Sets observer for incoming REFER events.

Parameters

MMceReferObserver * aReferObserver Observer of the event. Ownership is not transferred. May be NULL to remove observer.

SetRtpObserver(MMceRtpObserver *)

IMPORT_C void SetRtpObserver ( MMceRtpObserver * aRtpObserver )

Set observer for rtp

Parameters

MMceRtpObserver * aRtpObserver Observer of rtp. Ownership is not transferred. May be NULL to remove observer.

SetSessionObserver(MMceSessionObserver *)

IMPORT_C void SetSessionObserver ( MMceSessionObserver * aSessionObserver )

Set observer for sessions.

Parameters

MMceSessionObserver * aSessionObserver Observer of the sessions. Ownership is not transferred. May be NULL to remove observer.

SetTransactionObserver(MMceTransactionObserver *)

IMPORT_C void SetTransactionObserver ( MMceTransactionObserver * aTransactionObserver )

Sets observer for incoming SIP responses to outgoing in-dialog requests.

Parameters

MMceTransactionObserver * aTransactionObserver

SupportedAudioCodecs()

IMPORT_C const RPointerArray < const CMceAudioCodec > & SupportedAudioCodecs ( ) const

Returns supported audio codecs of the system.

SupportedVideoCodecs()

IMPORT_C const RPointerArray < const CMceVideoCodec > & SupportedVideoCodecs ( ) const

Returns supported video codecs of the system.

TransactionContainer()

TMceTransactionDataContainer * TransactionContainer ( ) const

Returs transaction container for detailed data.

TransactionObserver()

MMceTransactionObserver * TransactionObserver ( ) const

Gets transaction observer

TranscodeCompleted(const CMceFileSource &)

void TranscodeCompleted ( const CMceFileSource & aFile )

Called when trancoding is completed

Parameters

const CMceFileSource & aFile The file

TranscodeL(CMceFileSource &)

TUint32 TranscodeL ( CMceFileSource & aFile )

Starts transcoding of file

Parameters

CMceFileSource & aFile The file

UnregisterEvent(CMceEvent *)

void UnregisterEvent ( CMceEvent * aEvent ) [private]

Event unregisters itself to event manager

Parameters

CMceEvent * aEvent the event

UnregisterRefer(CMceRefer *)

void UnregisterRefer ( CMceRefer * aRefer ) [private]

Refer unregisters itself to event manager

Parameters

CMceRefer * aRefer the refer

UnregisterSession(CMceSession *)

void UnregisterSession ( CMceSession * aSession ) [private]

Session unregisters itself to manager

Parameters

CMceSession * aSession the session

Member Data Documentation

TUid iAppUid

TUid iAppUid [private]

application UID

TMceTransactionDataContainer * iContainer

TMceTransactionDataContainer * iContainer [private]

Transaction data container.

TBool iDetailedCallbacks

TBool iDetailedCallbacks [private]

detailed callbacks wanted

MMceDtmfObserver * iDtmfObserver

MMceDtmfObserver * iDtmfObserver [private]

Dtmf observer.

MMceEventObserver * iEventObserver

MMceEventObserver * iEventObserver [private]

Event observer.

CMceEventManagerReceiver * iEventReceiver

CMceEventManagerReceiver * iEventReceiver [private]

manager receiver for events

RPointerArray< CMceEvent > iEvents

RPointerArray < CMceEvent > iEvents [private]

events

MMceInEventObserver * iInEventObserver

MMceInEventObserver * iInEventObserver [private]

manager observer for incoming events

MMceInReferObserver * iInReferObserver

MMceInReferObserver * iInReferObserver [private]

manager observer for incoming refers

MMceInSessionObserver * iInSessionObserver

MMceInSessionObserver * iInSessionObserver [private]

manager observer for incoming sessions

MMceInTransactionObserver * iMceInTransactionObserver

MMceInTransactionObserver * iMceInTransactionObserver [private]

MCE In Transaction observer

MMceTransactionObserver * iMceTransactionObserver

MMceTransactionObserver * iMceTransactionObserver [private]

MCE Transaction observer

MMceStreamObserver * iMediaObserver

MMceStreamObserver * iMediaObserver [private]

media observer

TUint32 iNextId

TUint32 iNextId [private]

next id

MMceReferObserver * iReferObserver

MMceReferObserver * iReferObserver [private]

Refer observer.

RPointerArray< CMceRefer > iRefers

RPointerArray < CMceRefer > iRefers [private]

refers

TAny * iReserved

TAny * iReserved [private]

MMceRtpObserver * iRtpObserver

MMceRtpObserver * iRtpObserver [private]

rtp observer

CMceItcSender * iSender

CMceItcSender * iSender [private]

sender

RMce * iServerSession

RMce * iServerSession [private]

server client session

MMceSessionObserver * iSessionObserver

MMceSessionObserver * iSessionObserver [private]

session observer

CMceManagerReceiver * iSessionReceiver

CMceManagerReceiver * iSessionReceiver [private]

manager receiver for sessions

RPointerArray< CMceSession > iSessions

RPointerArray < CMceSession > iSessions [private]

sessions

RPointerArray< const CMceAudioCodec > iSupportedAudioCodecs

RPointerArray < const CMceAudioCodec > iSupportedAudioCodecs [private]

supported audio codecs

RPointerArray< const CMceVideoCodec > iSupportedVideoCodecs

RPointerArray < const CMceVideoCodec > iSupportedVideoCodecs [private]

supported video codecs

RPointerArray< CMceFileSource > iTranscodingFiles

RPointerArray < CMceFileSource > iTranscodingFiles [private]

currently transcoding files