diff -r 753e33780645 -r 453d490c84a5 htiui/HtiServicePlugins/HtiCameraServicePlugin/inc/HtiCameraServicePlugin.h --- a/htiui/HtiServicePlugins/HtiCameraServicePlugin/inc/HtiCameraServicePlugin.h Fri Sep 03 07:53:25 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,204 +0,0 @@ -/* -* Copyright (c) 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: Defines the ECom plugin for HTI camera service. -* -*/ - - - -#ifndef HTICAMERASERVICEPLUGIN_H -#define HTICAMERASERVICEPLUGIN_H - -// INCLUDES -#include -#include "EngineVideoRecording.h" -// CONSTANTS - -// MACROS - -// DATA TYPES - -// FUNCTION PROTOTYPES - -// FORWARD DECLARATIONS -class CEngineVideoRecording; -class MEngineVideoRecordingObserver; - -// CLASS DECLARATION - -/** -* The ECom plugin for HTI camera service. -* -*/ -class CHtiCameraServicePlugin : public CHTIServicePluginInterface, - public MEngineVideoRecordingObserver - { - - protected: - // commands - enum TCommands - { - ECmdInitialize = 0x01, - ECmdPrepareVideoRecording = 0x02, - ECmdStartVideoRecording = 0x05, - ECmdPausingVideoRecording = 0x06, - ECmdResumeVideoRecording = 0x07, - ECmdStopVideoRecording = 0x08, - ECmdCloseVideoRecording = 0x09, - ECmdGetZoom = 0x0a, - ECmdSetZoom = 0x0b, - - ECmdUninitialize = 0x51, - EResultOk = 0xFF // only for response message - }; - - - public: // Constructors and destructor - - /** - * Two-phased constructor. - */ - static CHtiCameraServicePlugin* NewL(); - - public: // New functions - - public: - // Functions from base classes - - /** - * From CHTIServicePluginInterface - * Called by the HTI Framework when sending message to this service. - * @param aMessage message body destinated to a servive - * @param aPriority message priority - */ - void ProcessMessageL(const TDesC8& aMessage, - THtiMessagePriority aPriority); - - /** - * From CHTIServicePluginInterface - * Indicates to HTI Framework whether the plugin is ready to process - * a new message or if it's busy processing previous message. - */ - TBool IsBusy(); - - - protected: // New functions - - /** - * C++ default constructor. - */ - CHtiCameraServicePlugin(); - - /** - * 2nd phase constructor. - */ - void ConstructL(); - - /** - * Destructor. - */ - virtual ~CHtiCameraServicePlugin(); - - protected: - // Functions from base classes - - /** - * From MEngineVideoRecordingObserver - * Called asynchronously when CEngineVideoRecording::Init(), CCaeEngine::CEngineVideoRecording(), - * or CEngineVideoRecording::Reserve() completes. - * Indicates if Video Recording Engine is ready for operation, - * the camera is reserved and its power is switched on. - * @param aError Error code KErrNone to indicate success or a standard Symbian OS error code. - * @return void - */ - virtual void MevroInitComplete( TInt aError ); - - /** - * From MEngineVideoRecordingObserver - * Called asynchronously when preparing of video recording completes - * after PrepareVideoRecordingL() has been called. - * May be called second time with an error code after a successful preparation - * if video recording loses its prepared state for some reason (e.g. audio HW - * is reserved for some other application). - * @param aError Error code KErrNone to indicate success or a standard Symbian OS error code. - * @return void - */ - virtual void MevroVideoPrepareComplete(TInt aError); - - /** - * From MEngineVideoRecordingObserver - * Called (possibly asynchronously) when video recording is running - * after CEngineVideoRecording::StartVideoRecording() or - * CEngineVideoRecording::ResumeVideoRecording() has been called. - * @param aError Error code KErrNone to indicate success or a standard Symbian OS error code. - * @return void - */ - virtual void MevroVideoRecordingOn(TInt aError); - - /** - * From MEngineVideoRecordingObserver - * Called (possibly asynchronously) when video recording is paused after - * CEngineVideoRecording::PauseVideoRecording() has been called. - * @param aError Error code KErrNone to indicate success or a standard Symbian OS error code. - * @return void - */ - virtual void MevroVideoRecordingPaused(TInt aError); - - /** - * From MEngineVideoRecordingObserver - * Called (possibly asynchronously) when video recording is completed - * after CEngineVideoRecording::StopVideoRecording() has been called or - * recording has been completed for some other reason. - * @param aError Error code KErrNone to indicate success or a standard Symbian OS error code. - * if aError == KErrDiskFull, then disk storage is full. - * if aError == KErrCompletion, then clip max size was reached. - * @return void - */ - virtual void MevroVideoRecordingComplete(TInt aError); - - private: - void HandleInitializeCmdL(const TDesC8& aData); - void HandleUninitializeCmdL(const TDesC8& aData); - void HandlePrepareVideoRecordingCmdL(const TDesC8& aData); - void HandleStartVideoRecordingCmdL( const TDesC8& aData ); - void HandlePausingVideoRecordingCmdL( const TDesC8& aData ); - void HandleResumeVideoRecordingCmdL( const TDesC8& aData ); - void HandleStopVideoRecordingCmdL( const TDesC8& aData ); - void HandleCloseVideoRecordingCmdL( const TDesC8& aData ); - void HandleGetZoomCmdL( const TDesC8& aData ); - void HandleSetZoomCmdL( const TDesC8& aData ); - - void SendOkMsgL( const TDesC8& aData ); - void SendErrorMessageL( TInt aError, const TDesC8& aDescription ); - - TInt ParseString( const TDesC8& aRequest, - TInt aOffset, TDes& aResult ); - - public: // Data - - protected: // Data - - private: // Data - // Flag telling if the service is busy processing a message - TBool iIsBusy; - - TInt iError; - CEngineVideoRecording* iVideoRecordingEngine; - CActiveSchedulerWait* iWaiter; - - }; - -#endif // HTICAMERASERVICEPLUGIN_H - -// End of File