vtuis/videotelui/inc/commands/tvtuilocalvariation.h
branchRCL_3
changeset 25 779871d1e4f4
parent 0 ed9695c8bcbe
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/vtuis/videotelui/inc/commands/tvtuilocalvariation.h	Wed Sep 01 12:29:12 2010 +0100
@@ -0,0 +1,231 @@
+/*
+* 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:  Video Telephone local variation class definition.
+*
+*/
+
+
+#ifndef T_VTUILOCALVARIATION_H
+#define T_VTUILOCALVARIATION_H
+
+#include <e32base.h>
+
+#include "tvtflagcontainer.h"
+
+// User selectable Call answer status values
+const TInt KAllwaysQuery = 0;
+const TInt KAllwaysAllow = 2;
+const TInt KNumberOfTbButtons = 6;
+
+/**
+ *  TVtUiVariationBase
+ *
+ *  Base class for local variation classes.
+ *
+ *  @since S60 v3.2
+ */
+NONSHARABLE_CLASS( TVtUiVariationBase ) : public TVtFlagContainer
+    {
+public:
+
+     /**
+     * Reads variations from central reposityory.
+     * and set default value in case error
+     */
+    virtual void ReadL( const TInt adefault = -1 );
+
+protected:
+
+    /**
+     * Returns UID of the repository to be read.
+     */
+    virtual const TUid& Uid() const = 0;
+
+    /**
+     * ID of the key inside repository to be read.
+     */
+    virtual TUint32 Key() const = 0;
+
+    /**
+     * Gets key value.
+     */
+    virtual TUint32 ReceiveValue() const;
+
+    };
+
+/**
+ *  TVtUiVideoTelephonyVariation
+ *
+ *  Video Telephony variation class. Reads VT local variation flags from the
+ *  CenRep and contains methods to query flag states. This class should be
+ *  instanced only once and same instance should be passesd as reference to
+ *  modules that need this local variation information.
+ *
+ *  @since S60 v3.2
+ */
+NONSHARABLE_CLASS( TVtUiVideoTelephonyVariation ) : public TVtUiVariationBase
+    {
+
+public:
+
+    /**
+     * Return whether or not ScalingMethodENearest is set in local variation.
+     *
+     * @return ETrue if ScalingMethodENearest local variation flag is set,
+     * EFalse otherwise.
+     */
+    inline TBool IsScalingMethodENearest() const;
+
+    /**
+     * Return whether or not ScalingMethodEBilinear is set in local variation.
+     *
+     * @return ETrue if ScalingMethodEBilinear local variation flag is set,
+     * EFalse otherwise.
+     */
+    inline TBool IsScalingMethodEBilinear() const;
+
+    /**
+     * Return whether or not EnableBitReversal is set in local variation.
+     *
+     * @return ETrue if EnableBitReversal local variation flag is set, EFalse
+     * otherwise.
+     */
+    inline TBool IsEnableBitReversal() const;
+
+private: // from TVtUiVariationBase
+
+    /**
+     * @see TVtUiVariationBase::Uid
+     */
+    const TUid& Uid() const;
+
+    /**
+     * @see TVtUiVariationBase::Key
+     */
+    TUint32 Key() const;
+    };
+
+/**
+ *  TVtUiActiveIdleVariation
+ *
+ *  Active Idle variation class. Reads AI local variation flags from the
+ *  CenRep and contains methods to query flag states. This class should be
+ *  instanced only once and same instance should be passesd as reference to
+ *  modules that need this local variation information.
+  *
+ *  @since S60 v3.2
+ */
+NONSHARABLE_CLASS( TVtUiActiveIdleVariation ) : public TVtUiVariationBase
+    {
+
+public:
+    /**
+     * Return whether or not active idle is enabled in local variation.
+     *
+     * @return ETrue if active idle is enabled in local variation.
+     */
+    TBool IsActiveIdleEnabled();
+
+private: // from TVtUiVariationBase
+
+    /**
+     * @see TVtUiVariationBase::Uid
+     */
+    const TUid& Uid() const;
+
+    /**
+     * @see TVtUiVariationBase::Key
+     */
+    TUint32 Key() const;
+
+private:
+    };
+
+/**
+ *  TVtUiGsMuteVariation
+ *
+ *  General settings (Gs) variation class. Reads GS local variation flags from the
+ *  CenRep and contains methods to query flag states and values. This class should be
+ *  instanced only once and same instance should be passesd as reference to
+ *  modules that need this local variation information.
+  *
+ *  @since S60 v3.2
+ */
+NONSHARABLE_CLASS( TVtUiGsMuteVariation ) : public TVtUiVariationBase
+    {
+
+public:
+
+    /**
+     * Returns Gs mute state value from CanRep.
+     *
+     * @return Gs mute state value.
+     */
+    TUint32 GsMuteState();
+
+private: // from TVtUiVariationBase
+
+    /**
+     * @see TVtUiVariationBase::Uid
+     */
+    const TUid& Uid() const;
+
+    /**
+     * @see TVtUiVariationBase::Key
+     */
+    TUint32 Key() const;
+
+private:
+    };
+
+/**
+ *  TVtUiToolbarVariation
+ *
+ *  Toolbar variation class. Reads TB local variation flags from the
+ *  CenRep and contains methods to query flag states and values. This class should be
+ *  instanced only once and same instance should be passesd as reference to
+ *  modules that need this local variation information.
+  *
+ *  @since S60 v3.2
+ */
+NONSHARABLE_CLASS( TVtUiToolbarVariation ) : public TVtUiVariationBase
+    {
+
+public:
+    /**
+     * Returns number of toolbar buttons from CanRep.
+     *
+     * @return number of toolbar buttons.
+     */
+    TUint32 NumberOfButtons();
+
+private: // from TVtUiVariationBase
+
+    /**
+     * @see TVtUiVariationBase::Uid
+     */
+    const TUid& Uid() const;
+
+    /**
+     * @see TVtUiVariationBase::Key
+     */
+    TUint32 Key() const;
+
+private:
+    };
+
+
+#include "tvtuilocalvariation.inl"
+
+#endif // T_VTUILOCALVARIATION_H