telephonyserverplugins/common_tsy/commontsy/inc/mmtsy/cmmphoneextinterface.h
changeset 0 3553901f7fa8
child 24 6638e7f4bd8f
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/telephonyserverplugins/common_tsy/commontsy/inc/mmtsy/cmmphoneextinterface.h	Tue Feb 02 01:41:59 2010 +0200
@@ -0,0 +1,532 @@
+/*
+* Copyright (c) 2006-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:
+*
+*/
+
+
+
+#ifndef CMMPHONEEXTINTERFACE_H
+#define CMMPHONEEXTINTERFACE_H
+
+//  INCLUDES
+#include <e32base.h>
+#include <etelmm.h>
+#include <mmretrieve.h>
+
+// FORWARD DECLARATIONS
+class CMmPhoneTsy;
+class TDataPackage;
+class CMmDataPackage;
+
+// CLASS DECLARATION
+
+/**
+ *  CMmPhoneExtInterface is used to provide an extension interface for system 
+ *  specific phone object extensions. 
+ */
+class CMmPhoneExtInterface
+        : public CBase 
+    {
+    public:
+
+        /**
+         * Get static extension mode
+         *          
+         *
+         * @param aMode: pointer to mode
+         * @return return value decided by the extension
+         */        
+        virtual TInt GetStaticExtensionMode( 
+            RMobilePhone::TMobilePhoneNetworkMode* aMode ) = 0;
+
+        /**
+         * Default implementation of trapped Initialisation method
+         *          
+         *
+         * @return error value
+         */
+        virtual TInt InitSimL( )= 0;
+
+        /**
+         * Default implementation of GetFdnStatusL-method
+         *          
+         *
+         * @return error value
+         */
+        virtual TInt GetFdnStatusL()= 0;
+
+        /**
+         * Default implementation of SetFdnSetting-method
+         *          
+         *
+         * @param TMobilePhoneFdnSetting* aFdnSetting
+         * @return error value
+         */
+        virtual TInt SetFdnSetting(
+            RMobilePhone::TMobilePhoneFdnSetting* aFdnSetting)= 0;           
+
+        //NET related methods
+
+        /**
+         * Default implementation of GetNITZInfo-method.
+         *
+         * @param aNwtTimeInfo
+         * @return error value
+         */ 
+        virtual TInt GetNITZInfo( 
+            RMobilePhone::TMobilePhoneNITZ* aNwtTimeInfo )= 0;
+
+        /**
+         * Update Nitz information.
+         *          
+         *
+         * @param aNITZInfo NITZ info
+         */
+        virtual void ReceivedNITZInfo(
+            RMobilePhone::TMobilePhoneNITZ& aNITZInfo )= 0;
+
+        /**
+         * Implementation of GetCurrentNetwork version 1 information
+         *          
+         *
+         * @param aNetInfo network information version 1
+         * @param aArea Location area
+         * @return error value
+         */
+        virtual TInt GetCurrentNetworkV1( 
+            RMobilePhone::TMobilePhoneNetworkInfoV1* aNetInfo,
+            RMobilePhone::TMobilePhoneLocationAreaV1* aArea )= 0;
+         
+        /**
+         * Implementation of GetCurrentNetwork version 2 information
+         *          
+         * @param aNetInfo network information version 2
+         * @param aArea Location area
+         * @return error value
+         */
+        virtual TInt GetCurrentNetworkV2( 
+            RMobilePhone::TMobilePhoneNetworkInfoV2* aNetInfo,
+            RMobilePhone::TMobilePhoneLocationAreaV1* aArea )= 0;     
+
+        /**
+         * Implementation of GetCurrentNetwork version 5 information
+         *          
+         *
+         * @param aNetInfo network information version 5
+         * @param aArea Location area
+         * @return error value
+         */
+        virtual TInt GetCurrentNetworkV5( 
+            RMobilePhone::TMobilePhoneNetworkInfoV5* aNetInfo,
+            RMobilePhone::TMobilePhoneLocationAreaV1* aArea )= 0;
+            
+        /**
+         * Default implementation of GetCurrentNetwork (version 8)
+         *          
+         *
+         * @param aNetInfo network information version 8
+         * @param aArea Location area
+         * @return error value
+         */
+        virtual TInt GetCurrentNetwork( 
+            RMobilePhone::TMobilePhoneNetworkInfoV8* aNetInfo,
+            RMobilePhone::TMobilePhoneLocationAreaV1* aArea )= 0;
+        
+        /**
+         * Version 1 implementation of GetCurrentNetworkNoLocation
+         *
+         * @param aNetInfo network information version 1
+         * @return error value
+         */
+        virtual TInt GetCurrentNetworkNoLocationV1( 
+            RMobilePhone::TMobilePhoneNetworkInfoV1* aNetInfo )= 0;
+            
+        /**
+         * Version 2 information implementation of GetCurrentNetworkNoLocation
+         *          
+         * @param aNetInfo network information version 2
+         * @return error value
+         */
+        virtual TInt GetCurrentNetworkNoLocationV2( 
+            RMobilePhone::TMobilePhoneNetworkInfoV2* aNetInfo )= 0;
+
+        /**
+         * Version 5 information implementation of GetCurrentNetworkNoLocation
+         *          
+         *
+         * @param aNetInfo network information version 5
+         * @return error value
+         */
+        virtual TInt GetCurrentNetworkNoLocationV5( 
+            RMobilePhone::TMobilePhoneNetworkInfoV5* aNetInfo )= 0;
+            
+        /**
+         * Default implementation of GetCurrentNetworkNoLocation (version 8)
+         *          
+         *
+         * @param aNetInfo network information version 8
+         * @return error value
+         */
+        virtual TInt GetCurrentNetworkNoLocation( 
+            RMobilePhone::TMobilePhoneNetworkInfoV8* aNetInfo )= 0;            
+
+        /**
+         * Default implementation of SetCurrentNetwork
+         *          
+         * @param aNetInfo network information version 8
+         * @param aArea Location area
+         * @return error value
+         */
+        virtual TInt SetCurrentNetwork( 
+            const RMobilePhone::TMobilePhoneNetworkInfoV8& aNetInfo,
+            const RMobilePhone::TMobilePhoneLocationAreaV1& area )= 0;
+            
+        /**
+         * Get the Cell Information.
+         *
+         * @return error value
+         */ 
+        virtual TInt GetCellInfoL()= 0; 
+
+        /**
+          * Request notifications of cell information changes.
+          *
+          * @return error value
+          */ 
+        virtual TInt NotifyCellInfoChangeL()= 0;
+ 
+        /**
+         * Version 1 implementation of get home network information.
+         *          
+         * @param aNetInfo network information version 1
+         * @return error value
+         */ 
+        virtual TInt GetHomeNetworkV1( 
+            RMobilePhone::TMobilePhoneNetworkInfoV1* aNetInfo )= 0;
+
+        /**
+         * Version 2 implementation of get home network information.
+         *          
+         * @param aNetInfo network information version 2
+         * @return error value
+         */ 
+        virtual TInt GetHomeNetworkV2( 
+            RMobilePhone::TMobilePhoneNetworkInfoV2* aNetInfo )= 0;
+
+        /**
+         * Version 5 implementation of get home network information.
+         *          
+         *
+         * @param aNetInfo network information version 5
+         * @return error value
+         */ 
+        virtual TInt GetHomeNetworkV5( 
+            RMobilePhone::TMobilePhoneNetworkInfoV5* aNetInfo )= 0;
+
+		/**
+         * Default implementation of get home network information (version 8)
+         *          
+         *
+         * @param aNetInfo network information version 8
+         * @return error value
+         */ 
+        virtual TInt GetHomeNetwork( 
+            RMobilePhone::TMobilePhoneNetworkInfoV8* aNetInfo )= 0;
+		
+        /**
+         * Default implementation of GetNetworkCaps-method.
+         *          
+         *
+         * @param aCaps 
+         * @return error value
+         */
+        virtual TInt GetNetworkCaps( TUint32* aCaps )= 0;
+
+        /**
+         * Default implementation of GetSecurityCaps.
+         *          
+         *
+         * @param aCaps 
+         * @return error value
+         */
+        virtual TInt GetSecurityCaps( TUint32* aCaps )= 0;
+
+        /**
+         * Default implementation of ChangeSecurityCodeL.
+         *          
+         *
+         * @param aPackage
+         * @return error value
+         */
+        virtual TInt ChangeSecurityCodeL( const TDataPackage& aPackage )= 0;
+
+        /**
+         * Sets new setting for a lock
+         *          
+         *
+         * @param aDataPackage 
+         * @return error value
+         */
+        virtual TInt SetLockSettingL( CMmDataPackage* aPackage  )= 0;
+
+        /**
+         * Default implementation of VerifySecurityCodeL.
+         *          
+         *
+         * @param aPackage
+         * @return error value
+         */
+        virtual TInt VerifySecurityCodeL( 
+            const TDataPackage& aPackage )= 0;
+
+        /**
+         * Default implementation of AbortSecurityCodeL.
+         *          
+         *
+         * @param aPackage
+         * @return error value
+         */
+        virtual TInt AbortSecurityCodeL( 
+            const TDataPackage& aPackage )= 0;
+
+        /**
+         * Default implementation of UpdateSecurityCaps.
+         *          
+         *
+         * @param aEvent 
+         * @return error value
+         */
+        virtual TInt UpdateSecurityCaps(
+            RMobilePhone::TMobilePhoneSecurityEvent aEvent )= 0;
+
+        /**
+         * Default implementation of DeliverCode.
+         *          
+         *
+         * @param aCodes
+         * @return error value
+         */
+        virtual TInt DeliverCode( 
+            RMobilePhone::TCodeAndUnblockCode aCodes )= 0;
+
+        /**
+         * Checks the state of the currently active PIN code.
+         *          
+         *
+         * @param None
+         */
+        virtual TInt SimActivePinState()= 0;
+
+        /**
+         * Default implementation of get service provider name
+         *          
+         *
+         * @param None
+         * @return error value
+         */
+        virtual TInt GetServiceProviderNameL()= 0;
+
+        /**
+         * Default implementation of GetDetectedNetworksPhase1L
+         *          
+         *
+         * @param None
+         * @return status KErrNotSupported
+         */
+        virtual  TInt GetDetectedNetworksPhase1L()= 0;
+
+        /**
+         * Default implementation of SelectNetworkL
+         *          
+         *
+         * @param aDataPackage
+         * @return status KErrNotSupported
+         */
+        virtual  TInt SelectNetworkL( 
+            const TDataPackage& aDataPackage )= 0;
+
+        /**
+         * Default implementation of SelectNetworkCancelL
+         *          
+         *
+         * @return status KErrNotSupported
+         */
+        virtual TInt SelectNetworkCancelL()= 0;
+
+        /**
+         * Default implementation of GetDetectedNetworksCancelL
+         *          
+         *
+         * @return status KErrNotSupported
+         */
+        virtual  TInt GetDetectedNetworksCancelL()= 0;
+
+        /**
+         * Completes a network registration status changed in this extension
+         *          
+         *
+         * @param  aRegistrationStatus new registration status
+         */
+        virtual  void CompleteNotifyNetworkRegistrationStatusChange( 
+            RMobilePhone::TMobilePhoneRegistrationStatus aRegistrationStatus 
+                )= 0;
+             
+        /**
+         * Gets the ICC access capabilites
+         *          
+         *
+         * @param aCaps Pointer to return the capabilites value
+         * @return status KErrNotSupported
+         */
+        virtual TInt GetIccAccessCaps ( TUint32* aCaps )= 0;
+         
+        /**
+         * Sets the network selection setting
+         *          
+         *
+         * @param aDataPackage
+         * @return status KErrNotSupported
+         */
+        virtual TInt SetNetworkSelectionSettingL(
+            const TDataPackage& aDataPackage )= 0;
+
+        /**
+         * Gets the network registration status
+         *          
+         *
+         * @param aTransactionId transaction Id
+         * @return status KErrNotSupported
+         */
+        virtual TInt GetNetworkRegistrationStatusL()= 0;
+        
+        /**
+         * Copletes GetHomeNetwork request
+         *          
+         *
+         * @param aDataPackage package
+         */
+        virtual void CompleteGetHomeNetwork( 
+            CMmDataPackage* aDataPackage )= 0;
+        
+        /**
+         * Gets network security level
+         *          
+         *
+         * @param aNetworkSecurity
+         * @return Error value
+         */
+        virtual TInt GetNetworkSecurityLevel ( 
+            RMobilePhone::TMobilePhoneNetworkSecurity& aNetworkSecurity
+                ) const = 0;
+        
+        /**
+         * Sets network security level
+         *          
+         *
+         * @param aNetworkSecurity
+         * @return Error value
+         */
+        virtual TInt SetNetworkSecurityLevel ( 
+            RMobilePhone::TMobilePhoneNetworkSecurity& aNetworkSecurity )= 0;
+        
+        /**
+         * Gets ciphering indicator status
+         *          
+         *
+         * @param  aDataPackage
+         * @return Error value
+         */
+        virtual TInt GetCipheringIndicatorStatusL(
+            const TDataPackage* aDataPackage )= 0;
+
+        /**
+         * Sets a network mode into iCurrentNwInfo.iMode variable
+         * 		
+         *
+         * @param aMode Network Mode
+         */
+         virtual void SetNetworkModeInExtensionPhone( 
+            RMobilePhone::TMobilePhoneNetworkMode aMode ) = 0;
+
+        /**
+         * Makes the SIM status request to SIM server
+         *          
+         *
+         * @return request error status
+         */
+        virtual TInt NotifySimStatusReadyL() = 0;
+
+        /**
+         * Makes the MTC status request to SIM server
+         *          
+         *
+         * @return request error status
+         */
+        virtual TInt MtcStateQueryL()= 0;
+
+        /**
+         * Gets the status and setting of a given lock
+         *          
+         *
+         * @param aPackage
+         * @return request error status
+         */
+        virtual TInt GetLockInfoL( const TDataPackage& aPackage ) = 0;
+
+        /**
+         * Gets the status and setting of a given lock
+         *          
+         *
+         * @param aStatus
+         * @param aSetting
+         * @param aLock
+         * @return request error status
+         */
+        virtual TInt UpdateLockInfo( 
+            RMobilePhone::TMobilePhoneLockStatus aStatus,
+            RMobilePhone::TMobilePhoneLockSetting aSetting,
+            RMobilePhone::TMobilePhoneLock aLock ) = 0;
+
+        /**
+         * Gets the type of the ICC
+         *          
+         *
+         * @param None
+         * @return request error status
+         */
+        virtual TInt GetICCTypeL() = 0; 
+         
+        /**
+         * Completes a GetICCType request
+         *          
+         *
+         * @param aDataPackage
+         * @return request error status
+         */
+        virtual void CompleteGetICCType ( CMmDataPackage* aDataPackage ) = 0;
+
+        /**
+         * Returns the current ICCType
+         *          
+         * @param None
+         * @return error value
+         */
+        virtual TInt CurrentICCType() = 0;
+        
+};
+
+#endif // CMMPHONEEXTINTERFACE_H
+
+//	End of file