📄 etelagsm.h
字号:
struct TCallMeter
{
TUint iCallMeterUnits;
TReal iCallMeter;
};
// Returns just the cost of this particular call, adjusted to chosen currency
// using the current PUCT setting
virtual TInt GetCallMeter(TCallMeter& aCost) const=0;
virtual void GetCallMeter(TRequestStatus& status, TCallMeter& aCost) const=0;
virtual void GetCallMeterCancel() const=0;
// Notification for increasing call cost.
virtual void NotifyCallMeterChanged(TRequestStatus& status, TCallMeter& aCost) const=0;
virtual void NotifyCallMeterChangedCancel() const=0;
};
//
// Completion of Calls to Busy Subscriber
//
class MAdvGsmCallCCBS
{
public:
virtual TInt ActivateCCBS() const=0;
virtual void ActivateCCBS(TRequestStatus& aReqStatus) const=0;
virtual void ActivateCCBSCancel() const=0;
virtual TInt RejectCCBS() const=0;
virtual void RejectCCBS(TRequestStatus& aReqStatus) const=0;
virtual void RejectCCBSCancel() const=0;
virtual TInt DeactivateCCBS() const=0;
virtual void DeactivateCCBS(TRequestStatus& aReqStatus) const=0;
virtual void DeactivateCCBSCancel() const=0;
virtual TInt AcceptCCBSRecall() const=0;
virtual void AcceptCCBSRecall(TRequestStatus& aReqStatus) const=0;
virtual void AcceptCCBSRecallCancel() const=0;
};
//
// Alternating Call Mode
//
class MAdvGsmCallAlternatingCallMode
{
public:
enum TAltCallMode
{
EAltCallModeSingle,
EAltCallModeVoiceFax,
EAltCallModeVoiceData,
EAltCallModeVoiceThenData
};
virtual TInt SetAlternatingCallMode(const TAltCallMode aMode) const=0;
virtual TInt GetAlternatingCallMode(TAltCallMode& aMode) const=0;
virtual void NotifyAlternatingCallModeChanged(TRequestStatus& aReqStatus, TAltCallMode& aAltCallMode) const=0;
virtual void NotifyAlternatingCallModeChangedCancel() const=0;
virtual void WaitForCallModeSwitch(TRequestStatus& aReqStatus) const=0;
virtual void WaitForCallModeSwitchCancel() const=0;
virtual TInt SwitchCallMode() const=0;
virtual void SwitchCallMode(TRequestStatus& aReqStatus) const=0;
virtual void SwitchCallModeCancel() const=0;
virtual void NotifyRemoteCallModeSwitch(TRequestStatus& aReqStatus) const=0;
virtual void NotifyRemoteCallModeSwitchCancel() const=0;
};
//
// Emergency call
//
class MAdvGsmCallEmergencyCall
{
public:
virtual TInt MakeEmergencyCall() const=0;
virtual void MakeEmergencyCall(TRequestStatus& aReqStatus) const=0;
virtual void MakeEmergencyCallCancel() const=0;
};
//
//
// RAdvGsmCall
//
//
class CAdvCallPtrHolder;
class RAdvGsmCall : public RBasicGsmCall, public MAdvGsmCallControl, public MAdvGsmCallInformation,
public MAdvGsmCallAoC, public MAdvGsmCallCCBS,
public MAdvGsmCallAlternatingCallMode, public MAdvGsmCallEmergencyCall
{
public:
IMPORT_C RAdvGsmCall();
//
// Gsm Call Parameters
//
struct TTempCug
{
TBool iExplicitInvoke;
TInt iCugIndex;
TBool iSuppressOA;
TBool iSuppressPrefCug;
};
enum TTempClir
{
EDefault,
ESendCLI,
EDontSendCLI
};
class TCallParams : public RBasicGsmCall::TCallParams
{
public:
IMPORT_C TCallParams();
IMPORT_C TCallParams(const TTempCug& aTempCug, const TTempClir aTempClir);
TTempCug iTempCug;
TTempClir iTempClir;
};
typedef TPckg<TCallParams> TCallParamsPckg;
//
// General notification information
//
class TCallInfo : public RBasicGsmCall::TCallInfo
{
public:
TInt iCallId;
TGsmStatus iGsmStatus;
TCallEvent iCallEvent;
TCallGroupBelongedTo iCallGroup;
TAltCallMode iAltCallMode;
TBool iEmergencyCall;
TBool iAutoRetryCall;
TBool iForwardedCall;
TInt iLastExitCode;
TGsmDateTime iCallStartTime;
TRemotePartyInfo iRemotePartyInfo;
TDialledNumberInfo iDialledInfo;
TBuf<KMaxDTMFSize> iDTMF;
TBuf<KMaxSSPrefixStringSize> iSSString;
TCallMeter iCallMeter;
TBool iCcbsActive;
public:
IMPORT_C TCallInfo();
};
// Get a snapshot of all the current call information
IMPORT_C TInt GetInfoAdvGsm(TCallInfo& aCallInfo) const;
IMPORT_C void GetInfoAdvGsm(TRequestStatus& aReqStatus, TCallInfo& aCallInfo) const;
IMPORT_C void GetInfoAdvGsmCancel() const;
// Individual notifications
IMPORT_C TInt GetGsmStatus(TGsmStatus& aCallStatus) const;
IMPORT_C void NotifyGsmStatusChange(TRequestStatus& aReqStatus, TGsmStatus& aCallStatus) const;
IMPORT_C void NotifyGsmStatusChangeCancel() const;
IMPORT_C void EventNotification(TRequestStatus& aReqStatus, TCallEvent& aEvent) const;
IMPORT_C void EventNotificationCancel() const;
IMPORT_C TInt Hold() const;
IMPORT_C void Hold(TRequestStatus& aReqStatus) const;
IMPORT_C void HoldCancel() const;
IMPORT_C TInt ToggleHold() const;
IMPORT_C void ToggleHold(TRequestStatus& aReqStatus) const;
IMPORT_C void ToggleHoldCancel() const;
IMPORT_C TInt Resume() const;
IMPORT_C void Resume(TRequestStatus& aReqStatus) const;
IMPORT_C void ResumeCancel() const;
IMPORT_C TInt DeflectCall(const TGsmTelNumber& aNumber) const;
IMPORT_C void DeflectCall(TRequestStatus& aReqStatus, const TGsmTelNumber& aNumber) const;
IMPORT_C void DeflectCallCancel() const;
IMPORT_C TInt GoOneToOne() const;
IMPORT_C void GoOneToOne(TRequestStatus& aReqStatus) const;
IMPORT_C void GoOneToOneCancel() const;
IMPORT_C TInt ExplicitCallTransfer() const;
IMPORT_C void ExplicitCallTransfer(TRequestStatus& aReqStatus) const;
IMPORT_C void ExplicitCallTransferCancel() const;
IMPORT_C TInt GetGsmCallControlCaps(TCallControlCapsFlags& aCaps) const;
IMPORT_C void NotifyGsmCallControlCaps(TRequestStatus& aReqStatus, TCallControlCapsFlags& aCaps) const;
IMPORT_C void NotifyGsmCallControlCapsCancel() const;
IMPORT_C TInt GetCallId(TInt& aId) const;
IMPORT_C void GetCallId(TRequestStatus& aReqStatus, TInt& aId) const;
IMPORT_C void GetCallIdCancel() const;
IMPORT_C void NotifyCallIdChanged(TRequestStatus& aReqStatus, TInt& aId) const;
IMPORT_C void NotifyCallIdChangedCancel() const;
IMPORT_C TInt GetCallStartTime(TGsmDateTime& aStartTime) const;
IMPORT_C void GetCallStartTime(TRequestStatus& aReqStatus, TGsmDateTime& aStartTime) const;
IMPORT_C void GetCallStartTimeCancel() const;
IMPORT_C TInt GetCallGroup(TCallGroupBelongedTo& aCallGroup) const;
IMPORT_C void GetCallGroup(TRequestStatus& aReqStatus, TCallGroupBelongedTo& aCallGroup) const;
IMPORT_C void GetCallGroupCancel() const;
IMPORT_C void NotifyCallGroupChanged(TRequestStatus& aReqStatus, TCallGroupBelongedTo& aCallGroup) const;
IMPORT_C void NotifyCallGroupChangedCancel() const;
IMPORT_C TInt GetSSStringPrefix(TDes& aSSString) const;
IMPORT_C void GetSSStringPrefix(TRequestStatus& aReqStatus, TDes& aSSString) const;
IMPORT_C void GetSSStringPrefixCancel() const;
IMPORT_C TInt GetDTMFInDialString(TDes& aDTMFString) const;
IMPORT_C void GetDTMFInDialString(TRequestStatus& aReqStatus, TDes& aDTMFString) const;
IMPORT_C void GetDTMFInDialStringCancel() const;
IMPORT_C TInt GetRemotePartyInfo(TRemotePartyInfo& aRemotePartyInfo) const;
IMPORT_C void GetRemotePartyInfo(TRequestStatus& aReqStatus, TRemotePartyInfo& aRemotePartyInfo) const;
IMPORT_C void GetRemotePartyInfoCancel() const;
IMPORT_C void NotifyRemotePartyInfoChanged(TRequestStatus& aReqStatus, TRemotePartyInfo& aRemotePartyInfo) const;
IMPORT_C void NotifyRemotePartyInfoChangedCancel() const;
IMPORT_C TInt GetDialledNumberInfo(TDialledNumberInfo& aDialledInfo) const;
IMPORT_C void GetDialledNumberInfo(TRequestStatus& aReqStatus, TDialledNumberInfo& aDialledInfo) const;
IMPORT_C void GetDialledNumberInfoCancel() const;
IMPORT_C TInt GetLastExitCode(TInt& iLastExitCode) const;
IMPORT_C void GetLastExitCode(TRequestStatus& aReqStatus, TInt& iLastExitCode) const;
IMPORT_C void GetLastExitCodeCancel() const;
IMPORT_C TInt GetEmergencyCallFlag(TBool& aEmergencyCallFlag) const;
IMPORT_C TInt GetAutoRetryCallFlag(TBool& aAutoRetryCallFlag) const;
IMPORT_C TInt GetForwardedCallFlag(TBool& aForwardedCallFlag) const;
IMPORT_C TInt GetCcbsActiveFlag(TBool& aCcbsActive) const;
IMPORT_C TInt GetCallInformationCaps(TCallInformationCapsFlags& aCaps) const;
IMPORT_C TInt GetEncryptionStatus(TEncryptionStatus& aStatus) const;
IMPORT_C void GetEncryptionStatus(TRequestStatus& aReqStatus, TEncryptionStatus& aStatus) const;
IMPORT_C void GetEncryptionStatusCancel() const;
IMPORT_C void NotifyEncryptionStatusChanged(TRequestStatus& aReqStatus, TEncryptionStatus& aStatus) const;
IMPORT_C void NotifyEncryptionStatusChangedCancel() const;
IMPORT_C TInt GetCallMeter(TCallMeter& aCost) const;
IMPORT_C void GetCallMeter(TRequestStatus& status, TCallMeter& aCost) const;
IMPORT_C void GetCallMeterCancel() const;
IMPORT_C void NotifyCallMeterChanged(TRequestStatus& status, TCallMeter& aCost) const;
IMPORT_C void NotifyCallMeterChangedCancel() const;
IMPORT_C TInt ActivateCCBS() const;
IMPORT_C void ActivateCCBS(TRequestStatus& aReqStatus) const;
IMPORT_C void ActivateCCBSCancel() const;
IMPORT_C TInt RejectCCBS() const;
IMPORT_C void RejectCCBS(TRequestStatus& aReqStatus) const;
IMPORT_C void RejectCCBSCancel() const;
IMPORT_C TInt DeactivateCCBS() const;
IMPORT_C void DeactivateCCBS(TRequestStatus& aReqStatus) const;
IMPORT_C void DeactivateCCBSCancel() const;
IMPORT_C TInt AcceptCCBSRecall() const;
IMPORT_C void AcceptCCBSRecall(TRequestStatus& aReqStatus) const;
IMPORT_C void AcceptCCBSRecallCancel() const;
IMPORT_C TInt SetAlternatingCallMode(const TAltCallMode aMode) const;
IMPORT_C TInt GetAlternatingCallMode(TAltCallMode& aMode) const;
IMPORT_C void NotifyAlternatingCallModeChanged(TRequestStatus& aReqStatus, TAltCallMode& aAltCallMode) const;
IMPORT_C void NotifyAlternatingCallModeChangedCancel() const;
IMPORT_C void WaitForCallModeSwitch(TRequestStatus& aReqStatus) const;
IMPORT_C void WaitForCallModeSwitchCancel() const;
IMPORT_C TInt SwitchCallMode() const;
IMPORT_C void SwitchCallMode(TRequestStatus& aReqStatus) const;
IMPORT_C void SwitchCallModeCancel() const;
IMPORT_C void NotifyRemoteCallModeSwitch(TRequestStatus& aReqStatus) const;
IMPORT_C void NotifyRemoteCallModeSwitchCancel() const;
IMPORT_C TInt MakeEmergencyCall() const;
IMPORT_C void MakeEmergencyCall(TRequestStatus& aReqStatus) const;
IMPORT_C void MakeEmergencyCallCancel() const;
private:
CAdvCallPtrHolder* iAdvPtrHolder;
protected:
IMPORT_C virtual void ConstructL();
IMPORT_C virtual void Destruct();
};
//
// Automatic Retry of Dialled Number
//
class MAdvGsmLineAutoRetry
{
public:
virtual void AutoRetry(TRequestStatus& aReqStatus, const TGsmTelNumber& aTelNumber, TName& aNewCallName)const=0;
virtual void AutoRetryCancel() const=0;
};
//
// Advanced Line information
//
class MAdvGsmLineStatusAndCallInfo
{
public:
enum TAdvGsmLineStatus
{
EGsmStatusUnknown,
EGsmStatusIdle,
EGsmStatusDialing,
EGsmStatusRinging,
EGsmStatusAnswering,
EGsmStatusConnecting,
EGsmStatusConnected,
EGsmStatusHangingUp,
EGsmStatusHold
};
virtual TInt GetAdvGsmLineStatus(TAdvGsmLineStatus& aReqStatus) const=0;
virtual void NotifyAdvGsmLineStatusChange(TRequestStatus& aReqStatus,TAdvGsmLineStatus& aInfo) const=0;
virtual void NotifyAdvGsmLineStatusChangeCancel() const=0;
struct TAdvGsmCallInfo
{
TName iCallName;
RAdvGsmCall::TGsmStatus iGsmStatus;
RAdvGsmCall::TCallControlCapsFlags iAdvCallCaps;
RAdvGsmCall::TAltCallMode iAlternatingCallMode;
};
virtual TInt GetAdvGsmCallInfo(const TInt aIndex,TAdvGsmCallInfo& aCallInfo) const=0;
// Advanced line caps defined so that client can check if line is voice or voice 2
// Offset added so that core & adv line caps can be returned in one TUInt
enum TAdvGsmLineCaps
{
KCapsAuxVoice=0x00000008
};
virtual TInt GetAdvGsmLineCaps(RLine::TCaps& aAdvGsmLineCaps) const=0;
struct TAdvGsmLineInfo
{
TName iLineName;
TAdvGsmLineStatus iLineStatus;
RLine::TCaps iAdvLineCaps;
};
};
//
// Call Barring on individual lines
//
class MAdvGsmLineBarring
{
public:
enum TBarringMode
{
EBarringModeActive, // barring program is currently active
EBarringModeNotActive, // barring program is provisioned but not active
EBarringModeNotProvisioned, // barring program is not provisioned
EBarringModeUnavailable, // barring program is not available in serving PLMN
EBarringModeUnknown // status of barring program can not be determined
}; // It could be one of the following
// 1. Not provisioned
// 2. Provisioned but not active
enum TBarringType
{
EBarringTypeAllOutgoingCall,
EBarringTypeOutgoingInternational,
EBarringTypeOutgoingExceptToHomeCountry,
EBarringTypeAllIncomingCall,
EBarringTypeIncomingCallWhenRoamingOutsideHomeCountry,
EBarringTypeIncomingCallNotStoreInTAmemory,
EBarringTypeIncomingCallNotStoreInMEmemory,
EBarringTypeIncomingCallNotStoreInSIMmemory,
EBarringTypeIncomingCallNotStoreInAnymemory,
EBarringTypeAllBarringServices,
EBarringTypeAllOutgoingServices,
EBarringTypeAllIncomingServices
};
enum TBarringSetting
{
EBarringActivate,
EBarringDeactivate
};
struct TChangeBarringMode
{
TBarringSetting iSetting;
TBuf<KGsmPasswordSize> iPassword;
};
enum TBarringModeLocation
{
EBarringLocationCache,
EBarringLocationCachePreferred,
EBarringLocationNetwork
};
virtual TInt GetBarringMode(const TBarringType aType ,TBarringMode& aMode, const TBarringModeLocation aLocation = EBarringLocationCache) const=0;
virtual void GetBarringMode(TRequestStatus& aReqStatus, const TBarringType aType, TBarringMode& aMode,const TBarringModeLocation aLocation = EBarringLocationCache) const=0;
virtual void GetBarringModeCancel() const=0;
virtual TInt SetBarringMode(const TBarringType aType, const TChangeBarringMode& aMode) const=0;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -