--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/vtuis/videotelui/inc/commands/tvtuimediastate.h Mon Nov 23 14:47:47 2009 +0200
@@ -0,0 +1,216 @@
+/*
+* 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: Media state class definition.
+*
+*/
+
+
+#ifndef T_VTUIMEDIASTATE_H
+#define T_VTUIMEDIASTATE_H
+
+#include <e32base.h>
+
+#include "tvtflagcontainer.h"
+
+class MVtEngMedia;
+class MVtEngCommandHandler;
+
+/**
+ * TVtUiMediaState
+ *
+ * Contains information about media's (video) current status.
+ *
+ * @since S60 v3.2
+ */
+NONSHARABLE_CLASS( TVtUiMediaState ) : public TVtUpdateableFlagContainer
+ {
+public:
+
+ /**
+ * Constructor.
+ *
+ * @param aMedia Reference to VT engine media object.
+ * @param aCommandHandler Reference to command handler object.
+ */
+ inline TVtUiMediaState( MVtEngMedia& aMedia,
+ MVtEngCommandHandler& aCommandHandler );
+
+ /**
+ * Return whether or not video is being sent.
+ *
+ * @return ETrue if video is being sent.
+ */
+ inline TBool IsVideo() const;
+
+ /**
+ * Return whether or not any camera is available in device.
+ *
+ * @return ETrue if any camera is available in device.
+ */
+ inline TBool HasCamera() const;
+
+ /**
+ * Return whether or not freeze is supported for active video source.
+ *
+ * @return ETrue if freeze is supported for active video source.
+ */
+ inline TBool IsFreezeSupported() const;
+
+ /**
+ * Return whether or not active video source is frozen.
+ *
+ * @return ETrue if video is frozen.
+ */
+ inline TBool IsFrozen() const;
+
+ /**
+ * Return whether or not share is active.
+ *
+ * @return ETrue if still image is being shared.
+ */
+ inline TBool IsSharing() const;
+
+ /**
+ * Return whether or not sharing is being initialized.
+ *
+ * @return ETrue if still image sharing is being initialized.
+ */
+ inline TBool IsInitializingShare() const;
+
+ /**
+ * Return whether or not primary camera is being used by VT.
+ *
+ * @return ETrue if primary camera is being used.
+ */
+ inline TBool IsPrimaryCameraInUse() const;
+
+ /**
+ * Return whether or not secondary camera is being used by VT.
+ *
+ * @return ETrue if secondary camera is being used.
+ */
+ inline TBool IsSecondaryCameraInUse() const;
+
+ /**
+ * Return whether or not it is possible to share.
+ *
+ * @return ETrue if sharing is not allowed.
+ */
+ inline TBool IsNotAbleToShare() const;
+
+ /**
+ * Return whether or not device has primary camera.
+ *
+ * @return ETrue if primary camera is available.
+ */
+ inline TBool HasPrimaryCamera() const;
+
+ /**
+ * Return whether or not device has secondary camera.
+ *
+ * @return ETrue if secondary camera is available.
+ */
+ inline TBool HasSecondaryCamera() const;
+
+ /**
+ * Return whether or not active video source supports contrast setting.
+ *
+ * @return ETrue if contrast settingis allowed.
+ */
+ inline TBool IsContrastSupported() const;
+
+ /**
+ * Return whether or not active video source supports white balance setting.
+ *
+ * @return ETrue if white balance setting is allowed.
+ */
+ inline TBool IsWhiteBalanceSupported() const;
+
+ /**
+ * Return whether or not active video source supports color tone setting.
+ *
+ * @return ETrue if colour tone setting is allowed.
+ */
+ inline TBool IsColorToneSupported() const;
+
+ /**
+ * Return whether or not active video source supports brightness setting.
+ *
+ * @return ETrue if brightness setting is allowed.
+ */
+ inline TBool IsBrightnessSupported() const;
+
+ /**
+ * Return whether or not video is permanently stopped.
+ *
+ * @return ETrue if video is permanently stopped.
+ */
+ inline TBool IsVideoPermanentlyStopped() const;
+
+private: // from TVtUpdateableFlagContainer
+
+ /**
+ * @see TVtUpdateableFlagContainer::UpdateFlags
+ */
+ void UpdateFlags();
+
+private:
+
+ // Enumeration for media state flags.
+ enum TFlags
+ {
+ /** Set if video is currently enabled. */
+ EIsVideo = ( 1<<0 ),
+ /** Set if device has any cameras */
+ EHasCamera = ( 1<<1 ),
+ /** Set if current active video source supports freezing */
+ EIsFreezeSupported = ( 1<<2 ),
+ /** Set if current active video source is frozen */
+ EIsFrozen = ( 1<<3 ),
+ /** Set if sharing is active */
+ EIsSharing = ( 1<<4 ),
+ /** Set if sharing is being initialized */
+ EIsInitializingShare = ( 1<<5 ),
+ /** Set if device's primary camera is being used by VT application */
+ EIsPrimaryCameraInUse = ( 1<<6 ),
+ /** Set if device's secondary camera is being used by VT application */
+ EIsSecondaryCameraInUse = ( 1<<7 ),
+ /** Set if it is not possible to share */
+ EIsNotAbleToShare = ( 1<<8 ),
+ /** Set if device has primary camera */
+ EHasPrimaryCamera = ( 1<<9 ),
+ /** Set if device has secondary camera */
+ EHasSecondaryCamera = ( 1<<10 ),
+ /** Set if current video source supports contrast setting */
+ EIsContrastSupported = ( 1<<11 ),
+ /** Set if current video source supports white balance setting */
+ EIsWhiteBalanceSupported = ( 1<<12 ),
+ /** Set if current video source supports color tone setting */
+ EIsColorToneSupported = ( 1<<13 ),
+ /** Set if current video source supports brightness setting */
+ EIsBrightnessSupported = ( 1<<14 ),
+ /** Set if video is permanently stopped*/
+ EIsVideoPermanentlyStopped = ( 1<<15 )
+ };
+
+ // Reference to engine media instance.
+ MVtEngMedia& iMedia;
+
+ // Reference to engine command handler instance.
+ MVtEngCommandHandler& iCommandHandler;
+ };
+
+#include "tvtuimediastate.inl"
+
+#endif // T_VTUIMEDIASTATE_H