--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/phonesrv_plat/sat_refresh_api/inc/MSatRefreshObserver.h Tue Feb 02 01:11:09 2010 +0200
@@ -0,0 +1,232 @@
+/*
+* Copyright (c) 2002-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: Observer for refresh events.
+*
+*/
+
+
+
+#ifndef MSATREFRESHOBSERVER_H
+#define MSATREFRESHOBSERVER_H
+
+// INCLUDES
+#include <e32std.h>
+#include <etelsat.h>
+
+// DATA TYPES
+enum TSatElementaryFiles
+ {
+ KUnknownEf = RSat::KUnknownEf, // Unknown EF type
+ KDirEf = RSat::KDirEf, // Application directory EF
+ KElpEf = RSat::KElpEf, // Extended Language Preference
+ // EF
+ KArrEf = RSat::KArrEf, // Access Rule Reference EF at
+ // the MF level.
+ KImgEf = RSat::KImgEf, // Image EF
+ KPscEf = RSat::KPscEf, // Phonebook synchronisation
+ // counter EF
+ KCcEf = RSat::KCcEf, // Change counter EF
+ KPuidEf = RSat::KPuidEf, // Previous unique identifier
+ // EF
+ KPbr = RSat::KPbr, // Phonebook reference file EF
+ KSllEf = RSat::KSllEf, // SoLSA LSA List EF
+ KInvScan = RSat::KInvScan, // Investigation File EF
+ KImpiEf = RSat::KImpiEf, // IMS private user identity EF
+ KImpuEf = RSat::KImpuEf, // IMS public user identity EF
+ KDomainEf = RSat::KDomainEf, // Home Network Domain Name EF
+ KLpEf = RSat::KLpEf, // Language Preference EF
+ KArradEf = RSat::KArradEf, // Access rule reference (under
+ // ADFUSIM and DFTELECOM) EF
+ KImsiEf = RSat::KImsiEf, // IMSI EF
+ KCsp1Ef = RSat::KCsp1Ef, // CSP 1 EF (7F20/21 6F15)
+ KDckEf = RSat::KDckEf, // De-personalization Control
+ // Keys EF
+ KPlmnSelEf = RSat::KPlmnSelEf, // PLMN Selection EF
+ KHplmnEf = RSat::KHplmnEf, // Home PLMN EF
+ KCnlEf = RSat::KCnlEf, // Co-operative Network List EF
+ KAcmMaxEf = RSat::KAcmMaxEf, // ACM max value EF
+ KSstEf = RSat::KSstEf, // SIM Service Table EF
+ KAcmEf = RSat::KAcmEf, // Accumulated Call Meter EF
+ KAdnEf = RSat::KAdnEf, // Abbreviated Dialling Numbers
+ // EF
+ KFdnEf = RSat::KFdnEf, // Fixed Diallind Numbers EF
+ KSmsEf = RSat::KSmsEf, // Short Messages EF
+ KCcpEf = RSat::KCcpEf, // Capability Configuration
+ // Parameters EF
+ KGid1Ef = RSat::KGid1Ef, // Group Identifier Level 1 EF
+ KGid2Ef = RSat::KGid2Ef, // Group Identifier Level 2 EF
+ KMsisdnEf = RSat::KMsisdnEf, // MS ISDN EF
+ KPuctEf = RSat::KPuctEf, // Price per Unit and Currency
+ // Table EF
+ KSmspEf = RSat::KSmspEf, // SMS Parameters EF
+ KSmssEf = RSat::KSmssEf, // SMS Status EF
+ KLndEf = RSat::KLndEf, // Last Number Dialled EF
+ KCbmiEf = RSat::KCbmiEf, // Cell Broadcast Message
+ // Identifier
+ KSpnEf = RSat::KSpnEf, // Service Provider Name EF
+ KSmsrEf = RSat::KSmsrEf, // SMS reports EF
+ KCbmidEf = RSat::KCbmidEf, // CBMI for Data Download EF
+ KSdnEf = RSat::KSdnEf, // Service Dialling Numbers EF
+ KExt1Ef = RSat::KExt1Ef, // Extension 1 EF
+ KExt2Ef = RSat::KExt2Ef, // Extension 2 EF
+ KExt3Ef = RSat::KExt3Ef, // Extension 3 EF
+ KBdnEf = RSat::KBdnEf, // Barred Dialling Numbers EF
+ KExt5Ef = RSat::KExt5Ef, // Extension 5 EF
+ KCcp2Ef = RSat::KCcp2Ef, // Capability configuration
+ // parameters 2 EF
+ KCbmirEf = RSat::KCbmirEf, // CBMI Range Selection EF
+ KNiaEf = RSat::KNiaEf, // Network's Indication of
+ // Alerting EF
+ KLociGprsEf = RSat::KLociGprsEf, // GPRS Location Information EF
+ KSumeEf = RSat::KSumeEf, // SetUpMenu Elements EF
+ KExt4Ef = RSat::KExt4Ef, // Extension 4 EF
+ KEstEf = RSat::KEstEf, // Enabled services table EF
+ KAclEf = RSat::KAclEf, // Access point name control
+ // list EF
+ KCmiEf = RSat::KCmiEf, // Comparison method
+ // information EF
+ KStartHfnEf = RSat::KStartHfnEf, // Initialisation value for
+ // Hyperframe number EF
+ KThresholdEf = RSat::KThresholdEf, // Maximum value of START EF
+ KOPlmnwAcTEf = RSat::KOPlmnwAcTEf, // Operator controlled PLMN
+ // selector with Access
+ // Technology EF
+ KHPlmnwAcTEf = RSat::KHPlmnwAcTEf, // HPLMN selector with Access
+ // Technology EF
+ KRplmnActEf = RSat::KRplmnActEf, // RPLMN Last used Access
+ // Technology EF
+ KPsLociEf = RSat::KPsLociEf, // Packet switched location
+ // information EF
+ KAccEf = RSat::KAccEf, // Access Control Class EF
+ KFPlmnEf = RSat::KFPlmnEf, // Forbidden PLMN EF
+ KIciEf = RSat::KIciEf, // Incoming call information EF
+ KOciEf = RSat::KOciEf, // Outgoing call information EF
+ KIctEf = RSat::KIctEf, // Incoming call timer EF
+ KOctEf = RSat::KOctEf, // Outgoing call timer EF
+ KCsp2Ef = RSat::KCsp2Ef, // CSP 2 EF (7F40 6F98)
+ KAdEf = RSat::KAdEf, // Administrative Data EF
+ KPhaseEf = RSat::KPhaseEf, // Phase Identification EF
+ KVcgsEf = RSat::KVcgsEf, // Voice Group Call Service EF
+ KVgcssEf = RSat::KVgcssEf, // Voice Group Call Service
+ // Status EF
+ KVbsEf = RSat::KVbsEf, // Voice Broadcast Service EF
+ KVbssEf = RSat::KVbssEf, // Voice Broadcast Service
+ // Status EF
+ KeMlppEf = RSat::KeMlppEf, // enhanced Multi Level
+ // Pre-emption and Priority EF
+ KAaemef = RSat::KAaemef, // Automatic Answer for eMLLP
+ // Service EF
+ KEccEf = RSat::KEccEf, // Emergency Call Codes EF
+ KGmsi = RSat::KGmsi, // Group Identity EF
+ KHiddenKeyEf = RSat::KHiddenKeyEf, // Key for hidden phone book
+ // entries EF
+ KPnnEf = RSat::KPnnEf, // PLMN Network Name EF
+ KOplEf = RSat::KOplEf, // Operator Network List EF
+ KMbdnEf = RSat::KMbdnEf, // Mailbox Dialling Numbers EF
+ KExt6Ef = RSat::KExt6Ef, // Extension 6 EF
+ KMbiEf = RSat::KMbiEf, // Mailbox Identifier EF
+ KMwisEf = RSat::KMwisEf, // Message Waiting Indication
+ // Status EF
+ KCfisEf = RSat::KCfisEf, // Call Forwarding Indication
+ // Status EF
+ KExt7Ef = RSat::KExt7Ef, // Extension 7 EF
+ KSpdiEf = RSat::KSpdiEf, // Service provider display
+ // information EF
+ KMmsnEF = RSat::KMmsnEF, // MMS notification EF
+ KExt8Ef = RSat::KExt8Ef, // Extension 8 EF
+ KMmsicpEf = RSat::KMmsicpEf, // MMS issuer connectivity
+ // parameters EF
+ KMmsupEf = RSat::KMmsupEf, // MMS user preferences EF
+ KMmsucpEf = RSat::KMmsucpEf, // MMS user connectivity
+ KNiaRel5Ef = RSat::KNiaRel5Ef, // Network's Indication of Alerting EF (from Rel 5 onwards)
+ // parameters EF
+ KCspEf = 0xffff // CSP (Not yet defined in ETel
+ // SAT API)
+ };
+
+typedef TBuf16<242> TSatRefreshFiles;
+
+// Refresh types.
+enum TSatRefreshType
+ {
+ ERefreshTypeNotSet,
+ ESimInitFullFileChangeNotification,
+ EFileChangeNotification,
+ ESimInitFileChangeNotification,
+ ESimInit,
+ ESimReset,
+ EUsimApplicationReset,
+ E3GSessionReset
+ };
+
+// CLASS DECLARATION
+
+/**
+* Observer for refresh events. Client must not call any RSatRefresh
+* methods from the observer methods.
+*
+* @lib SatClient
+* @since 2.6
+*/
+class MSatRefreshObserver
+ {
+ protected:
+
+ /**
+ * C++ constructor.
+ */
+ MSatRefreshObserver() {};
+
+ /**
+ * Destructor.
+ */
+ virtual ~MSatRefreshObserver() {};
+
+ public: // New functions
+
+ /**
+ * Refresh query. Client should determine whether it allow the
+ * refresh to happen.
+ * @since 2.6
+ * @param aType Refresh type.
+ * @param aFiles Elementary files which are to be changed.
+ * May be zero length.
+ * @return ETrue to allow refresh, EFalse to decline refresh.
+ */
+ virtual TBool AllowRefresh(
+ TSatRefreshType aType, const TSatRefreshFiles& aFiles ) = 0;
+
+ /**
+ * Notification of refresh.
+ * @since 2.6
+ * @param aType Type of refresh which has happened.
+ * @param aFiles List of elementary files which has been changed.
+ * May be zero length.
+ */
+ virtual void Refresh(
+ TSatRefreshType aType, const TSatRefreshFiles& aFiles ) = 0;
+
+ private:
+
+ // Prohibit copy constructor if not deriving from CBase.
+ MSatRefreshObserver( const MSatRefreshObserver& );
+
+ // Prohibit assigment operator if not deriving from CBase.
+ MSatRefreshObserver& operator=( const MSatRefreshObserver& );
+
+ };
+
+#endif // MSATREFRESHOBSERVER_H
+
+// End of File