--- a/internetradio2.0/uisrc/irsystemeventcollector.cpp Mon May 03 12:25:23 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,348 +0,0 @@
-/*
-* Copyright (c) 2006-2006 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: Implementation of CIRSystemEventCollector
-*
-*/
-
-
-#include <e32cmn.h>
-#include <UiklafInternalCRKeys.h>
-#include <centralrepository.h>
-
-#include "iraccessoryobserver.h"
-#include "irdiskspacewatcher.h"
-//#include "irrepositorymanager.h"
-#include "irsystemeventcollector.h"
-#include "irsystemeventdetector.h"
-#include "irdebug.h"
-
-// Constants
-const TInt KIRObserverArrayGranularity( 2 );
-const TInt KIR_DEFAULT_CRITICAL_LEVEL = 3145728; // 3MB
-const TInt KThree =3;
-// ---------------------------------------------------------------------------
-// Constructor
-// ---------------------------------------------------------------------------
-//
-CIRSystemEventCollector::CIRSystemEventCollector() :
- iSystemEventObservers( KIRObserverArrayGranularity )
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::CIRSystemEventCollector" );
- }
-
-// ---------------------------------------------------------------------------
-// Second-phase constructor
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventCollector::ConstructL()
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::ConstructL - Entering" );
- iSystemEventDetector = CIRSystemEventDetector::NewL( *this );
-
- iHeadsetObserver = CIRAccessoryObserver::NewL();
- iHeadsetObserver->SetObserver( this );
-
- TInt criticalLevel = 0;
-
- CRepository* cenrep = CRepository::NewLC(KCRUidUiklaf );
- TInt err = cenrep->Get(KUikOODDiskCriticalThreshold, criticalLevel);
- CleanupStack::PopAndDestroy(cenrep);
- if(err != KErrNone)
- {
- criticalLevel = KIR_DEFAULT_CRITICAL_LEVEL;
- IRLOG_WARNING( "CIRSystemEventCollector::ConstructL - Failed to read criticalLevel. Using default 3MB" );
- }
- criticalLevel = criticalLevel * KThree;
- iDiskSpaceWatcher = CIRDiskSpaceWatcher::NewL( static_cast<TInt64>( criticalLevel ), *this );
- iDiskSpaceWatcher->StartObservingDriveL( KVRDefaultDrive );
-
- IRRDEBUG3("CIRSystemEventCollector::ConstructL - DiskSpaceWather started. driveNum=%d, criticalLevel=%d ", KVRDefaultDrive, criticalLevel );
-
- IRLOG_DEBUG( "CIRSystemEventCollector::ConstructL - Exiting" );
- }
-
-// ---------------------------------------------------------------------------
-// Two-phased constructor
-// ---------------------------------------------------------------------------
-//
-EXPORT_C CIRSystemEventCollector* CIRSystemEventCollector::NewL()
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::NewL - Entering" );
- CIRSystemEventCollector* self = new( ELeave ) CIRSystemEventCollector;
- CleanupStack::PushL( self );
- self->ConstructL();
- CleanupStack::Pop(self);
- IRLOG_DEBUG( "CIRSystemEventCollector::NewL - Exiting" );
- return self;
- }
-
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CIRSystemEventCollector::~CIRSystemEventCollector()
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::~CIRSystemEventCollector - Entering" );
- delete iSystemEventDetector;
- delete iHeadsetObserver;
-
- if( iDiskSpaceWatcher )
- {
- delete iDiskSpaceWatcher;
- iDiskSpaceWatcher = NULL;
- }
-
- iSystemEventObservers.Close();
- IRLOG_DEBUG( "CIRSystemEventCollector::~CIRSystemEventCollector - Exiting" );
- }
-
-// ---------------------------------------------------------------------------
-// Adds a system event observer
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CIRSystemEventCollector::AddObserverL( MIRSystemEventObserver* aHeadsetObserver )
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::AddObserverL - Entering" );
- iSystemEventObservers.AppendL( aHeadsetObserver );
- IRLOG_DEBUG( "CIRSystemEventCollector::AddObserverL - Exiting" );
- }
-
-// ---------------------------------------------------------------------------
-// Removes a system event observer
-// ---------------------------------------------------------------------------
-//
- EXPORT_C void CIRSystemEventCollector::RemoveObserver( MIRSystemEventObserver* aSystemObserver )
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::RemoveObserver - Entering" );
- TInt objectIndex = iSystemEventObservers.Find( aSystemObserver );
-
- if ( objectIndex != KErrNotFound )
- {
- iSystemEventObservers.Remove( objectIndex );
- }
- IRLOG_DEBUG( "CIRSystemEventCollector::RemoveObserver - Exiting" );
- }
-
-// ---------------------------------------------------------------------------
-// Getter for mobile network state
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TBool CIRSystemEventCollector::IsMobileNetworkCoverage() const
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::IsMobileNetworkCoverage" );
- return iSystemEventDetector->IsMobileNetworkCoverage();
- }
-
-// ---------------------------------------------------------------------------
-// Getter for network state
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TBool CIRSystemEventCollector::IsNetworkCoverage() const
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::IsNetworkCoverage" );
- return iSystemEventDetector->IsNetworkCoverage();
- }
-
-// ---------------------------------------------------------------------------
-// Getter for call state
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TBool CIRSystemEventCollector::IsCallActive() const
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::IsCallActive" );
- return iSystemEventDetector->IsCallActive();
- }
-
-// ---------------------------------------------------------------------------
-// Getter for audio resource state
-// ---------------------------------------------------------------------------
-//
-EXPORT_C TBool CIRSystemEventCollector::IsAudioResourcesAvailable() const
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::IsAudioResourcesAvailable" );
- return iSystemEventDetector->IsAudioResourcesAvailable();
- }
-
-// ---------------------------------------------------------------------------
-// Getter for headset connection status
-// ---------------------------------------------------------------------------
-EXPORT_C TBool CIRSystemEventCollector::IsHeadsetConnected() const
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::IsHeadsetConnected" );
- return iHeadsetObserver->IsHeadsetConnected();
- }
-
-// ---------------------------------------------------------------------------
-// Getter disk space state
-// ---------------------------------------------------------------------------
-EXPORT_C TBool CIRSystemEventCollector::IsDiskSpaceBelowCriticalLevel() const
- {
- return iDiskSpaceWatcher->IsBelowCriticalLevel( KVRDefaultDrive );
- }
-
-// ---------------------------------------------------------------------------
-// Getter Vocie UI state
-// ---------------------------------------------------------------------------
-EXPORT_C TBool CIRSystemEventCollector::IsVoiceUiActive() const
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::IsVoiceUiActive" );
- return iSystemEventDetector->IsVoiceUiActive();
- }
-
-// ---------------------------------------------------------------------------
-// Notifies the observers of system event
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventCollector::NotifyObserversL(TIRSystemEventType aEvent)
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::NotifyObserversL - Entering" );
- for (TInt i = 0 ; i < iSystemEventObservers.Count() ; i++ )
- {
- iSystemEventObservers[i]->HandleSystemEventL( aEvent );
- }
- IRLOG_DEBUG( "CIRSystemEventCollector::NotifyObserversL - Exiting" );
- }
-
-// ---------------------------------------------------------------------------
-// From class MIRSystemEventDetectorObserver.
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventCollector::NetworkUpCallbackL()
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::NetworkUpCallbackL - Entering" );
- NotifyObserversL( EIRNetworkCoverageUp );
- IRLOG_DEBUG( "CIRSystemEventCollector::NetworkUpCallbackL - Exiting" );
- }
-
-
-// ---------------------------------------------------------------------------
-// From class MIRSystemEventDetectorObserver.
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventCollector::NetworkDownCallbackL()
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::NetworkDownCallbackL - Entering" );
- NotifyObserversL( EIRNetworkCoverageDown );
- IRLOG_DEBUG( "CIRSystemEventCollector::NetworkDownCallbackL - Exiting" );
- }
-
-
-// ---------------------------------------------------------------------------
-// From class MIRSystemEventDetectorObserver.
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventCollector::CallActivatedCallbackL()
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::CallActivatedCallbackL - Entering" );
- NotifyObserversL( EIRCallActivated );
- IRLOG_DEBUG( "CIRSystemEventCollector::CallActivatedCallbackL - Exiting" );
- }
-
-
-// ---------------------------------------------------------------------------
-// From class MIRSystemEventDetectorObserver.
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventCollector::CallDeactivatedCallbackL()
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::CallDeactivatedCallbackL - Entering" );
- NotifyObserversL( EIRCallDeactivated );
- IRLOG_DEBUG( "CIRSystemEventCollector::CallDeactivatedCallbackL - Exiting" );
- }
-
-
-// ---------------------------------------------------------------------------
-// From class MIRSystemEventDetectorObserver.
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventCollector::AudioResourcesAvailableL()
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::AudioResourcesAvailableL - Entering" );
- NotifyObserversL( EIRAudioResourcesAvailable );
- IRLOG_DEBUG( "CIRSystemEventCollector::AudioResourcesAvailableL - Exiting" );
- }
-
-
-// ---------------------------------------------------------------------------
-// From class MIRSystemEventDetectorObserver.
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventCollector::AudioAutoResumeForbiddenL()
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::AudioAutoResumeForbiddenL - Entering" );
- NotifyObserversL( EIRAudioAutoResumeForbidden );
- IRLOG_DEBUG( "CIRSystemEventCollector::AudioAutoResumeForbiddenL - Exiting" );
- }
-
-// ---------------------------------------------------------------------------
-// From class MIRSystemEventDetectorObserver.
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventCollector::ErrorCallbackL( TInt /* aError VRDEBUGVAR( aError ) d*/)
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::ErrorCallbackL" );
- // P&S get fail not considered as a critical issue.
- return;
- }
-
-// ---------------------------------------------------------------------------
-// From class MIRHeadsetEventObserver.
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventCollector::HeadsetConnectedCallbackL()
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::HeadsetConnectedCallbackL - Entering" );
- NotifyObserversL( EIRHeadsetConnected );
- IRLOG_DEBUG( "CIRSystemEventCollector::HeadsetConnectedCallbackL - Exiting" );
- }
-
-
-// ---------------------------------------------------------------------------
-// From class MIRHeadsetEventObserver.
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventCollector::HeadsetDisconnectedCallbackL()
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::HeadsetDisconnectedCallbackL - Entering" );
- NotifyObserversL( EIRHeadsetDisconnected );
- IRLOG_DEBUG( "CIRSystemEventCollector::HeadsetDisconnectedCallbackL - Exiting" );
- }
-
-// ---------------------------------------------------------------------------
-// From class MIRDiskSpaceWatcherObserver.
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventCollector::NotifyLowDiskSpaceL()
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::NotifyLowDiskSpaceL - Entering" );
- NotifyObserversL( EIRLowDiskSpace );
- IRLOG_DEBUG( "CIRSystemEventCollector::NotifyLowDiskSpaceL - Exiting" );
- }
-
-// ---------------------------------------------------------------------------
-// From class MIRAudioRoutingObserver.
-// ---------------------------------------------------------------------------
-//
-void CIRSystemEventCollector::AudioRoutingChangedL( TVROutputDestination aOutputDestination )
- {
- IRLOG_DEBUG( "CIRSystemEventCollector::AudioRoutingChangedL - Entering" );
- TIRSystemEventType ev = EIRAudioRoutingHeadset;
- if(aOutputDestination != EVRHeadset)
- {
- ev = EIRAudioRoutingSpeaker;
- }
-
- NotifyObserversL( ev );
- IRLOG_DEBUG( "CIRSystemEventCollector::AudioRoutingChangedL - Exiting" );
- }