diff -r 8b2d6d0384b0 -r d9aefe59d544 camerauis/cameraapp/generic/src/cameracontroller/CamCameraCallback.cpp --- a/camerauis/cameraapp/generic/src/cameracontroller/CamCameraCallback.cpp Tue Feb 02 00:01:39 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,294 +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: Emualtor support for CCamCameraController part of cameraapp* -*/ - - - -#include "CamCameraCallback.h" -#include "CameraappTestBitmapManager.h" -#include -#include -#include - -_LIT(KImageFile, "c:\\private\\101F857A\\capture.jpg"); - - -/* -* CCamCameraCallBack* CCamCameraCallBack::NewL -*/ -CCamCameraCallBack* CCamCameraCallBack::NewL( - MCameraObserver& aController ) - { - CCamCameraCallBack* self = new( ELeave ) CCamCameraCallBack( aController ); - CleanupStack::PushL( self ); - self->ConstructL(); - CleanupStack::Pop( self ); - - return self; - } - -/* -* CCamCameraCallBack::CCamCameraCallBack -*/ -CCamCameraCallBack::CCamCameraCallBack( - MCameraObserver& aController ) - : CActive( EPriorityLow ), - iController( aController ) - { - } - -/* -* CCamCameraCallBack::ConstructL() -*/ -void CCamCameraCallBack::ConstructL() - { - CActiveScheduler::Add( this ); - iBitmapManager = CCameraappTestBitmapManager::NewL(); - } - -/* -* CCamCameraCallBack::DoCancel -*/ -void CCamCameraCallBack::DoCancel() - { - // Status update flags - iViewFinderFrame = EFalse; - iStillPrepareComplete = EFalse; - iReserveComplete = EFalse; - iPowerOnComplete = EFalse; - iCaptureImage = EFalse; - - // Error status associated with each request - iReserveError = KErrNone; - iPowerOnError = KErrNone; - } - -/* -* CCamCameraCallBack::~CCamCameraCallBack -*/ -CCamCameraCallBack::~CCamCameraCallBack() - { - delete iBitmapManager; - Cancel(); - } - -/* -* CCamCameraCallBack::Cancel -*/ -/* -void CCamCameraCallBack::Cancel() - { - CActive::Cancel(); - DoCancel(); - } -*/ - -/* -* CCamCameraCallBack::RunL -*/ -void CCamCameraCallBack::RunL() - { - if ( iStillPrepareComplete ) - { - DoStillPrepareComplete(); - } - else if ( iReserveComplete ) - { - DoReserveComplete(); - } - else if ( iPowerOnComplete ) - { - DoPowerOnComplete(); - } - else if ( iCaptureImage ) - { - DoCaptureImageL(); - } - else - { - } - if ( iViewFinderFrame ) - { - DoViewFinderFrame(); - } - } - -/* -* CCamCameraCallBack::SetActiveAndCompleteRequest -*/ -void CCamCameraCallBack::SetActiveAndCompleteRequest() - { - SetActive(); - TRequestStatus* statusPtr = &iStatus; - User::RequestComplete( statusPtr, KErrNone ); - } - - -/* -* CCamCameraCallBack::ReserveCompleteRequest -*/ -void -CCamCameraCallBack::ReserveCompleteRequest( const TInt aError ) - { - iReserveError = aError; - iReserveComplete = ETrue; - if ( !IsActive() ) - { - SetActiveAndCompleteRequest(); - } - } - -/* -* CCamCameraCallBack::PowerOnCompleteRequest -*/ -void -CCamCameraCallBack::PowerOnCompleteRequest( const TInt aError ) - { - iPowerOnError = aError; - iPowerOnComplete = ETrue; - if ( !IsActive() ) - { - SetActiveAndCompleteRequest(); - } - } - - -/* -* CCamCameraCallBack::StillPrepareComplete -*/ -void CCamCameraCallBack::StillPrepareComplete() - { - iStillPrepareComplete = ETrue; - if ( !IsActive() ) - { - SetActiveAndCompleteRequest(); - } - } - -/* -* CCamCameraCallBack::SendViewFinderFrames -*/ -void CCamCameraCallBack::SendViewFinderFrames() - { - iViewFinderFrame = ETrue; - if ( !IsActive() ) - { - SetActiveAndCompleteRequest(); - } - } - -/* -* CCamCameraCallBack::StopViewFinderFrames -*/ -void CCamCameraCallBack::StopViewFinderFrames() - { - iViewFinderFrame = EFalse; - } - -/* -* CCamCameraCallBack::RequestCaptureImage -*/ -void CCamCameraCallBack::RequestCaptureImage() - { - iCaptureImage = ETrue; - if ( !IsActive() ) - { - SetActiveAndCompleteRequest(); - } - } - -/* -* CCamCameraCallBack::DoReserveComplete -*/ -void CCamCameraCallBack::DoReserveComplete() - { - iController.ReserveComplete( iReserveError ); - iReserveComplete = EFalse; - } - -/* -* CCamCameraCallBack::DoPowerOnComplete -*/ -void CCamCameraCallBack::DoPowerOnComplete() - { - iController.PowerOnComplete( iPowerOnError ); - iPowerOnComplete = EFalse; - } - - -/* -* CCamCameraCallBack::DoStillPrepareComplete -*/ -void CCamCameraCallBack::DoStillPrepareComplete() - { - iStillPrepareComplete = EFalse; - } - - -/* -* CCamCameraCallBack::DoViewFinderFrame -*/ -void CCamCameraCallBack::DoViewFinderFrame() - { - iController.ViewFinderFrameReady( iBitmapManager->NextBitmap() ); - - if ( iViewFinderFrame ) - { - if ( !IsActive() ) - { - SetActiveAndCompleteRequest(); - } - } - - } - -/* -* CCamCameraCallBack::DoCaptureImageL -*/ -void CCamCameraCallBack::DoCaptureImageL() - { - iCaptureImage = EFalse; - TInt imageIndex = 0; - - // Connect to fs - RFs fs; - User::LeaveIfError( fs.Connect() ); - CleanupClosePushL( fs ); - - // Open file and get size - RFile file; - TInt size = 0; - User::LeaveIfError( file.Open( fs, KImageFile, EFileRead ) ); - CleanupClosePushL( file ); - User::LeaveIfError( file.Size( size ) ); - - // Allocate memory - HBufC8* data = HBufC8::NewL( size ); - TPtr8 dataDes = data->Des(); - - - // Read file content - TInt read = file.Read( dataDes, size ); - - // Clean up - CleanupStack::PopAndDestroy( &file ); - CleanupStack::PopAndDestroy( &fs ); - - // Give data to controller - iController.ImageReady( NULL, data, KErrNone ); - } - - -// End of File