--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/camerauis/cameraapp/generic/dummyengine/CameraappDummyEngine.cpp Thu Jan 07 16:18:56 2010 +0200
@@ -0,0 +1,390 @@
+/*
+* 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: Camera Application Engine implementation still capturing,*
+*/
+
+
+
+// INCLUDE FILES
+
+#include <CaeEngine.h>
+#include "CameraappDummyEngine.h" // Engine implementation header.
+#include "CamLogger.h"
+#include "CameraappDummyCallbackActive.h"
+
+
+// ============================ MEMBER FUNCTIONS ===============================
+
+
+// -----------------------------------------------------------------------------
+// CCaeEngine::NewL
+// Two-phased constructor. Calls CCaeEngineImp's NewL().
+// -----------------------------------------------------------------------------
+//
+CCaeEngine* CCameraappDummyEngine::NewL()
+ {
+ return CCameraappDummyEngineImp::NewL();
+ }
+
+
+// -----------------------------------------------------------------------------
+// CCameraappDummyEngineImp::CCameraappDummyEngineImp
+// Default constructor.
+// -----------------------------------------------------------------------------
+//
+CCameraappDummyEngineImp::CCameraappDummyEngineImp()
+ {
+ }
+
+void CCameraappDummyEngineImp::SetCamAppEngineObserver( MCamAppEngineObserver& aObserver )
+ {
+ iObserver = &aObserver;
+ if ( !iCallBackActive )
+ {
+ TRAPD( ignore, iCallBackActive = CCameraappDummyCallbackActive::NewL( *iObserver ) )
+ if ( ignore )
+ {
+ // Do nothing ( removes build warning )
+ }
+ }
+ }
+
+// -----------------------------------------------------------------------------
+// CCameraappDummyEngineImp::~CCameraappDummyEngineImp
+// Destructor.
+// -----------------------------------------------------------------------------
+//
+CCameraappDummyEngineImp::~CCameraappDummyEngineImp()
+ {
+ if ( iCallBackActive )
+ {
+ iCallBackActive->Cancel();
+ delete iCallBackActive;
+ }
+ }
+
+void CCameraappDummyEngineImp::InitL( TBool /*aCreateSnapImage*/ )
+ {
+ if ( iCallBackActive )
+ {
+ iCallBackActive->InitComplete();
+ }
+ }
+
+void CCameraappDummyEngineImp::Reserve()
+ {
+ if ( iCallBackActive )
+ {
+ iCallBackActive->InitComplete();
+ }
+ }
+
+void CCameraappDummyEngineImp::StartViewFinderBitmapsL( TSize& /*aSize*/ )
+ {
+ iIsViewFinding = ETrue;
+ if ( !iCallBackActive )
+ {
+ iCallBackActive = CCameraappDummyCallbackActive::NewL( *iObserver );
+ }
+
+ if ( iCallBackActive )
+ {
+ iCallBackActive->SendViewFinderFrames();
+ }
+ }
+
+void CCameraappDummyEngineImp::StopViewFinder()
+ {
+ if ( iIsViewFinding )
+ {
+ iIsViewFinding = EFalse;
+ if ( iCallBackActive )
+ {
+ iCallBackActive->StopViewFinderFrames();
+ }
+ }
+ }
+
+TBool CCameraappDummyEngineImp::IsViewFinding() const
+ {
+ return iIsViewFinding;
+ }
+
+void CCameraappDummyEngineImp::SetCaeStillBurstObserver( MCaeStillBurstObserver& aObserver )
+ {
+ if ( iCallBackActive )
+ {
+ iCallBackActive->SetBurstObserver( &aObserver );
+ }
+ }
+
+void CCameraappDummyEngineImp::StopStillBurstCapture()
+ {
+ if ( iCallBackActive )
+ {
+ iCallBackActive->StopBurst();
+ }
+ }
+
+
+TInt CCameraappDummyEngineImp::SetStillCaptureImageCountL( TInt aImageCount )
+ {
+ iImageCount = aImageCount;
+ return KErrNone;
+ }
+
+void CCameraappDummyEngineImp::PrepareStillCaptureL(
+ const TSize& /*aSize*/,
+ CCamera::TFormat /*aFormat*/,
+ TInt /*aCompressionQuality*/,
+ const TRect& /*aCropRect*/,
+ TSize& /*aSnapSize*/ )
+ {
+ iVideoPrepared = EFalse;
+ if ( iCallBackActive )
+ {
+ iCallBackActive->StillPrepareComplete();
+ }
+ }
+
+void CCameraappDummyEngineImp::CaptureStill()
+ {
+ if ( iImageCount < 1 || !iCallBackActive )
+ {
+ return;
+ }
+ if ( iImageCount == 1 )
+ {
+ iCallBackActive->CaptureStill();
+ }
+ else
+ {
+ iCallBackActive->CaptureBurst( iImageCount );
+ }
+ }
+
+void CCameraappDummyEngineImp::StopVideoRecording()
+ {
+ if ( iCallBackActive )
+ {
+ iCallBackActive->VideoRecordingStopped();
+ }
+ }
+
+void CCameraappDummyEngineImp::PauseVideoRecording()
+ {
+ if ( iCallBackActive )
+ {
+ iCallBackActive->VideoRecordingPaused();
+ }
+ }
+
+void CCameraappDummyEngineImp::StartVideoRecording()
+ {
+ if ( iCallBackActive )
+ {
+ iCallBackActive->VideoRecordingResumed();
+ }
+ }
+
+void CCameraappDummyEngineImp::ResumeVideoRecording()
+ {
+ if ( iCallBackActive )
+ {
+ iCallBackActive->VideoRecordingResumed();
+ }
+ }
+
+void CCameraappDummyEngineImp::SetVideoRecordingFileNameL(
+ const TDesC& /*aVideoClipFileName*/ )
+ {
+ if ( iVideoPrepared && iCallBackActive )
+ {
+ iCallBackActive->VideoPrepareComplete();
+ }
+ }
+
+void CCameraappDummyEngineImp::PrepareVideoRecordingL(
+ const TSize& /*aFrameSize*/,
+ TReal32 /*aFrameRate*/,
+ TInt /*aBitRate*/,
+ TBool /*aAudioEnabled*/,
+ TInt /*aAudioBitRate*/,
+ const TDesC8& /*aMimeType*/,
+ const TDesC& /*aPreferredSupplier*/,
+ const TDesC8& /*aVideoType*/,
+ const TDesC8& /*aAudioType*/ )
+ {
+ iVideoPrepared = ETrue;
+ if ( iCallBackActive )
+ {
+ iCallBackActive->VideoPrepareComplete();
+ }
+ }
+
+// -----------------------------------------------------------------------------
+// CCameraappDummyEngineImp::ConstructL
+// Symbian 2nd phase constructor that can leave.
+// -----------------------------------------------------------------------------
+//
+void CCameraappDummyEngineImp::ConstructL()
+ {
+ iImageCount = 1;
+ }
+
+
+
+
+void CCameraappDummyEngineImp::GetInfo( TCamAppEngineInfo& aInfo ) const
+ {
+ aInfo.iMaxDigitalZoom = 20;
+ aInfo.iFlashModesSupported = CCamera::EFlashNone |
+ CCamera::EFlashAuto |
+ CCamera::EFlashForced;
+
+ aInfo.iWhiteBalanceModesSupported = CCamera::EWBAuto |
+ CCamera::EWBDaylight |
+ CCamera::EWBCloudy |
+ CCamera::EWBTungsten |
+ CCamera::EWBFluorescent;
+ }
+
+
+void CCameraappDummyEngineImp::SetZoomValueL( TInt aZoomValue )
+ {
+ iZoomValue = aZoomValue;
+
+ TBuf <100> buf;
+ buf.Format( _L("__zm %d, val %d__"), iZoomMode, iZoomValue );
+ User::InfoPrint( buf );
+ }
+
+
+
+TInt CCameraappDummyEngineImp::ZoomValue() const
+ {
+ return iZoomValue;
+ }
+
+
+void CCameraappDummyEngineImp::SetZoomModeL( CCaeEngine::TZoomMode aZoomMode )
+ {
+ iZoomMode = aZoomMode;
+
+ TBuf <100> buf;
+ buf.Format( _L("__zm %d, val %d__"), iZoomMode, iZoomValue );
+ User::InfoPrint( buf );
+ }
+
+void CCameraappDummyEngineImp::GetOrderL( RCaeOrderedFeatureList& /*aOrderedFeatureList*/ )
+ {
+ }
+
+void CCameraappDummyEngineImp::SetOrderL( const RCaeOrderedFeatureList& /*aOrderedFeatureList*/ )
+ {
+ }
+
+void CCameraappDummyEngineImp::SetSnapImageSourceL( TSnapImageSource /*aSnapImageSource*/ )
+ {
+ }
+
+void CCameraappDummyEngineImp::SetImageCodecsL( TUid/*aDecoderUid*/, TUid /*aEncoderUid*/ )
+ {
+ }
+
+TInt CCameraappDummyEngineImp::CamerasAvailable()
+ {
+ return 2;
+ }
+
+
+TInt CCameraappDummyEngineImp::EnumerateVideoFrameSizeL( const TSize& /*aSize*/ ) { return 0; };
+
+TInt CCameraappDummyEngineImp::CCameraHandle() const { return 1; };
+
+void CCameraappDummyEngineImp::EnableVideoRecording() {};
+
+void CCameraappDummyEngineImp::DisableVideoRecording() {};
+
+void CCameraappDummyEngineImp::SetCaeExtensionModeL( TBool aExtModeActive, TBool aCreateSnapImage )
+ {
+ (void)aExtModeActive; // removes compiler warning
+ (void)aCreateSnapImage; // removes compiler warning
+ }
+
+void CCameraappDummyEngineImp::ProcessExtViewFinderFrameReadyL( CFbsBitmap& aFrame )
+ {
+ (void)aFrame; // removes compiler warning
+ }
+
+void CCameraappDummyEngineImp::ProcessExtSnapImageL( CFbsBitmap& aSnapImage )
+ {
+ (void)aSnapImage; // removes compiler warning
+ }
+
+void CCameraappDummyEngineImp::ProcessExtCapturedImageL( CFbsBitmap& aBitmap, TBool aLastImage )
+ {
+ (void)aBitmap; // removes compiler warning
+ (void)aLastImage; // removes compiler warning
+ }
+
+void CCameraappDummyEngineImp::ProcessExtCapturedImageL( HBufC8* aImageData, TBool aLastImage )
+ {
+ (void)aImageData; // removes compiler warning
+ (void)aLastImage; // removes compiler warning
+ }
+
+void CCameraappDummyEngineImp::ProcessExtCapturedImageL( TDesC8& aImageDataDes, TBool aLastImage )
+ {
+ (void)aImageDataDes; //removes compiler warning
+ (void)aLastImage; // removes compiler warning
+ }
+
+void CCameraappDummyEngineImp::ProcessExtCancel()
+ {
+ }
+
+void CCameraappDummyEngineImp::SkippedExtensionListL( RCaeOrderedFeatureList& aSkippedExtensions )
+ {
+ (void)aSkippedExtensions; // removes compiler warning
+ }
+
+void CCameraappDummyEngineImp::SetSkippedExtensionList( RCaeOrderedFeatureList& aSkippedExtensions )
+ {
+ (void)aSkippedExtensions; // removes compiler warning
+ }
+
+TInt CCameraappDummyEngineImp::SetAsyncVideoStopMode( TBool aAsyncVideoStopEnabled )
+ {
+ (void)aAsyncVideoStopEnabled; // removes compiler warning
+ return KErrNone;
+ }
+
+// -----------------------------------------------------------------------------
+// CCaeEngineImp::NewL
+// Two-phased constructor.
+// -----------------------------------------------------------------------------
+//
+CCameraappDummyEngineImp* CCameraappDummyEngineImp::NewL()
+ {
+ CCameraappDummyEngineImp* self = new( ELeave ) CCameraappDummyEngineImp();
+
+ CleanupStack::PushL( self );
+ self->ConstructL();
+ CleanupStack::Pop( self );
+
+ return self;
+ }
+
+// End of File