callcontinuity/vcchotrigger/inc/vcchopolicy.h
branchRCL_3
changeset 22 d38647835c2e
parent 0 a4daefaec16c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/callcontinuity/vcchotrigger/inc/vcchopolicy.h	Wed Sep 01 12:29:57 2010 +0100
@@ -0,0 +1,161 @@
+/*
+* Copyright (c) 2007-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:   Vcc handover policy definitions
+*
+*/
+
+
+
+#ifndef T_VCCHOPOLICY_H
+#define T_VCCHOPOLICY_H
+
+#include <e32def.h> 
+
+/*
+* VCC Handover policy attr
+* Preferred Domain Attributes 
+*/
+enum TVccHoPolicyPreferredDomain
+    {
+    ECsPreferred = 0,
+    EPsPreferred,
+    ECsOnly,
+    EPsOnly
+    };    
+
+enum TVccHoPolicyHoDirection
+    {
+    ECsToPsAllowed = 0x000001,
+    EPsToCsAllowed = 0x000002
+    };
+    
+/**
+ *  Class indicating the Vcc handover policy
+ *
+ *  @lib vcchotrigger.dll
+ *  @since S60 v3.2
+ */
+class TVccHoPolicy
+    {
+    
+public:    
+    /**
+     * Constructor.
+     *
+     * @since S60 3.2
+     */  
+    TVccHoPolicy();
+    
+     /**
+     * Preferred domain for mobile device.
+     *
+     * @since S60 3.2
+     * @return TVccHoPolicyPreferredMode 
+     */
+    TVccHoPolicyPreferredDomain PreferredDomain() const;
+    
+    /**
+     * Set preferred domain for mobile device.
+     *
+     * @since S60 3.2
+     * @param aPreferredDomain Prefered domain value
+     */
+    void SetPreferredDomain( 
+            const TVccHoPolicyPreferredDomain& aPreferredDomain ); 
+     
+     /**
+     * Allowed direction for handover.
+     *
+     * @since S60 3.2
+     * @return TVccHoPolicyHoDirection 
+     */
+    TInt AllowedDirection() const;
+
+     /**
+     * Set allowed direction for handover on/off.
+     * @since S60 3.2 
+     * @param aAllowedDirection Allowed direction value
+     */
+    void SetAllowedDirection( const TInt aAllowedDirection );
+     
+     /**
+     * Indicates that immediate domain transfer should be
+     * performed when preferred network comes available.
+     *
+     * @since S60 3.2
+     * @return TBool ETrue when Dt should be performed immediately
+     */
+    TBool DoImmediateHo() const;
+     
+    /**
+     * Set immediate domain transfer flag on/off
+     * @since S60 3.2
+     * @param aImmediate Immediate HO value
+     */
+    void SetDoImmediateHo( const TBool& aImmediate );
+    
+     /**
+     * Indicates can the domain transfer be performed
+     * when active/held/waiting calls in trasnferring-out domain.
+     *
+     * @since S60 3.2
+     * @return TBool ETrue when Dt should be performed
+     */
+    TBool DoHoInHeldWaitingCalls() const;
+     
+     /**
+     * Set can domain transfer be performed
+     * when active/held/waiting calls in trasnferring-out domain
+     * on/off.
+     *
+     * @since S60 3.2
+     * @param aHeldWaitingCalls Held waiting calls value
+     */
+    void SetDoHoInHeldWaitingCalls( const TBool& aHeldWaitingCalls );
+    
+    /**
+     * Indicates can HO be performed when cs originated call
+     * 
+     * @since S60 3.2
+     * @return TBool ETrue when HO can be performed
+     */
+    TBool DtAllowedWhenCsOriginated() const;
+    
+    /**
+     * Set is HO allowed when the call is CS originated
+     * 
+     * @since S60 3.2
+     * @param aDtAllowedCsOrig Is Dt allowed value
+     */
+    void SetDtAllowedWhenCsOriginated( 
+                    const TBool& aDtAllowedWhenCsOriginated );
+    
+private:
+    /** Preferred domain */
+    TVccHoPolicyPreferredDomain iPreferredDomain;
+    
+    /** Allowed direction */
+    TInt                        iAllowedDirection;
+    
+    /** Immediate HO value */
+    TBool                       iImmediate;
+    
+    /** Held waiting calls value*/
+    TBool                       iHeldWaitingCalls;
+    
+    /** Dt allowed in cs originated call */
+    TBool                       iDtAllowedWhenCsOriginated;
+    };
+
+#endif //T_VCCHOPOLICY_H