camerauis/cameraapp/generic/src/CamZoomUpdateManager.cpp
changeset 19 d9aefe59d544
parent 3 8b2d6d0384b0
child 21 fa6d9f75d6a6
child 28 3075d9b614e6
--- a/camerauis/cameraapp/generic/src/CamZoomUpdateManager.cpp	Tue Feb 02 00:01:39 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,218 +0,0 @@
-/*
-* Copyright (c) 2003-2009 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:  ????????????????
-*
-*/
-
-
-
-//INCLUDES
-#include "CamZoomUpdateManager.h"
-#include "CamUtility.h"
-#include "CameraUiConfigManager.h"
-
-
-
-//MACROS
-
-// Cooldown period inbetween camera driver updates
-const TInt KCamZoomCooldown    = 200000;  // .2  seconds
-const TInt KCamMaxZoomCooldown = 250000;  // .25 seconds
-
-
-// ====================== MEMBER FUNCTIONS =====================
-
-// -----------------------------------------------------------------------------
-// CCamZoomUpdateManager::NewL
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CCamZoomUpdateManager* CCamZoomUpdateManager::NewL( CCamAppController& aController )
-    {
-    PRINT((_L("CCamZoomUpdateManager::NewL in")));
-    CCamZoomUpdateManager* self = new(ELeave) CCamZoomUpdateManager( aController );
-    CleanupStack::PushL(self);
-    self->ConstructL ();
-    CleanupStack::Pop();
-    PRINT((_L("CCamZoomUpdateManager::NewL out")));
-    return self;
-    }
-
-
-// -----------------------------------------------------------------------------
-// CCamZoomUpdateManager::CCamZoomUpdateManager
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// -----------------------------------------------------------------------------
-//
-CCamZoomUpdateManager::CCamZoomUpdateManager( CCamAppController& aController ) :
-        CActive( /*EPriorityStandard*/ EPriorityUserInput ),
-        iController( aController )
-    {
-    iDelayedUpdate = EFalse;
-    }
-
-// -----------------------------------------------------------------------------
-// CCamZoomUpdateManager::~CCamZoomUpdateManager
-// Destructor.
-// -----------------------------------------------------------------------------
-//
-
-CCamZoomUpdateManager::~CCamZoomUpdateManager()
-{
-    PRINT((_L("CCamZoomUpdateManager::~CCamZoomUpdateManager() in")));
-    Cancel();
-    iTimer.Close();
-    PRINT((_L("CCamZoomUpdateManager::~CCamZoomUpdateManager() out")));
-}
-
-// -----------------------------------------------------------------------------
-// CCamZoomUpdateTimer::ConstructL
-// Symbian 2nd phase constructor.
-// -----------------------------------------------------------------------------
-//
-void CCamZoomUpdateManager::ConstructL()
-    {
-    PRINT((_L("CCamZoomUpdateManager::ConstructL() in")));
-    TRAPD( err, ReadDelayValuesL() );
-    if( err )
-        {
-        PRINT((_L("CCamZoomUpdateManager::ConstructL() error in reading delay values")));
-        }
-    User::LeaveIfError(iTimer.CreateLocal());
-    CActiveScheduler::Add(this);
-    PRINT((_L("CCamZoomUpdateManager::ConstructL() out")));
-    }
-    
-// -----------------------------------------------------------------------------
-// CCamZoomUpdateManager::SetZoomValue
-// 
-// -----------------------------------------------------------------------------
-//
-void CCamZoomUpdateManager::SetZoomValue( TInt aValue )
-    {
-    PRINT((_L("CCamZoomUpdateManager::SetZoomValue() => in")));
-    
-    // PUT IN MUTEX????
-    
-    // update value
-    iValue = aValue;
-    
-    if ( IsActive() )
-        {
-        // check for starvation
-        TTime current;
-        current.UniversalTime();
-        TInt64 delay = current.MicroSecondsFrom(iCooldownStart).Int64();
-        
-        if ( delay > iCamMaxZoomCooldown )
-            {
-            PRINT((_L("CCamZoomUpdateManager::SetZoomValue() <> IsActive, starved")));
-            
-            // force update if active object is starved
-            Cancel();
-            UpdateAndStartWait();
-            }
-        else
-            {
-            PRINT((_L("CCamZoomUpdateManager::SetZoomValue() <> IsActive, updating iValue")));
-            
-            // set the delayed update flag and wait
-            iDelayedUpdate = ETrue;    
-            }
-        }
-    else
-        {
-        PRINT((_L("CCamZoomUpdateManager::SetZoomValue() <> IsNotActive, setting zoom")));
-        
-        // notify controller and set active
-        UpdateAndStartWait();
-        }
-    
-    PRINT((_L("CCamZoomUpdateManager::SetZoomValue() <= out")));
-    }
-
-// -----------------------------------------------------------------------------
-// CCamZoomUpdateManager::UpdateAndStartWait
-// 
-// -----------------------------------------------------------------------------
-//
-void CCamZoomUpdateManager::UpdateAndStartWait()
-    {
-    // update cooldown start time
-    iCooldownStart.UniversalTime();
-    
-    // reset delayed update flag
-    iDelayedUpdate = EFalse;
-    
-    // notify iController
-    iController.SetZoomValue( iValue );
-        
-    // activate cooldown period
-    SetActive();
-    iTimer.After( iStatus, iCamZoomCooldown );
-    }
-
-// -----------------------------------------------------------------------------
-// CCamZoomUpdateManager::RunL
-// 
-// -----------------------------------------------------------------------------
-//
-void CCamZoomUpdateManager::RunL()
-    {
-    PRINT((_L("CCamZoomUpdateManager::RunL() in")));
-    
-    //PUT IN MUTEX??
-    
-    if ( iDelayedUpdate )
-        {
-        // notify controller and set active
-        UpdateAndStartWait();
-        }
-     
-    PRINT((_L("CCamZoomUpdateManager::RunL() out")));
-    }
-
-// -----------------------------------------------------------------------------
-// CCamZoomUpdateManager::DoCancel
-// Cancels the timer
-// -----------------------------------------------------------------------------
-//
-void CCamZoomUpdateManager::DoCancel()
-    {
-    PRINT((_L("CCamZoomUpdateManager::DoCancel() in")));
-    // cancel the timer
-    iTimer.Cancel();
-    PRINT((_L("CCamZoomUpdateManager::DoCancel() out")));
-    }
-    
-// -----------------------------------------------------------------------------
-// CCamZoomUpdateManager::ReadDelayValuesL
-// Gets delay values from cenrep
-// -----------------------------------------------------------------------------
-//
-void CCamZoomUpdateManager::ReadDelayValuesL()
-    {
-    // default values are used in case of error
-    iCamZoomCooldown = KCamZoomCooldown;
-    iCamMaxZoomCooldown = KCamMaxZoomCooldown;
-    RArray<TInt> delayValues;
-    if( iController.UiConfigManagerPtr() )
-        {
-        iController.UiConfigManagerPtr()->SupportedZoomDelaysL( delayValues );
-        iCamZoomCooldown = delayValues[0]*1000;
-        iCamMaxZoomCooldown = delayValues[1]*1000;
-        }
-    }
-// End of File