diff -r 000000000000 -r 1bce908db942 multimediacommsengine/tsrc/ututils/src/CMCETls.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/multimediacommsengine/tsrc/ututils/src/CMCETls.cpp Tue Feb 02 01:04:58 2010 +0200 @@ -0,0 +1,175 @@ +/* +* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + + + + +#include "cmcetls.h" +#include "mceserial.h" +#include "mcemediamanager.h" +#include +#include +#include +#include + + +void CMCETls::OpenL () + { + CMCETls* self = new (ELeave) CMCETls(); + Dll::SetTls( self ); + } + +void CMCETls::Close () + { + CMCETls* self = Storage(); + delete self; + Dll::SetTls( NULL ); + } + + +CMCETls* CMCETls::Storage() + { + return static_cast(Dll::Tls()); + } + + +void CMCETls::Store( TMceIds aManagerIds ) + { + iManagerIds = aManagerIds; + } + +void CMCETls::StoreL( TMceIds aIds, + CMceMsgBase& aContext, + HBufC8* aContent ) + + { + + aIds.iMsgType = aContext.Type(); + iIds = aIds; + delete iContextClient; + iContextClient = NULL; + aContext.EncodeL(); + iContextClient = aContext.EncodeBufferCloneL(); + + delete iContentClient; + iContentClient = aContent; + + } + +void CMCETls::StoreL( TMceIds aIds, + const TDesC8& aContext ) + { + + iIds = aIds; + delete iContextClient; + iContextClient = NULL; + iContextClient = aContext.AllocL(); + } + + +void CMCETls::SIPSends( RStringF aMethod, CSIPMessageElements* aMessage ) + { + iSipSentMethod = aMethod; + delete iSipSentMessage; + iSipSentMessage = aMessage; + if ( iSipSentMethod == SIPStrings::StringF( SipStrConsts::EAck ) ) + { + iAckSent = ETrue; + } + } + +void CMCETls::SIPSends( RStringF aMethod, CSIPResponseElements* aResponse ) + { + iSipResponseToMethod = aMethod; + delete iSipSentResponse; + iSipSentResponse = aResponse; + } + +void CMCETls::MediaManagerAction( TMMActionType aType, const TAny* aObject ) + { + iMediaManagerAction = aType; + iMMObject = aObject; + } + +void CMCETls::MediaManagerSdpAction( TMMActionType aType, TAny* aObject ) + { + iMediaManagerSdpAction = aType; + iMMObject = aObject; + } + + +CMCETls::CMCETls() + : iMediaManagerAction( ENone ), + iMediaManagerSdpAction( ENone ), + iCompletionCode( -1 ), + iAckSent( EFalse ), + iIdsIndex( 0 ), + iMediaManagerUpdateStatus( KMceReady ), + iMediaManagerDecodeStatus( KErrNone ), + iMediaManagerReserveStatus( KMceReady ), + iMediaManagerNeedToNegotiate( ETrue ), + iLeaveError( KErrNone ), + iLeaveParam( KErrNone ), + iRole(EMceRoleAnswerer) + { + //NOP + } + +void CMCETls::SetCallback( TCallBack aCallBack ) + { + iCallBack = aCallBack; + } + +void CMCETls::ExecuteCallback() + { + iCallBack.CallBack(); + } + + + +CMCETls::~CMCETls() + { + + delete iContextClient; + delete iContentClient; + delete iContextServer; + delete iContentServer; + delete iSipSentMessage; + delete iSipSentResponse; + + + } + +void CMCETls::SetLeave( TInt aError, TUint32 aParam ) + { + iLeaveError = aError; + iLeaveParam = aParam; + } + +TInt CMCETls::LeaveError( TUint32 aParam ) + { + if ( aParam == iLeaveParam ) + { + return iLeaveError; + } + else + { + return KErrNone; + } + } + +//end of file \ No newline at end of file