diff -r 65a3ef1d5bd0 -r f742655b05bf callcontinuity/vcchotrigger/src/vccgsmsignallevelhandler.cpp --- a/callcontinuity/vcchotrigger/src/vccgsmsignallevelhandler.cpp Thu Aug 19 09:45:22 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,164 +0,0 @@ -/* -* Copyright (c) 2007-2008 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 - -#include "vccgsmsignallevelhandler.h" -#include "rubydebug.h" - -static const TInt32 KStrengthMin = 110; - -// ======== MEMBER FUNCTIONS ======== -// --------------------------------------------------------------------------- -// C++ constructor -// --------------------------------------------------------------------------- -// -CVccGsmSignalLevelHandler::CVccGsmSignalLevelHandler( - MVccSignalLevelObserver& aObserver, - const TSignalLevelParams& aParams ) - : CVccSignalLevelHandler( aObserver, aParams ) - { - } - -// --------------------------------------------------------------------------- -// Symbian constructor. -// --------------------------------------------------------------------------- -// -void CVccGsmSignalLevelHandler::ConstructL() - { - RUBY_DEBUG_BLOCKL( "CVccGsmSignalLevelHandler::ConstructL" ); - - CVccSignalLevelHandler::ConstructL(); - User::LeaveIfError( iEtelServer.Connect() ); - User::LeaveIfError( iEtelServer.LoadPhoneModule( KMmTsyModuleName ) ); - User::LeaveIfError( iPhone.Open( iEtelServer, KMmTsyPhoneName ) ); - iGsmNotifications = CVccGsmNotifications::NewL( iPhone ); - } - -// --------------------------------------------------------------------------- -// Symbian constructor. -// --------------------------------------------------------------------------- -// -CVccGsmSignalLevelHandler * CVccGsmSignalLevelHandler::NewL( - MVccSignalLevelObserver& aObserver, - const TSignalLevelParams& aParams ) - { - CVccGsmSignalLevelHandler * self = - CVccGsmSignalLevelHandler::NewLC( aObserver, aParams ); - CleanupStack::Pop(self); - return self; - } - -// --------------------------------------------------------------------------- -// Symbian constructor. -// --------------------------------------------------------------------------- -// -CVccGsmSignalLevelHandler * CVccGsmSignalLevelHandler::NewLC( - MVccSignalLevelObserver& aObserver, - const TSignalLevelParams& aParams ) - { - CVccGsmSignalLevelHandler * self = - new(ELeave) CVccGsmSignalLevelHandler( aObserver, aParams ); - CleanupStack::PushL(self); - self->ConstructL(); - return self; - } - -// --------------------------------------------------------------------------- -// C++ destructor. -// --------------------------------------------------------------------------- -// -CVccGsmSignalLevelHandler::~CVccGsmSignalLevelHandler() - { - Cancel(); // Cancel any request, if outstanding - delete iGsmNotifications; - iPhone.Close(); - iEtelServer.Close(); - } - -// --------------------------------------------------------------------------- -// Enables signal level change notifications. -// --------------------------------------------------------------------------- -// -void CVccGsmSignalLevelHandler::EnableNotificationsL() - { - RUBY_DEBUG_BLOCK( "CVccGsmSignalLevelHandler::EnableNotificationsL" ); - - iGsmNotifications->ActivateNotifications( this, - iParams.iLowLevel, iParams.iHighLevel ); - } - -// --------------------------------------------------------------------------- -// Disables signal level change notifications. -// --------------------------------------------------------------------------- -// -void CVccGsmSignalLevelHandler::DisableNotifications() - { - iGsmNotifications->CancelNotifications(); - } - -// --------------------------------------------------------------------------- -// Issues signal strength request to RMobilePhone. -// --------------------------------------------------------------------------- -// -void CVccGsmSignalLevelHandler::GetStrength() - { - RUBY_DEBUG_BLOCK( "CVccGsmSignalLevelHandler::GetStrength" ); - - iPhone.GetSignalStrength( iStatus, iStrength, iBar ); - RUBY_DEBUG3( " -iStatus = %d, iStrength = %d, iBar = %d", - iStatus.Int(), iStrength, iBar ); - } - -// --------------------------------------------------------------------------- -// Cancels signal strength request -// --------------------------------------------------------------------------- -// -void CVccGsmSignalLevelHandler::CancelGetStrength() - { - RUBY_DEBUG_BLOCK( "CVccGsmSignalLevelHandler::CancelGetStrength" ); - - // EMobilePhoneNotifyModeChange - iPhone.CancelAsyncRequest( EMobilePhoneGetSignalStrength ); - } - -// --------------------------------------------------------------------------- -// Notification that signal strength has changed is received. -// --------------------------------------------------------------------------- -// -void CVccGsmSignalLevelHandler::GsmStrengthChanged( TInt32 aStrength ) - { - RUBY_DEBUG_BLOCK( "CVccGsmSignalLevelHandler::GsmStrengthChanged" ); - RUBY_DEBUG1( " -aStrength = %d", aStrength ); - - iStrength = aStrength ? aStrength : KStrengthMin; - StrengthChanged(); - } - -// --------------------------------------------------------------------------- -// Notififies observer about signal level change. -// --------------------------------------------------------------------------- -// -void CVccGsmSignalLevelHandler::NotifyChanges( - TInt32 aSignalStrength, - MVccSignalLevelObserver::TSignalStrengthClass aClass ) - { - RUBY_DEBUG_BLOCK( "CVccGsmSignalLevelHandler::NotifyChanges" ); - iObserver.GsmSignalChanged( aSignalStrength, aClass ); - }