camappengine/Engine/Inc/CaeEngineImp.h
changeset 15 50d5061ee01e
parent 14 34024902876b
child 17 880d946921e4
--- a/camappengine/Engine/Inc/CaeEngineImp.h	Fri Mar 19 09:33:47 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,837 +0,0 @@
-/*
-* Copyright (c) 2002-2004 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 class
-*
-*/
-
-
-
-#ifndef CAEENGINEIMP_H
-#define CAEENGINEIMP_H
-
-//  INCLUDES
-#include <ecam.h>
-#include <videorecorder.h>
-#include "CamCControllerCustomCommands.h"
-#include "CaeEngine.h"
-#include "CaeEngineExtInterface.h"
-#include "CaeCommon.h"
-#include "CaeStillEncoder.h"
-#include "CaeStillDecoder.h"
-#include "CaeCallbackActive.h"              // For making method calls from callbacks.
-#include "CaeDbgUtilities.h"                // For debugging.
-
-#include <e32std.h>
-
-// CONSTANTS
-const TInt KVideoTimesIntervalDefault = 1000000; // Default time interval for Video Recording times call-back.
-
-const TInt KVideoTimesDelay = 100000; // Delay in starting to generate video times, in microseconds.
-
-const TInt KCameraPriority = -1; // Relative priority (-100...100) of camera HW
-
-const TUid KUidBurstModeVFOptimization = {0x4A758866}; // Custom command interface UID used by some products
-
-// FORWARD DECLARATIONS
-class CVideoRecorderUtility;
-class RWsSession;
-class CWsScreenDevice;
-class RWindowBase;
-class CFbsBitmap;
-class CCaeStillQualityLevelsCont;
-class CCaeVideoQualityLevelsCont;
-class CCaeVideoTimes;
-class CCaeStillBurst;
-class CCaeStillStatesActive;
-
-
-// CLASS DECLARATIONS
-
-/**
-* Camera application engine implementation class.
-*/
-
-NONSHARABLE_CLASS( CCaeEngineImp ): public CCaeEngine, 
-                                    public MCameraObserver,
-                                    public MExtensionCallbackInterface,
-					                public MCaeExtEngineInfoCallbackInterface,
-                                    public MVideoRecorderUtilityObserver,
-                                    public MCameraObserver2
-    {
-
-    friend void CCaeCallbackActive::RunL();
-	friend void CCaeCallbackActive::DoCancel();
-
-    public: // Construction and destruction
-
-        static CCaeEngineImp* NewL();
-
-        virtual ~CCaeEngineImp();
-
-    
-    public: // General methods / CCaeEngine.h
-
-        void SetCamAppEngineObserver( 
-            MCamAppEngineObserver& aObserver );
-
-        void GetInfo( 
-            TCamAppEngineInfo& aInfo ) const;
-
-        void InitL( 
-            TBool aCreateSnapImage = ETrue );
-
-        void InitL( 
-            TUid  aSdUidStillQltyLevels, 
-            TBool aCreateSnapImage = ETrue );
-
-        void InitVideoRecorderL();
-        
-        void InitVideoRecorderL( 
-            TUid aSdUidVideoQltyLevels );
-
-        void Reserve();
-
-        void Release();
-
-        void PowerOn();
-
-        void PowerOff();
-
-    
-    public: // Camera settings / CCaeEngine.h
-
-        void SetZoomModeL( 
-            TZoomMode aZoomMode = EZoomModeDigital );
-
-        TZoomMode ZoomMode() const;
-
-        void SetZoomValueL( 
-            TInt aZoomValue = 0 );
-
-        TInt ZoomValue() const;
-
-        void SetBrightnessL( 
-            TInt aBrightness = 0 );
-
-        TInt Brightness() const;
-
-        void SetContrastL( 
-            TInt aContrast = 0 );
-
-        TInt Contrast() const;
-
-        void SetExposureModeL( 
-            CCamera::TExposure aExposureMode = CCamera::EExposureAuto );
-
-        CCamera::TExposure ExposureMode() const;
-
-        void SetWhiteBalanceModeL( 
-            CCamera::TWhiteBalance aWhiteBalanceMode = CCamera::EWBAuto );
-
-        CCamera::TWhiteBalance WhiteBalanceMode() const;
-
-        void SetFlashModeL( 
-            CCamera::TFlash aFlashMode = CCamera::EFlashNone );
-
-        CCamera::TFlash FlashMode() const;
-
-        void ResetToDefaultsL();
-    
-    
-    public: // View Finder / CCaeEngine.h
-
-        void SetViewFinderMirrorL( 
-            TBool aMirror );
-
-        TBool ViewFinderMirror() const;
-
-        void StartViewFinderBitmapsL( 
-            TSize& aVfFrameSize );
-
-        void StartViewFinderBitmapsL( 
-            TSize& aVfFrameSize, 
-            TRect& aCropRect );
-        
-        void StartViewFinderDirectL( 
-            RWsSession&      aWs, 
-            CWsScreenDevice& aScreenDevice, 
-            RWindowBase&     aWindow, 
-            TRect&           aScreenRect );
-
-        void StartViewFinderDirectL( 
-            RWsSession&      aWs, 
-            CWsScreenDevice& aScreenDevice, 
-            RWindowBase&     aWindow, 
-            TRect&           aScreenRect, 
-            TRect&           aCropRect );
-        
-        void StopViewFinder();
-
-        TBool IsViewFinding() const;
-
-        void GetViewFinderSize( 
-            TSize& aVfFrameSize );
-
-    
-    public: // Still image capturing / CCaeEngine.h
-
-        void PrepareStillCaptureL( 
-            TInt aStillQualityIndex );
-        
-        void PrepareStillCaptureL( 
-            TInt         aStillQualityIndex, 
-            const TRect& aCropRect );
-
-        void PrepareStillCaptureL( 
-            const TSize&     aSize, 
-            CCamera::TFormat aFormat,
-            TInt             aCompressionQuality );
-
-        void PrepareStillCaptureL( 
-            const TSize&     aSize, 
-            CCamera::TFormat aFormat, 
-            TInt             aCompressionQuality, 
-            const TRect&     aCropRect );
-
-        TInt StillQualityIndex() const;
-
-        void GetStillFrameSize( 
-            TInt   aStillQualityIndex, 
-            TSize& aSize ) const;
-
-        TInt EstimatedStillSizeInBytes( 
-            TInt aStillQualityIndex ) const;
-
-        void CaptureStill(); 
-        
-        void CancelCaptureStill();
-
-    
-    public: // Video recording / CCaeEngine.h
-    
-        void SetVideoRecordingFileNameL( 
-            const TDesC& aVideoClipFileName );
-
-        void PrepareVideoRecordingL( 
-            TInt aVideoQualityIndex );
-
-        void PrepareVideoRecordingL( 
-            const TSize&  aFrameSize, 
-            TReal32       aFrameRate, 
-            TInt          aBitRate, 
-            TBool         aAudioEnabled,
-            const TDesC8& aMimeType, 
-            const TDesC&  aPreferredSupplier, 
-            const TDesC8& aVideoType = KNullDesC8, 
-            const TDesC8& aAudioType = KNullDesC8 );
-
-        void CloseVideoRecording();
-
-        TInt VideoQualityIndex() const;
-
-        void GetVideoFrameSize( 
-            TInt   aVideoQualityIndex, 
-            TSize& aSize ) const;
-
-        TReal32 VideoFrameRate( 
-            TInt aVideoQualityIndex ) const;
-
-        TInt EstimatedVideoRecordingBitRateL( 
-            TInt aVideoQualityIndex ) const;
-
-        void SetVideoClipMaxSizeL( 
-            TInt aMaxClipSizeInBytes = 0 );
-
-        TInt VideoClipMaxSize() const;
-
-        void SetVideoAudioL( 
-            TBool aAudioEnabled );
-
-        TBool VideoAudio() const;
-
-        void SetVideoTimesIntervalL( 
-            TTimeIntervalMicroSeconds aInterval );
-
-        TTimeIntervalMicroSeconds VideoTimesInterval() const;
-
-        void StartVideoRecording();
-
-        void StopVideoRecording();
-
-        void PauseVideoRecording();
-
-        void ResumeVideoRecording();
-
-        TTimeIntervalMicroSeconds RemainingVideoRecordingTime() const;
-
-        TBool IsVideoRecording() const;
-
-    public: // New overloading method for preparing video recording / CCaeEngine.h
-    
-        void PrepareVideoRecordingL( 
-            const TSize&  aFrameSize, 
-            TReal32       aFrameRate, 
-            TInt          aBitRate, 
-            TBool         aAudioEnabled,
-            TInt          aAudioBitRate, 
-            const TDesC8& aMimeType, 
-            const TDesC&  aPreferredSupplier, 
-            const TDesC8& aVideoType, 
-            const TDesC8& aAudioType );
-
-    public: // Still image burst capturing interface methods / CCaeEngine.h
-
-        void SetCaeStillBurstObserver( 
-            MCaeStillBurstObserver& aObserver );
-
-        TInt SetStillCaptureImageCountL( 
-            TInt aImageCount );
-
-        TInt StillCaptureImageCount() const;
-
-        void SetStillBurstCaptureIntervalL( 
-            TTimeIntervalMicroSeconds aInterval );
-
-        TTimeIntervalMicroSeconds StillBurstCaptureInterval() const;
-
-        void StopStillBurstCapture();
-
-        void PrepareStillCaptureL( 
-            TInt         aStillQualityIndex, 
-            TSize&       aSnapSize );
-
-        void PrepareStillCaptureL( 
-            const TSize&     aSize, 
-            CCamera::TFormat aFormat,  
-            TInt             aCompressionQuality, 
-            const TRect&     aCropRect,
-            TSize&           aSnapSize );
-
-        void SetEvCompensationL( 
-            TInt aEvIndex = 0 );
-
-        TInt EvCompensation() const;
-        
-    public: // Method for switching snap-image creation on/off. / CCaeEngine.h
-    
-        void SetSnapImageCreation( 
-            TBool aCreateSnapImage = ETrue );
-
-    public: // New methods since 2.6 and 2.8 / CCaeEngine.h
-
-    	static CCaeEngineImp* NewL(
-    	    TInt aCameraIndex, TInt aDisplayIndex );
-
-    	void EnumerateStillCaptureSizes(
-    	    TSize& aSize,
-    	    TInt aSizeIndex,
-    	    CCamera::TFormat aFormat ) const;
-
-    	void SetJpegQuality(
-    	    TInt aQuality );
-
-    	TInt JpegQuality() const;
-
-        TAny* CustomInterface(
-			TUid aInterface );
-
-        void SetSnapImageSizeL(
-            TSize& aSize );
-
-        void SetSnapImageColorMode(
-            TDisplayMode aMode );
-
-        void GetOrderL( 
-			RCaeOrderedFeatureList& aOrderedFeatureList );
-
-        void SetOrderL( 
-			const RCaeOrderedFeatureList& aOrderedFeatureList );
-
-        void SetSnapImageSourceL(
-            TSnapImageSource aSnapImageSource );
-
-        void SetImageCodecsL( 
-        	TUid aDecoderUid, TUid aEncoderUid );
-
-        TInt EnumerateVideoFrameSizeL(const TSize& aSize);
-        
-        TInt CCameraHandle() const;
-        	
-        void SetCaeExtensionModeL( TBool aExtModeActive, TBool aCreateSnapImage );
-
-        void ProcessExtViewFinderFrameReadyL( CFbsBitmap& aFrame );
-
-        void ProcessExtSnapImageL( CFbsBitmap& aSnapImage );
-
-        void ProcessExtCapturedImageL( CFbsBitmap& aBitmap, TBool aLastImage );
-        
-        void ProcessExtCapturedImageL( HBufC8* aImageData, TBool aLastImage );
-        
-        void ProcessExtCapturedImageL( TDesC8& aImageDataDes, TBool aLastImage );
-
-        void ProcessExtCancel();
-
-        void SkippedExtensionListL( RCaeOrderedFeatureList& aDisabledExtensions );
-
-        void SetSkippedExtensionList( RCaeOrderedFeatureList& aDisabledExtensions );
-
-        void EnableVideoRecording();
-        
-        void DisableVideoRecording();
-
-        TInt SetAsyncVideoStopMode( TBool aAsyncVideoStopEnabled );
-
-    public: // New public methods
-
-        /**
-        * Checks if still image burst capture should be completed.
-        * @since 2.6
-        * @return Boolean indicating if the burst should be completed.
-        */
-        TBool CheckForStillBurstCompletion();
-        
-    private: // From Camera Observer / ECam.h
-
-        void ReserveComplete( 
-            TInt aError );
-
-        void PowerOnComplete( 
-            TInt aError );
-
-        void ViewFinderFrameReady( 
-            CFbsBitmap& aFrame );
-
-        void ImageReady( 
-            CFbsBitmap* aBitmap, 
-            HBufC8*     aData, 
-            TInt        aError );
-
-        void FrameBufferReady( 
-            MFrameBuffer* /*aFrameBuffer*/, 
-            TInt          /*aError*/ ) {}; // Empty default because not in use.
-   
-    private: // From Video Recorder Utility Observer / VideoRecorder.h
-
-        void MvruoOpenComplete( 
-            TInt aError );
-
-        void MvruoPrepareComplete( 
-            TInt aError );
-
-        void MvruoRecordComplete( 
-            TInt aError );
-
-        void MvruoEvent( 
-            const TMMFEvent& aEvent );
-
-    
-    private: // Private member methods
-
-        /**
-        * C++ constructor.
-        */
-        CCaeEngineImp();
-
-        /**
-        * Symbian OS 2nd phase constructor that can leave.
-        * @param aCameraIndex Index from 0 to CamerasAvailable()-1 inclusive 
-        * specifying the camera device to use.
-        * @param aDisplayIndex Display index specifying the display to use.
-        * @return void
-        */
-        void ConstructL( TInt aCameraIndex, TInt aDisplayIndex );
-
-        /**
-        * Finds all extension dlls and populates the extension arrays.
-        * @since 2.8
-        * @return void
-        */
-		void PopulateExtensionArrayL();
-
-    //// General and settings related private methods. ////
-
-        /**
-        * Initializes the info class ("structure").
-        * @since 2.1
-        * @param aCamera Camera object.
-        * @return void
-        */
-        void InitializeInfo( 
-            const CCamera& aCamera );
-
-        /**
-        * Checks that power is on. If not, then leaves.
-        * @since 2.1
-        * @return void
-        */
-        void CheckPowerL();
-
-        /**
-        * Cancels view finder, still capturing, and video recording.
-        * @since 2.1
-        * @return void
-        */
-        void CancelAllActivities();
-
-        /**
-        * Re-sets settings to the previous values (before releasing camera).
-        * @since 2.1
-        * @return void
-        */
-        void ResetToPreviousSettingsL();
-
-    //// Video recording related private methods. ////
-
-        /**
-        * Cancels video recording.
-        * @since 2.1
-        * @return void
-        */
-        void CancelVideoRecording();
-
-        /**
-        * Prepares video recording settings.
-        * @since 2.1
-        * @return void
-        */
-        void PrepareVideoSettingsL();
-
-        /**
-        * Changes video clip file name.
-        * @since 2.1
-        * @return void
-        */
-        void ChangeVideoFileNameL();
-
-        /**
-        * Finds video type and format UIDs using ECOM.
-        * @since 2.1
-        * @param aMimeType MIME type.
-        * @param aPreferredSupplier Preferred supplier of video encoder.
-        * @return void
-        */
-        void FindVideoUidsL(
-            const TDesC8& aMimeType, 
-            const TDesC&  aPreferredSupplier );
-
-        /**
-        * Convert audio type from TDesC8 to TFourCC.
-        * @since 2.1
-        * @param aAudioType Audio type.
-        * @return Audio type TFourCC code
-        */
-        TFourCC ConvertAndSetVideoAudioTypeL(
-            const TDesC8& aAudioType );
-
-        /**
-        * Generates video recording times via
-        * MCamAppEngineObserver::McaeoVideoRecordingTimes implemented by client.
-        * @since 2.1
-        * @param aEngineImp Camera Application Engine implementation object (this) 
-        * @return ETrue
-        */
-        static TInt VideoRecordingTimesCallback( 
-            TAny* aEngineImp );
-
-    //// Still image burst capturing related private methods. ////
-
-        /**
-        * Gets option flag for still burst support.
-        * @since 2.1
-        * @return Option flag for still burst support
-        */
-        TCamAppEngineInfo::TOptions StillBurstSupport();
-
-        /**
-        * Compares two extension interface array items.
-        * @since 2.8
-        * @param aFirst First item
-        * @param aSecond Second item
-        * @return TInt Result of the comparison
-        */
-        static TBool MatchEqualImplUid( const TCaeExtensionInterfaceImplItem& aFirst, const TCaeExtensionInterfaceImplItem& aSecond );
-
-        /**
-        * Compares two extension interface array items.
-        * @since 2.8
-        * @param aFirst First item
-        * @param aSecond Second item
-        * @return TInt Result of the comparison
-        */
-        static TBool MatchEqualImplPtr( const TCaeExtensionInterfaceImplItem& aFirst, const TCaeExtensionInterfaceImplItem& aSecond );
-
-        /**
-        * Compares two extension interface array items.
-        * @since 2.8
-        * @param aFirst First item
-        * @param aSecond Second item
-        * @return TInt Result of the comparison
-        */
-        static TBool MatchSmallerInitialPriorityAndImplUid( const TCaeExtensionInterfaceImplItem& aFirst, const TCaeExtensionInterfaceImplItem& aSecond );
-
-        /**
-        * Compares two extension interface array items.
-        * @since 2.8
-        * @param aFirst First item
-        * @param aSecond Second item
-        * @return TInt Result of the comparison
-        */
-        static TBool Match( const TCaeOrderedFeatureListItem& aFirst, const TCaeOrderedFeatureListItem& aSecond );
-
-        /**
-        * Updates item order in the internal array or checks aOrderedFeatureArray validity.
-        * @since 2.8
-        * @param aOrderedFeatureArray Feature array sorted by the wanted calling order in an interface.
-        * @param iUpdate Whether to update the internal raays or just to check validity of aOrderedFeatureArray.
-        * @return void.
-        */
-		void DoSetOrderL( const RCaeOrderedFeatureList& aOrderedFeatureList, TBool iUpdate );
-
-	private: // From MCaeEngineExtensionInterface
-
-		TBool IsInterfaceSupported( TUid aInterfaceUid );
-
-		TInt AddExtensionInterface( TUid aInterfaceUid, TUid aExtensionUid, TAny* aImplementationPtr, TInt aInitialPriority = 0 );
-
-		TInt RemoveExtensionInterface( TUid aInterfaceUid, TAny* aImplementationPtr );
-
-		TInt AddCustomInterface( TUid aInterfaceUid, TAny* aImplementationPtr );
-
-		TAny* GetCallbackInterface( TUid aInterfaceUid );
-
-        void RegisterFlags( TUint32 aFlags );
-
-        void DeregisterFlags( TUint32 aFlags );
-
-	private: // From MCaeExtEngineInfoCallbackInterface
-
-		TSize McaeExtStillImageSize();
-
-		TSize McaeExtSnapImageSize();
-
-		TSize McaeExtViewFinderSize();
-
-		void McaeExtCheckPowerL();
-
-		TInt McaeExtDisplayIndex();
-
-    private: // From Camera Observer2 / ECam.h
-
-        void HandleEvent(const TECAMEvent& aEvent);
-
-        void ViewFinderReady(MCameraBuffer& aCameraBuffer,TInt aError);
-
-        void ImageBufferReady(MCameraBuffer& aCameraBuffer,TInt aError);
-    
-        void VideoBufferReady(MCameraBuffer& aCameraBuffer,TInt aError);
-
-    private: // Data
-    
-    //// Pointers. ////
-
-        // Camera API implementation object.
-        CCamera* iCamera;
-
-        // State machine for still capturing.
-        CCaeStillStatesActive* iStillStatesActive; 
-
-		// All CAE Extension modules
-		RPointerArray<MExtension> iExtension;
-
-		// All extension interface implementations.
-		RArray<TCaeExtensionInterfaceImplListItem> iExtInterfaceImplementationLists;
-
-		// All custom interface implementations.
-		RArray<TCaeCustomInterfaceImplItem> iExtCustomInterfaceImplementations;
-
-        // Video Recorder API implementation object.
-        CVideoRecorderUtility* iVideoRecorder;
-
-        // Camera Application Engine observer.
-        MCamAppEngineObserver* iCaeObserver;
-
-        // Camera Application Engine info object.
-        TCamAppEngineInfo* iInfo;
-
-        // Still image capturing quality levels container.
-        CCaeStillQualityLevelsCont* iStillQualityLevelsCont;
-
-        // Video recording quality levels container.
-        CCaeVideoQualityLevelsCont* iVideoQualityLevelsCont;
-
-        // Active object for calling Camera Application Engine methods 
-        // indirectly from callbacks.
-        CCaeCallbackActive* iCallbackActive;
-
-        // Video recording frame size.
-        // This is ptr because video recorder is not necessarily initialized.
-        TSize* iVideoFrameSize;
-
-        // Video recording frame size (to be prepared).
-        // This is ptr because video recorder is not necessarily initialized.
-        TSize* iVideoFrameSizePrep;
-
-        // Video recording times generator.
-        CCaeVideoTimes *iVideoTimes;
-
-        // Video recording times callback.
-        TCallBack* iVideoTimesCallback;
-
-        // Video clip file name.
-        HBufC* iVideoClipFileName;
-        
-        // Video Recorder video type.
-        HBufC8* iVideoType;
-
-    //// Booleans (mostly reporting state). ////
-
-        // Boolean indicating if camera module is reserved for the engine.
-        TBool iReserved;
-
-        // Boolean indicating if camera module power is on.
-        TBool iPowerOn;
-
-        // Boolean indicating if video recording is initialized.
-        TBool iVideoInitialized;
-
-        // Boolean indicating if still image capture is prepared.
-        TBool iStillPrepared;
-
-        // Boolean indicating if video recording is opened.
-        TBool iVideoOpened;
-
-        // Boolean indicating if video recording is prepared.
-        TBool iVideoPrepared;
-
-        // Boolean indicating if view finder is currently running.
-        TBool iViewFinderRunning;
-
-        // Boolean indicating if video recording is currently running.
-        TBool iVideoRecordingRunning;
-
-        // Boolean indicating if video recording is currently paused.
-        TBool iVideoRecordingPaused;
-
-        // Boolean indicating if the engine should reset its basic settings 
-        // to the previous ones when re-reserving.
-        TBool iResetToPreviousSettings;
-
-    //// Camera module settings related variables. ////
-
-        // Current zoom mode.
-        TZoomMode iZoomMode;
-
-        // Current zoom value.
-        TInt iZoomValue;
-
-        // Current brightness value.
-        TInt iBrightness;
-
-        // Current contrast value.
-        TInt iContrast;
-
-        // Camera exposure mode.
-        CCamera::TExposure iExposureMode;
-
-        // Camera white balance mode.
-        CCamera::TWhiteBalance iWhiteBalanceMode;
-
-        // Camera flash mode.
-        CCamera::TFlash iFlashMode;
-
-    //// View finder related variables. ////
-
-        // View finder size when viewfinder has been started.
-        TSize iTrueViewFinderSize;
-
-    //// Still capturing related variables. ////
-
-        // Still image capture quality level index currently prepared.
-        TInt iStillQualityIndex; 
-
-        // Display index
-        TInt iDisplayIndex;
-
-      //// Video recording related variables. ////
-
-        // Video recording quality level index currently prepared.
-        TInt iVideoQualityIndex;
-
-        // Handle to the camera used.
-        TInt iCameraHandle;
-
-        // Video Recorder controller UID.
-        TUid iVideoControllerUid;
-
-        // Video Recorder format UID.
-        TUid iVideoFormatUid;
-
-        // Video Recorder audio type.
-        TFourCC iVideoAudioType;
-
-        // Interval for calling McaeoVideoRecordingTimes.
-        TTimeIntervalMicroSeconds32 iVideoTimesInterval;
-
-		// Previous valid elapsed time value
-    	TTimeIntervalMicroSeconds iPrevTimeElapsed;
-    	
-		// Previous valid remaining time value
-    	TTimeIntervalMicroSeconds iPrevTimeRemaining;
-    	
-    //// Video recording parameters prepared. ////
-        
-        // Video recording frame rate.
-        TReal32 iVideoFrameRate;
-
-        // Video recording bit rate.
-        TInt iVideoBitRate;
-
-        // Boolean indicating if audio is enabled with video recording.
-        TBool iVideoAudioEnabled;
-
-        // Video recording audio bit rate.
-        TInt iVideoAudioBitRate;
-
-        // Video recording maximum clip size in bytes.
-        TInt iMaxClipSizeInBytes;
-
-    //// Video recording parameters to be prepared. ////
-
-        // Video recording frame rate (to be prepared).
-        TReal32 iVideoFrameRatePrep;
-
-        // Video recording bit rate (to be prepared).
-        TInt iVideoBitRatePrep;
-
-        // Boolean indicating if audio is enabled with video recording (to be prepared).
-        TBool iVideoAudioEnabledPrep;
-
-        // Video recording audio bit rate (to be prepared).
-        TInt iVideoAudioBitRatePrep;
-
-        // Video recording maximum clip size in bytes (to be prepared).
-        TInt iMaxClipSizeInBytesPrep;
-
-        // Boolean indicating if parameters are/were prepared in video recording preparation..
-        TBool iPrepPars;
-
-        // Boolean indicating if video audio bit rate should be prepared.
-        TBool iPrepareVideoAudioBitRate;
-        
-        // Boolean indicating if video stopping should be asynchronously or synchronously (default).
-        TBool iAsyncVideoStopEnabled;
-    };
-
-
-#endif // CAEENGINEIMP_H