⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 etelagsm.h

📁 include emccsoft s60_2x
💻 H
📖 第 1 页 / 共 5 页
字号:
//

class CGsmNetworkList;
class MAdvGsmPhoneNetwork
	{
public:

	virtual CGsmNetworkList* RetrievePreferredNetworksLC()=0;
	virtual TInt StorePreferredNetworksL(CGsmNetworkList* aNetworkList) const=0; 
	virtual void StorePreferredNetworksL(TRequestStatus& aReqStatus, CGsmNetworkList* aNetworkList) const=0;
	virtual void StorePreferredNetworksCancel() const=0;
	virtual void NotifyPreferredNetworksChanged(TRequestStatus& aReqStatus) const=0;
	virtual void NotifyPreferredNetworksChangedCancel() const=0;

	virtual TInt GetHomeNetworkInfo(RBasicGsmPhone::TNetworkInfo& aNetworkInfo) const=0;
	virtual void GetHomeNetworkInfo(TRequestStatus& aReqStatus, RBasicGsmPhone::TNetworkInfo& aNetworkInfo) const=0;
	virtual void GetHomeNetworkInfoCancel() const=0;

	//
	//	Interrogation of "Master list" of Networks stored on ME
	//

	virtual TInt EnumerateMasterListNetworks(TInt& aPhoneNetworks) const=0;
	virtual void EnumerateMasterListNetworks(TRequestStatus& aReqStatus, TInt& aPhoneNetworks) const=0;
	virtual void EnumerateMasterListNetworksCancel() const=0;

	virtual TInt GetMasterListNetworkInfo(const TInt aIndex, RBasicGsmPhone::TNetworkInfo& aNetworkInfo) const=0;
	virtual void GetMasterListNetworkInfo(TRequestStatus& aReqStatus, const TInt aIndex, RBasicGsmPhone::TNetworkInfo& aNetworkInfo) const=0;
	virtual void GetMasterListNetworkInfoCancel() const=0;

	virtual CGsmNetworkList* GetMultipleMasterNetworkInfoLC(const TInt aIndexFrom, const TInt aIndexTo)=0;

//
// Server/TSY internal struct
//
	struct TReadPositions
		{
		TUint iPosFrom;
		TUint iPosTo;
		};
	
	};

//
// Phone security - Lock settings, status and security events/actions
//

class MAdvGsmPhoneSecurity
	{
public:
//
// Access Phone Lock Functionality
//
	enum TLockType
		{
		ELockSIMCard,
		ELockPhoneDevice,	// A pass phrase that locks the phone
		ELockPhoneToSim		// Phone lock to Sim Card, requires pass phrase to lock/unlock
		};

	enum TLockCurrentStatus
		{
		EUnlocked,			// Lock is now open - user can access functionality governed by this lock
		ELocked				// Lock is now closed - user can not access functionality governed by this lock
		};

	enum TLockSetting
		{
		ELockDisabled,		// Lock is disabled, so its status is always unlocked
		ELockEnabled		// Lock is enabled, ( PIN code or password required to unlock the lock )
		};

	struct TLockInfo
		{
		TLockCurrentStatus	iStatus;
		TLockSetting 		iSetting;
		};

	struct TLockChangeSetting
		{
		TLockSetting 	iSetting;
		TGsmPassword 	iPassword;
		};

	virtual TInt GetLockInfo(const TLockType aType,TLockInfo& aLockInfo) const=0;
	virtual void GetLockInfo(TRequestStatus& aStatus, const TLockType aType,TLockInfo& aLockInfo) const=0;
	virtual void GetLockInfoCancel() const=0;

	virtual TInt ChangeLockSetting(const TLockType aType,const TLockChangeSetting& aLockSetting) const=0;
	virtual void ChangeLockSetting(TRequestStatus& aStatus, const TLockType aType,const TLockChangeSetting& aLockSetting) const=0;
	virtual void ChangeLockSettingCancel() const=0;

	virtual void NotifyLockInfoChanged(TRequestStatus& aReqStatus, TLockType& aLockType, TLockInfo& aLockInfo) const=0;
	virtual void NotifyLockInfoChangedCancel() const=0;

//
// Change Password
//

	enum TSecurityCodeType
		{
		ESecurityCodePin1,
		ESecurityCodePin2,
		ESecurityCodePassPhrase
		};

	virtual TInt ChangePassword(const TSecurityCodeType aType,const TGsmPassword& aOldPassword, const TGsmPassword& aNewPassword) const=0;
	virtual void ChangePassword(TRequestStatus& aReqStatus, const TSecurityCodeType aType, const TGsmPassword& aOldPassword,const TGsmPassword& aNewPassword) const=0;
	virtual void ChangePasswordCancel() const=0;

//
//  Security notifications
//
	enum TSecurityEvent
		{
		ENoSIMFound,
		ESimTerminated,
		EPin1Required,
		EPuk1Required,
		EPin2Required,
		EPuk2Required,
		EPassPhraseRequired,
		EPin1Verified,
		EPuk1Verified,
		EPin2Verified,
		EPuk2Verified,
		EPassPhraseVerified
		};

	virtual void NotifyOnSecurityEvent(TRequestStatus& aReqStatus, TSecurityEvent& aEvent) const=0;
	virtual void NotifyOnSecurityEventCancel() const=0;

//
// Unlock with Security Code
//
	virtual TInt SendSecurityCode(const TSecurityCodeType aCodeType, const TGsmPassword& aCode) const=0;
	virtual void SendSecurityCode(TRequestStatus& aReqStatus, const TSecurityCodeType aCodeType, const TGsmPassword& aCode) const=0;
	virtual void SendSecurityCodeCancel() const=0;

	virtual TInt AbortSecurityCode(const TSecurityCodeType aCodeType) const=0;
	virtual void AbortSecurityCode(TRequestStatus& aReqStatus, const TSecurityCodeType aCodeType) const=0;
	virtual void AbortSecurityCodeCancel() const=0;

//
// Unblock (and unlock) with PUK
//
	enum TUnblockCodeType
		{
		EUnblockCodePuk1,
		EUnblockCodePuk2
		};

	virtual TInt SendUnblockCode(const TUnblockCodeType aCodeType, const TGsmPassword& aUnblockCode, const TGsmPassword& aNewPin) const=0;
	virtual void SendUnblockCode(TRequestStatus& aReqStatus, const TUnblockCodeType aCodeType, const TGsmPassword& aUnblockCode, const TGsmPassword& aNewPin) const=0;
	virtual void SendUnblockCodeCancel() const=0;

	virtual TInt AbortUnblockCode(const TUnblockCodeType aCodeType) const=0;
	virtual void AbortUnblockCode(TRequestStatus& aReqStatus, const TUnblockCodeType aCodeType) const=0;
	virtual void AbortUnblockCodeCancel() const=0;

//
// Dynamic Phone Lock Caps
//
	enum TPhoneLockCaps
		{
		KCapsLockSim=0x00000001,
		KCapsLockPhoneDevice=0x00000002,
		KCapsLockPhoneToSim=0x00000004
		};

	struct TSecurityCapsFlags
		{
		TUint iPhoneLockCaps;
		};

	virtual TInt GetPhoneLockCaps(TSecurityCapsFlags& aCaps) const=0;
	virtual void NotifyPhoneLockCaps(TRequestStatus& aReqStatus, TSecurityCapsFlags& aCaps) const=0;
	virtual void NotifyPhoneLockCapsCancel() const=0;

//
// Server TSY internal definitions
//
public:
	struct TChangePassword
		{
		TSecurityCodeType iType;
		TGsmPassword iOldPassword;
		TGsmPassword iNewPassword;
		};

	struct TUnlockPIN
		{
		TUnblockCodeType iPukType;
		TGsmPassword iPuk;
		TGsmPassword iNewPin;
		};

	};

//
// Advice of Charge - information, updates and settings
//
class MAdvGsmPhoneAoC
	{
public:

	enum TAocType
		{
		EAocTypeUnknown,		// SIM & ME support AoC but no calls are in
								// progress so network support is unknown
		EAocTypeNotAvailable,	// Either call in progress but network does not support AoC
								// Or SIM/ME does not support AoC
		EAocTypeInformation,	// Call in progress - AoCI currently active
		EAocTypeCharging		// Call in progress - AoCC currently active
		};

	struct TPuct
		{
		TBuf<3> iCurrencyName;
		TReal	iPricePerUnit;
		};

	struct TAocSimInfo
		{
		TReal iAcm;
		TUint iAcmUnits;
		TReal iAcmMax;
		TUint iAcmMaxUnits;
		TPuct iPuct;
		};

	struct TAocDynamicInfo
		{
		TAocType iType;
		TReal iCcm;			// CCM is combined cost of all ongoing calls
		TUint iCcmUnits;					
		TReal iRemaining;	// remaining=ACMmax-ACM
		TUint iRemainingUnits;
		};

	enum TAocMeCaps
		{
		KCapsAocInformation=0x00000001,	// ME supports AoCI
		KCapsAocCharging=0x00000002,	// ME supports AoCC
		KCapsCallMeterUnits=0x00000004,	// ME supports the "unit" version of ACM, CCM and ACMmax
		KCapsCallMeterReal=0x00000008   // ME supports the "real" version of ACM, CCM and ACMmax
		};

	struct TAocCapsFlags
		{
		TUint iAocMeCaps;
		};

	// Resets ACM in the SIM to zero. 
	// Probably also resets CCM to zero and Remaining to its max level 
	virtual TInt ClearAcm() const=0;
	virtual void ClearAcm(TRequestStatus& aReqStatus) const=0;
	virtual void ClearAcmCancel() const=0;
	
	// Sets AcmMax in the SIM to the specified value. 
	// To conform to GSM 11.11, aAcmMax must always be greater than zero 
	virtual TInt SetAcmMax(const TReal aAcmMax) const=0;
	virtual void SetAcmMax(TRequestStatus& aReqStatus, const TReal aAcmMax) const=0;
	virtual TInt SetAcmMax(const TUint aChargingUnits) const=0;
	virtual void SetAcmMax(TRequestStatus& aReqStatus, const TUint aChargingUnits) const=0;
	virtual void SetAcmMaxCancel() const=0;
	
	// Sets PUCT in the SIM
	virtual TInt SetPuct(const TPuct& aPuctSetting) const=0;
	virtual void SetPuct(TRequestStatus& aReqStatus, const TPuct& aPuctSetting) const=0;
	virtual void SetPuctCancel() const=0;
	
	// Get snapshot of current AoC related data on the SIM 
	virtual TInt GetAocSimInfo(TAocSimInfo& aAocSimInfo) const=0;
	virtual void GetAocSimInfo(TRequestStatus& aReqStatus, TAocSimInfo& aAocSimInfo) const=0;
	virtual void GetAocSimInfoCancel() const=0;
	// Notification if AoC SIM data is changed by another client or by the TSY/ME
	virtual void NotifyAocSimInfoChanged(TRequestStatus& aReqStatus, TAocSimInfo& aAocInfo) const=0;
	virtual void NotifyAocSimInfoChangedCancel() const=0;

	// Dynamic AoC information that changes during a call 
	virtual TInt GetAocDynamicInfo(TAocDynamicInfo& aAocInfo) const=0;
	virtual void GetAocDynamicInfo(TRequestStatus& aReqStatus, TAocDynamicInfo& aAocInfo) const=0;
	virtual void GetAocDynamicInfoCancel() const=0;
	virtual void NotifyAocDynamicInfoChanged(TRequestStatus& aReqStatus, TAocDynamicInfo& aAocInfo) const=0;
	virtual void NotifyAocDynamicInfoChangedCancel() const=0;

	// Interrogate AoC capabilities - a summation of ME & SIM Aoc caps 
	virtual TInt GetAocCaps(TAocCapsFlags& aCaps) const=0;
	virtual void GetAocCaps(TRequestStatus& aReqStatus, TAocCapsFlags& aCaps) const=0; 
	virtual void GetAocCapsCancel() const=0;

	//
	//	Server internal structure
	//
	enum TWhichAcm
		{
		EAcmReal,
		EAcmUnits,
		};

	};

//
// Activate/Deactive Fixed Dialling Numbers
//
class MAdvGsmPhoneFdn
	{
public:
	enum TFdnModeGet
		{
		EFdnModeNotActive,
		EFdnModeActive,
		EFdnModePermanentlyActive,
		EFdnModeNotSupported,
		EFdnModeUnknown
		};

	enum TFdnModeSet
		{
		EFdnModeActivate,
		EFdnModeDeactivate
		};

	virtual TInt SetFdnMode(const TFdnModeSet aFdnMode) const=0;
	virtual void SetFdnMode(TRequestStatus& aReqStatus, const TFdnModeSet aFdnMode) const=0;
	virtual void SetFdnModeCancel() const=0;
	
	virtual TInt GetFdnMode(TFdnModeGet& aFdnMode) const=0;
	virtual void GetFdnMode(TRequestStatus& aReqStatus, TFdnModeGet& aFdnMode) const=0;
	virtual void GetFdnModeCancel() const=0;

	virtual void NotifyFdnModeChanged(TRequestStatus& aReqStatus, TFdnModeGet& aFdnMode) const=0;
	virtual void NotifyFdnModeChangedCancel() const=0;
	};

//
// Retrieve Total Air Time Duration
//
class MAdvGsmPhoneAirTimeDuration
	{
public:
	virtual TInt GetAirTimeDuration(TTimeIntervalSeconds& aTime) const=0;
	virtual void GetAirTimeDuration(TRequestStatus& aReqStatus, TTimeIntervalSeconds& aTime) const=0;
	virtual void GetAirTimeDurationCancel() const=0;

	virtual void NotifyAirTimeDurationChange(TRequestStatus& aReqStatus,TTimeIntervalSeconds& aTime) const=0;
	virtual void NotifyAirTimeDurationChangeCancel() const=0;
	};

//
// Call Forwarding on all lines - get/set call forwarding for "all basic services"
//

class MAdvGsmPhoneCallForwarding
	{
public:	
	virtual TInt GetCallForwardingInfo(const MAdvGsmLineForwarding::TCallForwardingReasonGet aReason, MAdvGsmLineForwarding::TCallForwardingInfo& aInfo,const RAdvGsmLine::TForwardingInfoLocation aLocation = RAdvGsmLine::EForwardingLocationCache) const=0;
	virtual void GetCallForwardingInfo(TRequestStatus& aReqStatus,const MAdvGsmLineForwarding::TCallForwardingReasonGet aReason, MAdvGsmLineForwarding::TCallForwardingInfo& aInfo,const RAdvGsmLine::TForwardingInfoLocation aLocation = RAdvGsmLine::EForwardingLocationCache) const=0;
	virtual void GetCallForwardingInfoCancel() const=0;
	virtual TInt SetCallForwardingInfo(const MAdvGsmLineForwarding::TCallForwardingReasonSet aReason, MAdvGsmLineForwarding::TCallForwardingChange& aInfo) const=0;
	virtual void SetCallForwardingInfo(TRequestStatus& aReqStatus,const MAdvGsmLineForwarding::TCallForwardingReasonSet aReason, MAdvGsmLineForwarding::TCallForwardingChange& aInfo) const=0;
	virtual void SetCallForwardingInfoCancel() const=0;
	virtual void CallForwardingStatusNotification(TRequestStatus& aReqStatus, MAdvGsmLineForwarding::TCallForwardingReasonGet& aReason,MAdvGsmLineForwarding::TCallForwardingInfo& aInfo) const=0;
	virtual void CallForwardingStatusNotificationCancel() const=0;
	};

//
// Call Barring on all lines - get/set call barring for "all basic services"
//

class MAdvGsmPhoneCallBarring
	{
public:	
	struct TChangeLockPassword
		{
		TBuf<KGsmPasswordSize> iOldPassword;
		TBuf<KGsmPasswordSize> iNewPassword;
		};

	virtual TInt ChangeBarringPassword(const TChangeLockPassword& aPasswords) const=0;
	virtual void ChangeBarringPassword(TRequestStatus& aReqStatus, const TChangeLockPassword& aPasswords) const=0;
	virtual void ChangeBarringPasswordCancel() const=0;

	virtual TInt GetCallBarringMode(const MAdvGsmLineBarring::TBarringType aType, MAdvGsmLineBarring::TBarringMode& aMode, MAdvGsmLineBarring::TBarringModeLocation aLocation = RAdvGsmLine::EBarringLocationCache) const=0;
	virtual void GetCallBarringMode(TRequestStatus& aReqStatus,const MAdvGsmLineBarring::TBarringType aType, MAdvGsmLineBarring::TBarringMode& aMode, MAdvGsmLineBarring::TBarringModeLocation aLocation = RAdvGsmLine::EBarringLocationCache) const=0;
	virtual void GetCallBarringModeCancel() const=0;
	virtual TInt SetCallBarringMode(const MAdvGsmLineBarring::TBarringType aType,const MAdvGsmLineBarring::TChangeBarringMode& aMode) const=0;
	virtual void SetCallBarringMode(TRequestStatus& aReqStatus,const MAdvGsmLineBarring::TBarringType aType,const MAdvGsmLineBarring::TChangeBarringMode& aMode) const=0;
	virtual void SetCallBarringModeCancel() const=0;
	virtual void CallBarringModeNotification(TRequestStatus& aReqStatus, MAdvGsmLineBarring::TBarringType& aType, MAdvGsmLineBarring::TBarringMode& aMode) const=0;
	virtual void CallBarringModeNotificationCancel() const=0;
	};

//
// Call Waiting on all lines - get/set call waiting for "all basic services"
//

class MAdvGsmPhoneCallWaiting
	{

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -