--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/vtuis/lcvtplugin/inc/common/tlcvtstates.h Tue Aug 31 15:16:10 2010 +0300
@@ -0,0 +1,333 @@
+/*
+* Copyright (c) 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: LC VT states class definition.
+*
+*/
+
+
+#ifndef T_LCVTSTATES_H
+#define T_LCVTSTATES_H
+
+#include <e32base.h>
+
+#include "tlcvtmediastate.h"
+#include "tlcvtaudiostate.h"
+
+class CVtEngModel;
+class MVtEngCameraPreferences;
+
+/**
+ * TLcVtStates
+ *
+ * Contains information about Application UI's current status.
+ *
+ * @since S60 v3.2
+ */
+NONSHARABLE_CLASS( TLcVtStates ) : public TLcVtFlagContainer
+ {
+
+public: // enumerations
+
+ /**
+ * Lc VT plugin execution state (will be set by the plugin state classes)
+ */
+ enum TLcVtExecState
+ {
+ EExecStateStarting,
+ EExecStateRunning,
+ EExecStateResetting,
+ EExecStateFinalized
+ };
+
+public:
+
+ /**
+ * Constructor.
+ */
+ TLcVtStates( CVtEngModel& aModel );
+
+ /**
+ * Updates UI states.
+ */
+ void Update();
+
+ /**
+ * Return whether or not ColorToneSetting
+ * is supported by current camera.
+ *
+ * @return ETrue if at least one color tone setting is available,
+ * EFalse otherwise.
+ */
+ TBool IsColorToneSettingAvailable() const;
+
+ /**
+ * Return whether or not WhiteBalanceSetting
+ * is supported by current camera.
+ *
+ * @return ETrue if at least one white balance setting is available,
+ * EFalse otherwise.
+ */
+ TBool IsWhiteBalanceSettingAvailable() const;
+
+ /**
+ * Return whether or not ontrast setting
+ * is supported by current camera.
+ *
+ * @return ETrue if at contrast setting is available,
+ * EFalse otherwise.
+ */
+ TBool IsContrastSettingAvailable() const;
+
+ /**
+ * Return whether or not brightness setting
+ * is supported by current camera.
+ *
+ * @return ETrue if brightness setting is available,
+ * EFalse otherwise.
+ */
+ TBool IsBrightnessSettingAvailable() const;
+
+ /**
+ * Returns reference to media state object
+ *
+ * @return Reference to media state object.
+ */
+ inline const TLcVtMediaState& MediaState() const;
+
+ /**
+ * Returns reference to audio state object
+ *
+ * @return Reference to audio state object.
+ */
+ inline const TLcVtAudioState& AudioState() const;
+
+ /**
+ * Sets or clears EIsCLIReceived
+ *
+ * @param aSet ETrue if setting will be set, EFalse otherwise.
+ */
+ inline void SetCLIReceived( TBool aSet );
+
+ /**
+ * Check if EIsCLIReceived is set
+ *
+ * @return ETrue if EIsCLIReceived is set EFalse otherwise
+ */
+ inline TBool IsCLIReceived() const;
+
+ /**
+ * Sets or clears EIsLayoutChangeNeeded
+ *
+ * @param aSet ETrue if setting will be set, EFalse otherwise.
+ */
+ inline void SetLayoutChangeNeeded( TBool aSet );
+
+ /**
+ * Check if EIsLayoutChangeNeeded is set
+ *
+ * @return ETrue if EIsLayoutChangeNeeded is set EFalse otherwise
+ */
+ inline TBool IsLayoutChangeNeeded() const;
+
+ /**
+ * Sets or clears EIsDeviceLockOn
+ *
+ * @param aSet ETrue if setting will be set, EFalse otherwise.
+ */
+ inline void SetDeviceLockOn( TBool aSet );
+
+ /**
+ * Check if EIsDeviceLockOn is set
+ *
+ * @return ETrue if EIsDeviceLockOn is set EFalse otherwise
+ */
+ inline TBool IsDeviceLockOn() const;
+
+ /**
+ * Sets or clears EDetailsReceived
+ *
+ * @param aSet ETrue if setting will be set, EFalse otherwise.
+ */
+ inline void SetDetailsReceived( TBool aSet );
+
+ /**
+ * Check if EDetailsReceived is set
+ *
+ * @return ETrue if EDetailsReceived is set EFalse otherwise
+ */
+ inline TBool IsDetailsReceived() const;
+
+ /**
+ * Sets or clears EWaitingForFirstFrame
+ *
+ * @param aSet ETrue if setting will be set, EFalse otherwise.
+ */
+ inline void SetWaitingForFirstFrame( TBool aSet );
+
+ /**
+ * Check if EWaitingForFirstFrame is set
+ *
+ * @return ETrue if EWaitingForFirstFrame is set EFalse otherwise
+ */
+ inline TBool IsWaitingForFirstFrame() const;
+
+ /**
+ * Sets or clears EUseSQCif
+ *
+ * @param aSet ETrue if setting will be set, EFalse otherwise.
+ */
+ inline void SetUseSQCif( TBool aSet );
+
+ /**
+ * Check if EUseSQCif is set
+ *
+ * @return ETrue if EUseSQCif is set EFalse otherwise
+ */
+ inline TBool IsUseSQCif() const;
+
+ /**
+ * Sets or clears EIsThisApplicationForeground
+ *
+ * @param aSet ETrue if setting will be set, EFalse otherwise.
+ */
+ inline void SetThisApplicationForeground( TBool aSet );
+
+ /**
+ * Check if EIsThisApplicationForeground is set
+ *
+ * @return ETrue if EIsThisApplicationForeground is set EFalse otherwise
+ */
+ inline TBool IsThisApplicationForeground() const;
+
+ /**
+ * Sets or clears EIsDisableBlindSetting
+ *
+ * @param aSet ETrue if setting will be set, EFalse otherwise.
+ */
+ inline void SetDisableBlindSetting( TBool aSet );
+
+ /**
+ * Check if EIsDisableBlindSetting is set
+ *
+ * @return ETrue if EIsDisableBlindSetting is set EFalse otherwise
+ */
+ inline TBool IsDisableBlindSetting() const;
+
+ /**
+ * Sets or clears EExecShowCameraInUse
+ *
+ * @param aSet ETrue if setting will be set, EFalse otherwise.
+ */
+ inline void SetExecShowCameraInUse( TBool aSet );
+
+ /**
+ * Check if EExecShowCameraInUse is set
+ *
+ * @return ETrue if EExecShowCameraInUse is set EFalse otherwise
+ */
+ inline TBool IsExecShowCameraInUse() const;
+
+ /**
+ * Sets or clears EIsWaitingCall
+ *
+ * @param aSet ETrue if setting will be set, EFalse otherwise.
+ */
+ inline void SetWaitingCall( TBool aSet );
+
+ /**
+ * Check if there is waiting video/voice call.
+ *
+ * @return ETrue if waiting call is ongoing, EFalse otherwise
+ */
+ inline TBool IsWaitingCall() const;
+
+ /**
+ * Returns application's execution state.
+ * @return Application's current execution state.
+ */
+ inline TLcVtExecState ExecState() const;
+
+ /**
+ * Sets application's execution state.
+ * @param aState Application's new execution state.
+ */
+ inline void SetExecState( const TLcVtExecState aState );
+
+private: // methods to be accessed only by certain classes (see friends)
+
+
+
+private:
+
+ // Enumeration for ui state flags.
+ enum TFlags
+ {
+ /** Set if CLI is received */
+ EIsCLIReceived = ( 1<<0 ),
+
+ /** Set if layout change is needed */
+ EIsLayoutChangeNeeded = ( 1<<1 ),
+
+ /** Set if device lock is on */
+ EIsDeviceLockOn = ( 1<<2 ),
+
+ /** Set if details have been received */
+ EDetailsReceived = ( 1<<3 ),
+
+ /** Set if waiting for first frame */
+ EWaitingForFirstFrame = ( 1<<4 ),
+
+ /** Set if SQCIF is being used */
+ EUseSQCif = ( 1 << 5 ),
+
+ /** Set if application on foreground */
+ EIsThisApplicationForeground = ( 1<<6 ),
+
+ /** Set if blind setting should be temporarily disabled.
+ This is used in preventing blind bitmap from flashing
+ while operations involving multiple engine commands/events
+ take place (e.g. 'Swap image places' and layout switch). */
+ EIsDisableBlindSetting = ( 1<<7 ),
+
+ /** Set if camera in use note should be shown. */
+ EExecShowCameraInUse = ( 1<<8 ),
+
+ /** Set if waiting call exists */
+ EIsWaitingCall = ( 1<<9 ),
+ };
+
+ // Engine media state
+ TLcVtMediaState iMediaState;
+
+ // Engine audio state
+ TLcVtAudioState iAudioState;
+
+ // Refrence to engine
+ CVtEngModel& iModel;
+
+ // Refrence to camera prefrences
+ MVtEngCameraPreferences* iCameraPref;
+
+ // Application execution state
+ TLcVtExecState iExecState;
+
+private: // friends
+
+ //friend class TLcVtStateBase;
+
+ };
+
+#include "tlcvtstates.inl"
+
+#endif // T_LCVTSTATES_H