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

📄 ex_etelmm.h

📁 symbian 2rd下可以获取并显示来电号码
💻 H
📖 第 1 页 / 共 5 页
字号:
		EIncomingUUSNotSpecified,
		EIncomingUUSAccepted,
		EIncomingUUSRejected
		};

	IMPORT_C void GetUUSSetting(TRequestStatus& aReqStatus, TMobilePhoneUUSSetting& aSetting) const;
	IMPORT_C void SetUUSSetting(TRequestStatus& aReqStatus, TMobilePhoneUUSSetting aSetting) const;
	IMPORT_C void NotifyUUSSettingChange(TRequestStatus& aReqStatus, TMobilePhoneUUSSetting& aSetting) const;

private:
	CMobilePhonePtrHolder* iMmPtrHolder;
	RMobilePhone(const RMobilePhone& aPhone);
protected:
	IMPORT_C void ConstructL();
	IMPORT_C void Destruct();
	};

/*********************************************************/
//
// Phone Storage functionality (RMobilePhoneStore)
//
/*********************************************************/

/**
 * \class RMobilePhoneStore ETELMM.H "INC/ETELMM.H"
 * \brief Abstract class used to define common phone storage actions & types
 *
 * RMobilePhoneStore inherits from RTelSubSessionBase defined in ETEL.H
 * Clients open one of the specialised phone store classes that are derived from RMobilePhoneStore
 */

class CMobilePhoneStorePtrHolder;
class RMobilePhoneStore : public RTelSubSessionBase
	{
public:
	friend class CAsyncRetrieveStoreList;

	enum TMobilePhoneStoreType
		{
		EPhoneStoreTypeUnknown,
		EShortMessageStore,
		ENamStore,
		EPhoneBookStore,
		EEmergencyNumberStore,
		EOwnNumberStore
		};

	enum TMobilePhoneStoreCaps
		{
		KCapsWholeStore			= 0x80000000,
		KCapsIndividualEntry	= 0x40000000,
		KCapsReadAccess			= 0x20000000,
		KCapsWriteAccess		= 0x10000000,
		KCapsDeleteAll			= 0x08000000,
		KCapsNotifyEvent		= 0x04000000
		};

	enum TMobilePhoneStoreInfoExtId
		{
		KETelMobilePhoneStoreV1=KETelExtMultimodeV1,
		KETelMobilePhonebookStoreV1,
		KETelMobileSmsStoreV1,
		KETelMobileNamStoreV1,
		KETelMobileONStoreV1,
		KETelMobileENStoreV1
		};

	/**
	* \class TMobilePhoneStoreInfoV1 ETELMM.H "INC/ETELMM.H"
	* \brief Defines information and capabilities of a phone-side store
	*
	*/

	class TMobilePhoneStoreInfoV1 : public RMobilePhone::TMultimodeType
		{
	public:
		IMPORT_C TMobilePhoneStoreInfoV1();

		TMobilePhoneStoreType		iType;
		TInt						iTotalEntries;
		TInt						iUsedEntries;
		TUint32						iCaps;
		RMobilePhone::TMobileName	iName;
		};

	typedef TPckg<TMobilePhoneStoreInfoV1> TMobilePhoneStoreInfoV1Pckg;

	/**
	* \class TMobilePhoneStoreEntryV1 ETELMM.H "INC/ETELMM.H"
	* \brief Defines common contents of an entry in a phone-side store
	*
	*/

	class TMobilePhoneStoreEntryV1 : public RMobilePhone::TMultimodeType
		{
	public:

		enum
			{
			KIndexNotUsed = -1
			};

	protected:
		TMobilePhoneStoreEntryV1();
	public:
		void InternalizeL(RReadStream& aStream);
		void ExternalizeL(RWriteStream& aStream) const;
	public:
		TInt  iIndex;
		};

	IMPORT_C void GetInfo(TRequestStatus& aReqStatus, TDes8& aInfo) const;

	IMPORT_C void Read(TRequestStatus& aReqStatus, TDes8& aEntry) const;
	IMPORT_C void Write(TRequestStatus& aReqStatus, TDes8& aEntry) const;

	IMPORT_C void Delete(TRequestStatus& aReqStatus, TInt aIndex) const;
	IMPORT_C void DeleteAll(TRequestStatus& aReqStatus) const;

	enum TMobileStoreEvent
		{
		KStoreFull =0x00000001,
		KStoreHasSpace =0x00000002,
		KStoreEmpty =0x00000004,
		KStoreEntryAdded =0x00000008,
		KStoreEntryDeleted =0x00000010,
		KStoreEntryChanged =0x00000020,
		KStoreDoRefresh =0x00000040
		};

	IMPORT_C void NotifyStoreEvent(TRequestStatus& aReqStatus, TUint32& aEvent, TInt& aIndex) const;

protected:
	CMobilePhoneStorePtrHolder* iStorePtrHolder;

protected:
	RMobilePhoneStore();
	IMPORT_C void BaseConstruct(CMobilePhoneStorePtrHolder* aPtrHolder);
	IMPORT_C void Destruct();
	};


/*********************************************************/
//
// Call based functionality (RMobileCall)
// 
/*********************************************************/

/**
 * \class RMobileCall ETELMM.H "INC/ETELMM.H"
 * \brief Provides client access to mobile call functionality provided by TSY
 *
 * RMobileCall inherits from RCall defined in ETEL.H
 */

class CMobileCallPtrHolder;

class RMobileCall : public RCall
	{
public:
	IMPORT_C RMobileCall();

	//
	//  Mobile call parameters - used within Dial/Answer API
	// 

	// used to set iExtensionId in RCall::TCallParams
	enum TMobileCallParamsExtensionId
		{
		KETelMobileCallParamsV1=KETelExtMultimodeV1,
		KETelMobileDataCallParamsV1,
		KETelMobileHscsdCallParamsV1
		};

	enum TMobileCallIdRestriction
		{
		EIdRestrictDefault,
		ESendMyId,
		EDontSendMyId
		};

	class TMobileCallCugV1 : public RMobilePhone::TMultimodeType
		{
	public:
		IMPORT_C TMobileCallCugV1();
	public:
		TBool	iExplicitInvoke;
		TInt	iCugIndex;
		TBool	iSuppressOA;
		TBool	iSuppressPrefCug;
		};

	/**
	* \class TMobileCallParamsV1 ETELMM.H "INC/ETELMM.H"
	* \brief Defines the parameters used for set-up of a call of any type
	*
	*/

	class TMobileCallParamsV1 : public RCall::TCallParams 
		{
	public:
		IMPORT_C TMobileCallParamsV1();
	public:
		TMobileCallIdRestriction iIdRestrict;
		TMobileCallCugV1 iCug;
		TBool iAutoRedial;
		};

	typedef TPckg<TMobileCallParamsV1> TMobileCallParamsV1Pckg;

	//
	// Mobile Call Data Functional Unit
	//

	enum TMobileCallDataSpeedCaps
		{
		KCapsSpeedAutobauding = 0x00000001,
		KCapsSpeed2400  = 0x00000002,
		KCapsSpeed4800  = 0x00000004,
		KCapsSpeed9600  = 0x00000008,
		KCapsSpeed14400 = 0x00000010,
		KCapsSpeed19200 = 0x00000020,
		KCapsSpeed28800 = 0x00000040,
		KCapsSpeed32000 = 0x00000080,
		KCapsSpeed33600 = 0x00000100,
		KCapsSpeed38400 = 0x00000200,
		KCapsSpeed43200 = 0x00000400,
		KCapsSpeed48000 = 0x00000800,
		KCapsSpeed56000 = 0x00001000,
		KCapsSpeed57600 = 0x00002000,
		KCapsSpeed64000 = 0x00004000,
		KCapsSpeedExtended = 0x80000000		
		};

	enum TMobileCallDataProtocolCaps
		{
		KCapsProtocolV22bis = 0x00000001,
		KCapsProtocolV32 = 0x00000002,
		KCapsProtocolV34 = 0x00000004,
		KCapsProtocolV110 = 0x00000008,
		KCapsProtocolV120 = 0x00000010,
		KCapsProtocolBitTransparent = 0x00000020,
		KCapsProtocolX31FlagStuffing = 0x00000040,
		KCapsProtocolPIAFS = 0x00000080,
		KCapsPstnMultimediaVoiceFallback = 0x00000100,
		KCapsPstnMultimedia = 0x00000200,
		KCapsIsdnMultimedia = 0x00000400,
		KCapsProtocolExtended = 0x80000000
		};

	enum TMobileCallDataServiceCaps
		{
		KCapsDataCircuitAsynchronous = 0x00000001,
		KCapsDataCircuitAsynchronousRDI = 0x00000002,
		KCapsDataCircuitSynchronous = 0x00000004,
		KCapsDataCircuitSynchronousRDI = 0x00000008,
		KCapsPADAsyncUDI = 0x00000010,
		KCapsPADAsyncRDI = 0x00000020,
		KCapsPacketAccessSyncUDI = 0x00000040,
		KCapsPacketAccessSyncRDI = 0x00000080,
		KCapsServiceExtended = 0x80000000
		};

	enum TMobileCallDataQoSCaps
		{
		KCapsTransparent = 0x00000001,
		KCapsNonTransparent = 0x00000002,
		KCapsTransparentPreferred = 0x00000004,
		KCapsNonTransparentPreferred = 0x00000008
		};

	enum TMobileCallAiurCodingCaps
		{
		KCapsAiurCoding48 = 0x01,
		KCapsAiurCoding96 = 0x04,
		KCapsAiurCoding144 = 0x08
		};

	enum TMobileCallTchCodingsCaps
		{
		KCapsTchCoding48  = 0x00000001,
		KCapsTchCoding96  = 0x00000004,
		KCapsTchCoding144 = 0x00000008,
		KCapsTchCoding288 = 0x00000010,
		KCapsTchCoding320 = 0x00000020,
		KCapsTchCoding432 = 0x00000040
		};

	enum TMobileCallAsymmetryCaps
		{
		KCapsAsymmetryNoPreference= 0x00000001,
		KCapsAsymmetryDownlink = 0x00000002,
		KCapsAsymmetryUplink = 0x00000004
		};

	enum TMobileCallRLPVersionCaps
		{
		KCapsRLPSingleLinkVersion0 = 0x00000001,
		KCapsRLPSingleLinkVersion1 = 0x00000002,
		KCapsRLPMultiLinkVersion2  = 0x00000004
		};

	enum TMobileCallV42bisCaps
		{
		KCapsV42bisTxDirection = 0x00000001,
		KCapsV42bisRxDirection = 0x00000002,
		KCapsV42bisBothDirections = 0x00000004
		};

	/**
	* \class TMobileCallDataCapsV1 ETELMM.H "INC/ETELMM.H"
	* \brief Defines the capabilities of a circuit switched data call
	*
	*/

	class TMobileCallDataCapsV1 : public RMobilePhone::TMultimodeType
		{
	public:
		IMPORT_C TMobileCallDataCapsV1();
	public:
		TUint32	iSpeedCaps;
		TUint32	iProtocolCaps;
		TUint32	iServiceCaps;
		TUint32	iQoSCaps;
		TBool	iHscsdSupport;
		TInt	iMClass;
		TInt	iMaxRxTimeSlots;
		TInt	iMaxTxTimeSlots;
		TInt	iTotalRxTxTimeSlots;
		TUint32	iCodingCaps;
		TUint32 iAsymmetryCaps;
		TBool 	iUserInitUpgrade;
		TUint32	iRLPVersionCaps;
		TUint32	iV42bisCaps;
		};

	typedef TPckg<TMobileCallDataCapsV1> TMobileCallDataCapsV1Pckg;

	IMPORT_C TInt GetMobileDataCallCaps(TDes8& aCaps) const;
	IMPORT_C void NotifyMobileDataCallCapsChange(TRequestStatus& aReqStatus, TDes8& aCaps) const;

	enum TMobileCallDataSpeed
		{
		ESpeedUnspecified,
		ESpeedAutobauding,
		ESpeed2400,
		ESpeed4800,
		ESpeed9600,
		ESpeed14400,
		ESpeed19200,
		ESpeed28800,
		ESpeed32000,
		ESpeed33600,
		ESpeed38400,
		ESpeed43200,
		ESpeed48000,
		ESpeed56000,
		ESpeed57600,
		ESpeed64000
		};

	enum TMobileCallDataProtocol
		{
		EProtocolUnspecified,
		EProtocolV22bis,
		EProtocolV32,
		EProtocolV34,
		EProtocolV110,
		EProtocolV120,
		EProtocolX31FlagStuffing,
		EProtocolPIAFS,
		EProtocolBitTransparent,
		EProtocolPstnMultimediaVoiceFallback,
		EProtocolPstnMultimedia,
		EProtocolIsdnMultimedia
		};

	enum TMobileCallDataService
		{
		EServiceUnspecified,
		EServiceDataCircuitAsync,
		EServiceDataCircuitAsyncRdi,
		EServiceDataCircuitSync,
		EServiceDataCircuitSyncRdi,
		EServicePADAsyncUDI,
		EServicePADAsyncRDI,
		EServicePacketAccessSyncUDI,
		EServicePacketAccessSyncRDI
		};

	enum TMobileCallDataQoS
		{
		EQoSUnspecified,
		EQoSTransparent,
		EQoSNonTransparent,
		EQosTransparentPreferred,
		EQosNonTransparentPreferred
		};

	enum TMobileCallDataRLPVersion
		{
		ERLPNotRequested,
		ERLPSingleLinkVersion0,
		ERLPSingleLinkVersion1,
		ERLPMultiLinkVersion2
		};

	enum TMobileCallDataV42bis
		{
		EV42bisNeitherDirection,
		EV42bisTxDirection,
		EV42bisRxDirection,
		EV42bisBothDirections
		};

	
	/**
	* \class TMobileDataCallParamsV1 ETELMM.H "INC/ETELMM.H"
	* \brief Defines the parameters used for setup of a circuit switched data call
	*
	*/

	class TMobileDataCallParamsV1 : public TMobileCallParamsV1
		{
	public:
		IMPORT_C TMobileDataCallParamsV1();
	public:
		TMobileCallDataService iService;
		TMobileCallDataSpeed iSpeed;
		TMobileCallDataProtocol iProtocol;
		TMobileCallDataQoS iQoS;
		TMobileCallDataRLPVersion iRLPVersion;
		TInt iModemToMSWindowSize;
		TInt iMSToModemWindowSize;
		TInt iAckTimer;
		TInt iRetransmissionAttempts;
		TInt iResequencingPeriod;
		TMobileCallDataV42bis iV42bisReq;
		TInt iV42bisCodewordsNum;
		TInt iV42bisMaxStringLength;
		TBool iUseEdge; // True for ECSD
		};

	typedef TPckg<TMobileDataCallParamsV1> TMobileDataCallParamsV1Pckg;

	enum TMobileCallAiur
		{
		EAiurBpsUnspecified,
		EAiurBps9600,
		EAiurBps14400,
		EAiurBps19200,
		EAiurBps28800,
		EAiurBps38400,
		EAiurBps43200,
		EAiurBps57600
		};

	enum TMobileCallAsymmetry
		{
		EAsymmetryNoPreference,
		EAsymmetryDownlink,
		EAsymmetryUplink
		};

	enum TMobileCallTchCoding
		{
		ETchCodingUnspecified,
		ETchCoding48,
		ETchCoding96,
		ETchCoding144,
		ETchCoding288,
		ETchCoding320,
		ETchCoding432
		};

	/**
	* \class TMobileDataRLPRangesV1 ETELMM.H "INC/ETELMM.H"
	* \brief Defines the parameters for minimum and maximum RLP parameter ranges 
	*
	*/

	class TMobileDataRLPRangesV1 : public RMobilePhone::TMultimodeType
		{
	public:
		IMPORT_C TMobileDataRLPRangesV1();
	public:
		TInt  iIWSMax;
		TInt  iIWSMin;
		TInt  iMWSMax;
		TInt  iMWSMin;
		TInt  iT1Max;
		TInt  iT1Min;
		TInt  iN2Max;
		TInt  iN2Min;
		TInt  iT4Max;
		TInt  iT4Min;
		};

	typedef TPckg<TMobileDataRLPRangesV1> TMobileDataRLPRangesV1Pckg;

	IMPORT_C void GetMobileDataCallRLPRange(TRequestStatus& aReqStatus, TInt aRLPVersion, TDes8& aRLPRange) const;

⌨️ 快捷键说明

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