diff -r 594d59766373 -r 7d48bed6ce0c convergedcallengine/csplugin/src/cspvoicecall.cpp --- a/convergedcallengine/csplugin/src/cspvoicecall.cpp Thu Aug 19 10:28:14 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,244 +0,0 @@ -/* -* Copyright (c) 2007 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: Implements class CSPVoiceCall which provides call functionality -* -*/ - - -#include -#include -#include -#include - -#include "cspvoicecall.h" -#include "cspetelcallrequester.h" -#include "cspetelcalleventmonitor.h" -#include "cspetelcallstatusmonitor.h" -#include "csplogger.h" -#include "csppanic.pan" -#include "cspconsts.h" -#include "mcspcommoninfo.h" - - -// --------------------------------------------------------------------------- -// CSPVoiceCall::NewL Two phased construction. -// --------------------------------------------------------------------------- -// -CSPVoiceCall* CSPVoiceCall::NewL( const TDesC& aName, - RMobileLine& aLine, TBool aMobileOriginated, - const CCCECallParameters& aParams, - MCSPCommonInfo& aCommonInfo, - TBool aIsEmergency ) - { - CSPLOGSTRING(CSPOBJECT, "CSPVoiceCall::NewL <"); - - CSPVoiceCall* self = new ( ELeave ) CSPVoiceCall( aLine, - aMobileOriginated, - aName, - aCommonInfo, - aIsEmergency ); - CleanupStack::PushL( self ); - self->ConstructL( aParams ); - CleanupStack::Pop( self ); - CSPLOGSTRING(CSPOBJECT, "CSPVoiceCall::NewL >"); - return self; - } - -// --------------------------------------------------------------------------- -// CSPVoiceCall::~CSPVoiceCall -// --------------------------------------------------------------------------- -// -CSPVoiceCall::~CSPVoiceCall() - { - CSPLOGSTRING(CSPOBJECT, "CSPVoiceCall::~CSPVoiceCall"); - } - -// --------------------------------------------------------------------------- -// CSPVoiceCall::GoOneToOneL -// Goes one to one from conference. -// --------------------------------------------------------------------------- -// -TInt CSPVoiceCall::GoOneToOne( ) - { - CSPLOGSTRING(CSPREQIN, "CSPVoiceCall::GoOneToOne"); - return iRequester->MakeRequest( - CSPEtelCallRequester::ERequestTypeGoOneToOne ); - } - -// --------------------------------------------------------------------------- -// From class MCCPCSCall -// CSPVoiceCall::Dial -// --------------------------------------------------------------------------- -// -TInt CSPVoiceCall::DialFdnCond( TBool aFdnCond ) - { - CSPLOGSTRING(CSPREQIN, "CSPVoiceCall::DialFdnCond <"); - - if ( !iMobileOriginated ) - { - CSPLOGSTRING(CSPINT, - "CSPVoiceCall::DialFdnCond MT CALL, Dial not supported"); - return KErrNotSupported; - } - - CSPLOGSTRING(CSPINT, "CSPVoiceCall::DialFdnCond making request"); - - SetDefaultCallParameters(); - iCommonInfo.InitializeCallParameters( iCallParams ); - iCallParams.iSubAddress = iParams->SubAddress(); - iCallParams.iBearerCap1 = iParams->Bearer(); - - if ( CCCECallParameters::ECCECallOriginSAT == iParams->Origin() ) - { - iCallParams.iCallParamOrigin = RMobileCall::EOriginatorSIM; - } - - TInt err(KErrNone); - if ( aFdnCond ) - { - err = iRequester->MakeDialRequest( iCallParamsPckg, iRemotePartyNumber ); - } - else - { - err = iRequester->MakeDialNoFdnCheckRequest( - iCallParamsPckg, iRemotePartyNumber ); - } - CSPLOGSTRING2(CSPINT, "CSPVoiceCall::DialFdnCond > res: %d", err ); - return err; - } - -// --------------------------------------------------------------------------- -// Make the DialEmergencyCall request to ETel ( impl. of MCCPEmergencyCall ) -// --------------------------------------------------------------------------- -// -TInt CSPVoiceCall::Dial( const TDesC& aEmergencyNumber ) - { - CSPLOGSTRING2(CSPREQIN, "CSPVoiceCall::Dial EMERGENCY %S", &aEmergencyNumber); - iDialCompletionCode = KErrNone; - iTerminationErrorNotified = EFalse; - iIsEmergencyCall = ETrue; - iEmergencyNumber.Zero(); - TInt emergencyNumberLength = aEmergencyNumber.Length(); - - if ( emergencyNumberLength > 0 && - emergencyNumberLength <= RMobileENStore::KEmergencyNumberSize ) - { - iEmergencyNumber.Append( aEmergencyNumber ); - } - else if ( emergencyNumberLength > RMobileENStore::KEmergencyNumberSize ) - { - CSPLOGSTRING(CSPERROR, "CSPVoiceCall::Dial invalid argument" ); - return KErrArgument; - } - - CSPLOGSTRING2(CSPREQIN, "CSPVoiceCall::Dial using %S", &iEmergencyNumber); - - TInt err( iRequester->MakeDialEmergencyRequest( iEmergencyNumber ) ); - - CSPLOGSTRING2(CSPINT, "CSPVoiceCall::Dial res %d", err ); - return err; - } - -// --------------------------------------------------------------------------- -// From class MCCPCall -// CSPVoiceCall::Answer -// --------------------------------------------------------------------------- -// -TInt CSPVoiceCall::Answer() - { - CSPLOGSTRING(CSPREQIN, "CSPVoiceCall::Answer"); - return CSPCall::Answer(); - } - -// --------------------------------------------------------------------------- -// From class MCCPCall -// CSPCall::HangUp -// --------------------------------------------------------------------------- -// -TInt CSPVoiceCall::HangUp() - { - CSPLOGSTRING(CSPREQIN, "CSPVoiceCall::HangUp"); - return CSPCall::HangUp(); - } - -// --------------------------------------------------------------------------- -// From class MCCPCall -// CSPVoiceCall::Cancel -// --------------------------------------------------------------------------- -// -TInt CSPVoiceCall::Cancel() - { - CSPLOGSTRING(CSPREQIN, "CSPVoiceCall::Cancel"); - return CSPCall::Cancel(); - } - -// --------------------------------------------------------------------------- -// From class MCCPCSCall -// CSPVoiceCall::SwitchAlternatingCall -// --------------------------------------------------------------------------- -// -TInt CSPVoiceCall::SwitchAlternatingCall() - { - CSPLOGSTRING(CSPERROR, "CSPVoiceCall::SwitchAlternatingCall not supported!"); - return KErrNotSupported; - } - -// --------------------------------------------------------------------------- -// CSPVoiceCall::CSPVoiceCall -// --------------------------------------------------------------------------- -// -CSPVoiceCall::CSPVoiceCall( RMobileLine& aLine, - TBool aMobileOriginated, - const TDesC& aName, - MCSPCommonInfo& aCommonInfo, - TBool aIsEmergency ):CSPCall( aLine, - aMobileOriginated, aName, - aCommonInfo, aIsEmergency ), - iCallParams(), - iCallParamsPckg (iCallParams) - - { - CSPLOGSTRING(CSPOBJECT, "CSPVoiceCall::CSPVoiceCall"); - } - -// --------------------------------------------------------------------------- -// CSPVoiceCall::ConstructL -// Constructing CSPVoiceCall for MT call. -// --------------------------------------------------------------------------- -// -void CSPVoiceCall::ConstructL( const CCCECallParameters& aParams ) - { - CSPLOGSTRING(CSPOBJECT, "CSPVoiceCall::ConstructL <"); - CSPCall::ConstructL( aParams ); - CSPLOGSTRING(CSPOBJECT, "CSPVoiceCall::ConstructL >"); - } - -// --------------------------------------------------------------------------- -// CSPVoiceCall::SetDefaultCallParameters -// --------------------------------------------------------------------------- -// -void CSPVoiceCall::SetDefaultCallParameters() - { - CSPLOGSTRING(CSPOBJECT, "CSPVoiceCall::SetDefaultCallParameters"); - - //Set defaults - iCallParams.iSpeakerControl = RMobileCall::EMonitorSpeakerControlAlwaysOn; - iCallParams.iSpeakerVolume = RMobileCall::EMonitorSpeakerVolumeMedium; - iCallParams.iInterval = KCSPDefaultInterval; - iCallParams.iWaitForDialTone = RMobileCall::EDialToneNoWait; - iCallParams.iIdRestrict = RMobileCall::EIdRestrictDefault; - iCallParams.iAutoRedial = KCSPDefaultAutoRedial; - } - -// End of File