00001
00011 #ifndef __GOBI_API_CBK_H__
00012 #define __GOBI_API_CBK_H__
00013
00014 #ifdef __cplusplus
00015 extern "C" {
00016 #endif
00017
00018 #include "qaGobiApiNas.h"
00019 #include "qaGobiApiVoice.h"
00020 #include "qaGobiApiSms.h"
00021 #include "qaGobiApiUim.h"
00022 #include "qaGobiApiQos.h"
00023
00024 #define SIGSTRENGTH_THRESHOLD_ARR_SZ 5
00025 #define QMI_WMS_MAX_PAYLOAD_LENGTH 256
00026 #define QMI_MAX_VOICE_NUMBER_LENGTH 81
00027 #define MAX_NO_OF_UUSINFO 20
00028 #define MAXUSSDLENGTH 182
00029 #define MAX_NO_OF_CALLS 20
00030 #define CBK_ENABLE_EVENT 0x01
00031 #define CBK_DISABLE_EVENT 0x00
00032 #define CBK_NOCHANGE 0xFF
00033 #define MAX_NO_OF_APPLICATIONS 10
00034 #define MAX_NO_OF_SLOTS 5
00035 #define MAX_NO_OF_FILES 255
00036 #define MAX_PATH_LENGTH 255
00037 #define EVENT_MASK_CARD 0x00000001
00038 #define EVENT_MASK_DEREGISTER_ALL 0x00000000
00039 #define REGISTER_EVENT 0x01
00040 #define DEREGISTER_EVENT 0x00
00041 #define FIRST_INSTANCE 0x00
00042 #define SECOND_INSTANCE 0x01
00043 #define THIRD_INSTANCE 0x02
00044 #define INVALID_INSTACNE 0x08
00045 #define REGISTER_SRV 0x01
00046 #define DEREGISTER_SRV 0x00
00047 #define WDS_SRV 0x01
00048 #define NAS_SRV 0x02
00049 #define PDS_SRV 0x04
00050 #define VOICE_SRV 0x08
00051 #define NUM_OF_SET 0xFF
00052
00053
00059 typedef enum
00060 {
00061 eQA_QMI_SVC_WDS = 0x01,
00062 eQA_QMI_SVC_NAS = 0x03,
00063 eQA_QMI_SVC_NA = 0xFF,
00064
00065
00066 } eQaQMIService;
00067
00088 typedef struct{
00089 BYTE qaQmiinstanceid;
00090 eQaQMIService qaQmisvctype;
00091 ULONG v4sessionId;
00092 ULONG v6sessionId;
00093 } qaQmiInterfaceInfo;
00094
00095
00116 typedef struct
00117 {
00118 qaQmiInterfaceInfo *pQmiInterfaceInfo;
00119 ULONG reconfiguration_required;
00120 ULONG state;
00121 ULONG sessionEndReason;
00122 } slqsSessionStateInfo;
00123
00131 typedef void (* tFNSLQSSessionState)( slqsSessionStateInfo *pSessionStateInfo );
00132
00149 ULONG SLQSSetSessionStateCallback( tFNSLQSSessionState pCallback );
00150
00151
00197 typedef struct
00198 {
00199 qaQmiInterfaceInfo *pQmiInterfaceInfo;
00200 ULONG *pDormancyStatus;
00201 ULONG *pDataBearer;
00202 ULONG *pPacketsCountTX;
00203 ULONG *pPacketsCountRX;
00204 ULONGLONG *pTotalBytesTX;
00205 ULONGLONG *pTotalBytesRX;
00206 } slqsWdsEventInfo;
00207
00215 typedef void (* tFNSLQSWDSEvent)( slqsWdsEventInfo *pWdsEventInfo );
00216
00247 ULONG SLQSSetWdsEventCallback(
00248 tFNSLQSWDSEvent pCallback,
00249 BYTE interval,
00250 BYTE instanceid );
00251
00252
00253
00254
00255
00256
00257
00258
00259
00260
00261
00262
00263
00264 struct TransferStatsDataType
00265 {
00266 BYTE interval;
00267 };
00268
00269
00270
00271
00272
00273
00274
00275
00276
00277
00278
00279
00280
00281
00282
00283
00284
00285 ULONG iSLQSSetWdsFirstInstEventCallback( tFNSLQSWDSEvent pCallback );
00286
00287
00288
00289
00290
00291
00292
00293
00294
00295
00296
00297
00298
00299
00300
00301
00302
00303 ULONG iSLQSSetWdsSecondInstEventCallback( tFNSLQSWDSEvent pCallback );
00304
00305
00306
00307
00308
00309
00310
00311
00312
00313
00314
00315
00316
00317
00318
00319
00320
00321 ULONG iSLQSSetWdsThirdInstEventCallback( tFNSLQSWDSEvent pCallback );
00322
00334 typedef void (* tFNPower)( ULONG operatingMode );
00335
00351 ULONG SetPowerCallback(
00352 tFNPower pCallback );
00353
00372 typedef void (* tFNActivationStatus)( ULONG activationStatus );
00373
00387 ULONG SetActivationStatusCallback(
00388 tFNActivationStatus pCallback );
00389
00401 typedef void (* tFNMobileIPStatus)( ULONG mipStatus );
00402
00419 ULONG SetMobileIPStatusCallback(
00420 tFNMobileIPStatus pCallback );
00421
00433 typedef void (* tFNRoamingIndicator)( ULONG roaming );
00434
00450 ULONG SetRoamingIndicatorCallback(
00451 tFNRoamingIndicator pCallback );
00452
00476 typedef void (* tFNDataCapabilities)(
00477 BYTE dataCapsSize,
00478 BYTE * pDataCaps );
00479
00495 ULONG SetDataCapabilitiesCallback(
00496 tFNDataCapabilities pCallback );
00497
00509 typedef void (* tFNSignalStrength)(
00510 INT8 signalStrength,
00511 ULONG radioInterface );
00512
00540 ULONG SetSignalStrengthCallback(
00541 tFNSignalStrength pCallback,
00542 BYTE thresholdsSize,
00543 INT8 *pThresholds );
00544
00545
00546
00547
00548
00549
00550
00551
00552
00553
00554
00555
00556
00557
00558
00559
00560 struct SignalStrengthDataType
00561 {
00562 BYTE thresholdsSize;
00563 INT8 thresholds[SIGSTRENGTH_THRESHOLD_ARR_SZ];
00564 };
00565
00566
00567
00568
00569
00570
00571
00572
00573
00574
00575
00576
00577
00578
00579
00580 ULONG iSetSignalStrengthCallback(
00581 tFNSignalStrength pCallback );
00582
00599 typedef void (* tFNRFInfo)(
00600 ULONG radioInterface,
00601 ULONG activeBandClass,
00602 ULONG activeChannel );
00603
00619 ULONG SetRFInfoCallback(
00620 tFNRFInfo pCallback );
00621
00637 typedef void (* tFNLUReject)(
00638 ULONG serviceDomain,
00639 ULONG rejectCause );
00640
00656 ULONG SetLURejectCallback(
00657 tFNLUReject pCallback );
00658
00671 typedef void (* tFNNewSMS)(
00672 ULONG storageType,
00673 ULONG messageIndex );
00674
00688 ULONG SetNewSMSCallback(
00689 tFNNewSMS pCallback );
00690
00694 typedef enum SMSEventType
00695 {
00696 SMS_EVENT_MT_MESSAGE = 0x01,
00697 SMS_EVENT_TRANSFER_ROUTE_MT_MESSAGE = 0x02,
00698 SMS_EVENT_MESSAGE_MODE = 0x04,
00699 SMS_EVENT_ETWS = 0x08,
00700 SMS_EVENT_ETWS_PLMN = 0x10,
00701 SMS_EVENT_SMSC_ADDRESS = 0x20,
00702 SMS_EVENT_SMS_ON_IMS = 0x40,
00703 } eSMSEventType;
00704
00716 typedef struct SMSMTMessage
00717 {
00718 ULONG storageType;
00719 ULONG messageIndex;
00720 } SMSMTMessageInfo;
00721
00747 typedef struct SMSTransferRouteMTMessage
00748 {
00749 BYTE ackIndicator;
00750 ULONG transactionID;
00751 BYTE format;
00752 WORD length;
00753 BYTE data[QMI_WMS_MAX_PAYLOAD_LENGTH];
00754 } SMSTransferRouteMTMessageInfo;
00755
00764 typedef struct SMSMessageMode
00765 {
00766 BYTE messageMode;
00767 } SMSMessageModeInfo;
00768
00785 typedef struct SMSEtwsMessage
00786 {
00787 BYTE notificationType;
00788 WORD length;
00789 BYTE data[QMI_WMS_MAX_PAYLOAD_LENGTH];
00790 } SMSEtwsMessageInfo;
00791
00804 typedef struct SMSEtwsPlmn
00805 {
00806 WORD mobileCountryCode;
00807 WORD mobileNetworkCode;
00808 } SMSEtwsPlmnInfo;
00809
00819 typedef struct SMSCAddress
00820 {
00821 BYTE length;
00822 BYTE data[QMI_WMS_MAX_PAYLOAD_LENGTH];
00823 } SMSCAddressInfo;
00824
00837 typedef struct SMSOnIMS
00838 {
00839 BYTE smsOnIMS;
00840 }SMSOnIMSInfo;
00841
00881 typedef struct SMSEventInfo_s
00882 {
00883 BYTE smsEventType;
00884 SMSMTMessageInfo *pMTMessageInfo;
00885 SMSTransferRouteMTMessageInfo *pTransferRouteMTMessageInfo;
00886 SMSMessageModeInfo *pMessageModeInfo;
00887 SMSEtwsMessageInfo *pEtwsMessageInfo;
00888 SMSEtwsPlmnInfo *pEtwsPlmnInfo;
00889 SMSCAddressInfo *pSMSCAddressInfo;
00890 SMSOnIMSInfo *pSMSOnIMSInfo;
00891 } SMSEventInfo;
00892
00900 typedef void (* tFNSMSEvents)( SMSEventInfo *pSMSEventInfo );
00901
00913 ULONG SLQSSetSMSEventCallback( tFNSMSEvents pCallback );
00914
00923 typedef void (* tFNNewNMEA)( LPCSTR pNMEA );
00924
00936 ULONG SetNMEACallback(
00937 tFNNewNMEA pCallback );
00938
00954 typedef void (* tFNPDSState)(
00955 ULONG enabledStatus,
00956 ULONG trackingStatus );
00957
00969 ULONG SetPDSStateCallback(
00970 tFNPDSState pCallback );
00971
00999 typedef void (* tFNCATEvent)(
01000 ULONG eventID,
01001 ULONG eventLen,
01002 BYTE * pEventData );
01003
01049 ULONG SetCATEventCallback(
01050 tFNCATEvent pCallback,
01051 ULONG eventMask,
01052 ULONG *pErrorMask );
01053
01054
01055
01056
01057
01058
01059
01060
01061
01062
01063
01064
01065
01066
01067
01068
01069 struct CATEventDataType
01070 {
01071 ULONG eventMask;
01072 ULONG *pErrorMask;
01073 };
01074
01075
01076
01077
01078
01079
01080
01081
01082
01083
01084
01085
01086
01087
01088
01089 ULONG iSetCATEventCallback(
01090 tFNCATEvent pCallback );
01091
01096 typedef enum device_state_enum
01097 {
01098 DEVICE_STATE_DISCONNECTED,
01099 DEVICE_STATE_READY,
01100 DEVICE_STATE_BOOT
01101 }eDevState;
01102
01112 typedef void (* tFNDeviceStateChange)(
01113 eDevState device_state );
01114
01128 typedef void (* tFNNet)(
01129 ULONG q_depth,
01130 BYTE isThrottle );
01131
01147 ULONG SetDeviceStateChangeCbk(
01148 tFNDeviceStateChange pCallback );
01149
01177 ULONG SetNetChangeCbk(
01178 BYTE instance,
01179 tFNNet pCallback,
01180 ULONG loMark,
01181 ULONG hiMark,
01182 ULONG period);
01183
01193 typedef void (* tFNFwDldCompletion)( ULONG fwdld_completion_status );
01194
01211 ULONG SetFwDldCompletionCbk(
01212 tFNFwDldCompletion pCallback );
01213
01226 typedef void (* tFNSLQSOMADMAlert)(
01227 ULONG sessionType,
01228 BYTE *psessionTypeFields );
01229
01242 ULONG SetSLQSOMADMAlertCallback(
01243 tFNSLQSOMADMAlert pCallback );
01244
01274 typedef void (* tFNOMADMState)(
01275 ULONG sessionState,
01276 ULONG failureReason );
01277
01292 ULONG SetOMADMStateCallback(
01293 tFNOMADMState pCallback );
01294
01295 #define MAX_RADIO_INTERFACE_LIST 255
01296
01345 struct ServingSystemInfo
01346 {
01347 BYTE registrationState;
01348 BYTE csAttachState;
01349 BYTE psAttachState;
01350 BYTE selectedNetwork;
01351 BYTE radioInterfaceNo;
01352 BYTE radioInterfaceList[MAX_RADIO_INTERFACE_LIST];
01353 BYTE hdrPersonality;
01354 };
01355
01363 typedef void (* tFNServingSystem)(
01364 struct ServingSystemInfo *pServingSystem );
01365
01378 ULONG SLQSSetServingSystemCallback(
01379 tFNServingSystem pCallback );
01380
01436 typedef void (* tFNBandPreference)(
01437 ULONGLONG band_pref );
01438
01455 ULONG SLQSSetBandPreferenceCbk(
01456 tFNBandPreference pCallback );
01457
01463 typedef void (* tFNUSSDRelease)( void );
01464
01479 ULONG SetUSSDReleaseCallback(
01480 tFNUSSDRelease pCallback );
01481
01496 typedef void (* tFNUSSDNotification)(
01497 ULONG type,
01498 BYTE *pNetworkInfo );
01499
01514 ULONG SetUSSDNotificationCallback(
01515 tFNUSSDNotification pCallback );
01516
01552 struct SLQSSignalStrengthsInformation{
01553 struct rxSignalStrengthListElement rxSignalStrengthInfo;
01554 struct ecioListElement ecioInfo;
01555 ULONG io;
01556 BYTE sinr;
01557 struct errorRateListElement errorRateInfo;
01558 struct rsrqInformation rsrqInfo;
01559 };
01560
01568 typedef void (* tFNSLQSSignalStrengths )(
01569 struct SLQSSignalStrengthsInformation sSLQSSignalStrengthsInfo );
01570
01628 struct SLQSSignalStrengthsIndReq{
01629 BYTE rxSignalStrengthDelta;
01630 BYTE ecioDelta;
01631 BYTE ioDelta;
01632 BYTE sinrDelta;
01633 BYTE rsrqDelta;
01634 BYTE ecioThresholdListLen;
01635 SHORT ecioThresholdList[10];
01636 BYTE sinrThresholdListLen;
01637 BYTE sinrThresholdList[5];
01638 };
01639
01662 ULONG SLQSSetSignalStrengthsCallback(
01663 tFNSLQSSignalStrengths pCallback,
01664 struct SLQSSignalStrengthsIndReq *pSLQSSignalStrengthsIndReq );
01665
01666
01667
01668
01669
01670
01671
01672
01673
01674
01675
01676
01677
01678
01679
01680 ULONG iSLQSSetSignalStrengthsCallback(
01681 tFNSLQSSignalStrengths pCallback );
01682
01704 typedef struct
01705 {
01706 BYTE ECTCallState;
01707 BYTE presentationInd;
01708 BYTE number[QMI_MAX_VOICE_NUMBER_LENGTH];
01709 } ECTNum;
01710
01769 typedef struct
01770 {
01771 BYTE callID;
01772 BYTE notifType;
01773 WORD *pCUGIndex;
01774 ECTNum *pECTNum;
01775 } voiceSUPSNotification;
01776
01784 typedef void (*tFNSUPSNotification)
01785 ( voiceSUPSNotification *pVoiceSUPSNotification );
01786
01801 ULONG SLQSVoiceSetSUPSNotificationCallback( tFNSUPSNotification pCallback );
01802
01813 typedef void (* tFNSDKTerminated)(
01814 BYTE *psReason );
01815
01840 ULONG SLQSSetSDKTerminatedCallback(
01841 tFNSDKTerminated pCallback );
01842
01913 typedef struct
01914 {
01915 arrCallInfo arrCallInfomation;
01916 arrRemotePartyNum *pArrRemotePartyNum;
01917 arrRemotePartyName *pArrRemotePartyName;
01918 arrAlertingType *pArrAlertingType;
01919 arrSvcOption *pArrSvcOption;
01920 arrCallEndReason *pArrCallEndReason;
01921 arrAlphaID *pArrAlphaID;
01922 arrConnectPartyNum *pArrConnectPartyNum;
01923 arrDiagInfo *pArrDiagInfo;
01924 arrCalledPartyNum *pArrCalledPartyNum;
01925 arrRedirPartyNum *pArrRedirPartyNum;
01926 arrAlertingPattern *pArrAlertingPattern;
01927 } voiceSetAllCallStatusCbkInfo;
01928
01940 typedef void (* tFNAllCallStatus )(
01941 voiceSetAllCallStatusCbkInfo *pVoiceSetAllCallStatusCbkInfo );
01942
01957 ULONG SLQSVoiceSetAllCallStatusCallBack (
01958 tFNAllCallStatus pCallback );
01959
01977 typedef struct _transLayerInfoNotification
01978 {
01979 BYTE regInd;
01980 transLayerInfo *pTransLayerInfo;
01981 } transLayerNotification;
01982
01990 typedef void (*tFNtransLayerInfo)
01991 ( transLayerNotification *pTransLayerNotification );
01992
02007 ULONG SLQSSetTransLayerInfoCallback( tFNtransLayerInfo pCallback );
02008
02025 typedef struct _transNWRegInfoNotification
02026 {
02027 BYTE NWRegStat;
02028 } transNWRegInfoNotification;
02029
02037 typedef void (*tFNtransNWRegInfo)
02038 ( transNWRegInfoNotification *pTransNWRegInfoNotification );
02039
02054 ULONG SLQSSetTransNWRegInfoCallback( tFNtransNWRegInfo pCallback );
02055
02064 typedef void (* tFNSysSelectionPref )
02065 ( sysSelectPrefInfo *pSysSelectPrefInfo );
02066
02083 ULONG SLQSSetSysSelectionPrefCallBack( tFNSysSelectionPref pCallback );
02084
02093 typedef void (* tFNUIMRefresh )
02094 ( UIMRefreshEvent *pUIMRefreshEvent );
02095
02112 ULONG SLQSUIMSetRefreshCallBack ( tFNUIMRefresh pCallback );
02113
02121 typedef struct
02122 {
02123 cardStatus statusChange;
02124 }UIMStatusChangeInfo;
02125
02134 typedef void ( * tFNUIMStatusChangeInfo)
02135 (UIMStatusChangeInfo *pUIMStatusChangeInfo );
02136
02151 ULONG SLQSUIMSetStatusChangeCallBack (
02152 tFNUIMStatusChangeInfo pCallback );
02153
02170 typedef struct
02171 {
02172 BYTE callID;
02173 BYTE voicePrivacy;
02174 } voicePrivacyInfo;
02175
02184 typedef void ( * tFNPrivacyChange) ( voicePrivacyInfo *pVoicePrivacyInfo );
02185
02204 ULONG SLQSVoiceSetPrivacyChangeCallBack( tFNPrivacyChange pCallback );
02205
02233 typedef struct
02234 {
02235 DTMFInfo DTMFInformation;
02236 BYTE *pOnLength;
02237 BYTE *pOffLength;
02238 } voiceDTMFEventInfo;
02239
02247 typedef void ( * tFNDTMFEvent)
02248 ( voiceDTMFEventInfo *pVoiceDTMFEventInfo );
02249
02266 ULONG SLQSVoiceSetDTMFEventCallBack( tFNDTMFEvent pCallback );
02267
02344 typedef struct
02345 {
02346 SUPSInfo SUPSInformation;
02347 BYTE *pSvcClass;
02348 BYTE *pReason;
02349 BYTE *pCallFWNum;
02350 BYTE *pCallFWTimerVal;
02351 struct USSInfo *pUSSInfo;
02352 BYTE *pCallID;
02353 alphaIDInfo *pAlphaIDInfo;
02354 BYTE *pCallBarPasswd;
02355 newPwdData *pNewPwdData;
02356 BYTE *pDataSrc;
02357 WORD *pFailCause;
02358 getCallFWInfo *pCallFwdInfo;
02359 CLIRResp *pCLIRstatus;
02360 CLIPResp *pCLIPstatus;
02361 COLPResp *pCOLPstatus;
02362 COLRResp *pCOLRstatus;
02363 CNAPResp *pCNAPstatus;
02364 } voiceSUPSInfo;
02365
02374 typedef void ( * tFNSUPSInfo)
02375 ( voiceSUPSInfo *pVoiceSUPSInfo );
02376
02396 ULONG SLQSVoiceSetSUPSCallBack( tFNSUPSInfo pCallback );
02397
02482 typedef struct
02483 {
02484 SrvStatusInfo *pCDMASrvStatusInfo;
02485 SrvStatusInfo *pHDRSrvStatusInfo;
02486 GSMSrvStatusInfo *pGSMSrvStatusInfo;
02487 GSMSrvStatusInfo *pWCDMASrvStatusInfo;
02488 GSMSrvStatusInfo *pLTESrvStatusInfo;
02489 CDMASysInfo *pCDMASysInfo;
02490 HDRSysInfo *pHDRSysInfo;
02491 GSMSysInfo *pGSMSysInfo;
02492 WCDMASysInfo *pWCDMASysInfo;
02493 LTESysInfo *pLTESysInfo;
02494 AddCDMASysInfo *pAddCDMASysInfo;
02495 WORD *pAddHDRSysInfo;
02496 AddSysInfo *pAddGSMSysInfo;
02497 AddSysInfo *pAddWCDMASysInfo;
02498 WORD *pAddLTESysInfo;
02499 CallBarringSysInfo *pGSMCallBarringSysInfo;
02500 CallBarringSysInfo *pWCDMACallBarringSysInfo;
02501 BYTE *pLTEVoiceSupportSysInfo;
02502 BYTE *pGSMCipherDomainSysInfo;
02503 BYTE *pWCDMACipherDomainSysInfo;
02504 BYTE *pSysInfoNoChange;
02505 } nasSysInfo;
02506
02514 typedef void ( *tFNSysInfo )
02515 ( nasSysInfo *pNasSysInfo ) ;
02516
02538 ULONG SLQSNasSysInfoCallBack( tFNSysInfo pCallback );
02539
02571 typedef struct
02572 {
02573 WORD year;
02574 BYTE month;
02575 BYTE day;
02576 BYTE hour;
02577 BYTE minute;
02578 BYTE second;
02579 BYTE dayOfWeek;
02580 } UniversalTime;
02581
02599 typedef struct
02600 {
02601 UniversalTime universalTime;
02602 BYTE *pTimeZone;
02603 BYTE *pDayltSavAdj;
02604 } nasNetworkTime;
02605
02613 typedef void ( *tFNNetworkTime )
02614 ( nasNetworkTime *pNasNetworkTime );
02615
02633 ULONG SLQSNasNetworkTimeCallBack( tFNNetworkTime pCallback );
02634
02694 struct omaDmFotaTlv
02695 {
02696 BYTE state;
02697 BYTE userInputReq;
02698 USHORT userInputTimeout;
02699 ULONG fwdloadsize;
02700 ULONG fwloadComplete;
02701 USHORT updateCompleteStatus;
02702 BYTE severity;
02703 USHORT versionlength;
02704 BYTE version[256];
02705 USHORT namelength;
02706 BYTE package_name[256];
02707 USHORT descriptionlength;
02708 BYTE description[256];
02709 };
02710
02734 struct omaDmConfigTlv
02735 {
02736 BYTE state;
02737 BYTE userInputReq;
02738 USHORT userInputTimeout;
02739 USHORT alertmsglength;
02740 BYTE alertmsg[256];
02741 };
02742
02748 typedef union sessionInfo
02749 {
02750 struct omaDmFotaTlv omaDmFota;
02751 struct omaDmConfigTlv omaDmConfig;
02752 } sessionInformation;
02753
02766 typedef struct
02767 {
02768 BYTE storageType;
02769 BYTE messageMode;
02770 } SMSMemoryInfo;
02771
02780 typedef void (* tFNMemoryFull)( SMSMemoryInfo *pSMSMemoryFullInfo );
02781
02795 ULONG SLQSWmsMemoryFullCallBack( tFNMemoryFull pCallback );
02796
02833 typedef struct
02834 {
02835 BYTE callID;
02836 BYTE OTASPStatus;
02837 }voiceOTASPStatusInfo;
02838
02848 typedef void ( * tFNOTASPStatus )
02849 ( voiceOTASPStatusInfo *pVoiceOTASPStatusInfo );
02850
02870 ULONG SLQSVoiceSetOTASPStatusCallBack(
02871 tFNOTASPStatus pCallback );
02872
02886 typedef struct
02887 {
02888 BYTE signalType;
02889 BYTE alertPitch;
02890 BYTE signal;
02891 } signalInfo;
02892
02908 typedef struct
02909 {
02910 BYTE PI;
02911 BYTE callerIDLen;
02912 BYTE callerID[255];
02913 } callerIDInfo;
02914
02971 typedef struct
02972 {
02973 BYTE PI;
02974 BYTE SI;
02975 BYTE numType;
02976 BYTE numPlan;
02977 BYTE numLen;
02978 BYTE number[255];
02979 } callingPartyInfo;
02980
03037 typedef struct
03038 {
03039 BYTE PI;
03040 BYTE SI;
03041 BYTE numType;
03042 BYTE numPlan;
03043 BYTE numLen;
03044 BYTE number[255];
03045 } calledPartyInfo;
03046
03106 typedef struct
03107 {
03108 BYTE PI;
03109 BYTE SI;
03110 BYTE numType;
03111 BYTE numPlan;
03112 BYTE reason;
03113 BYTE numLen;
03114 BYTE number[255];
03115 } redirNumInfo;
03116
03127 typedef struct
03128 {
03129 BYTE upLink;
03130 BYTE downLink;
03131 } NSSAudioCtrl;
03132
03149 typedef struct
03150 {
03151 BYTE polarityIncluded;
03152 BYTE toggleMode;
03153 BYTE revPolarity;
03154 BYTE pwrDenialTime;
03155 } lineCtrlInfo;
03156
03172 typedef struct
03173 {
03174 BYTE dispType;
03175 BYTE extDispInfoLen;
03176 BYTE extDispInfo[255];
03177 } extDispRecInfo;
03178
03242 typedef struct
03243 {
03244 BYTE callID;
03245 signalInfo *pSignalInfo;
03246 callerIDInfo *pCallerIDInfo;
03247 BYTE *pDispInfo;
03248 BYTE *pExtDispInfo;
03249 BYTE *pCallerNameInfo ;
03250 BYTE *pCallWaitInd;
03251 connectNumInfo *pConnectNumInfo;
03252 connectNumInfo *pCallingPartyInfo;
03253 calledPartyInfo *pCalledPartyInfo;
03254 redirNumInfo *pRedirNumInfo;
03255 BYTE *pCLIRCause;
03256 NSSAudioCtrl *pNSSAudioCtrl;
03257 BYTE *pNSSRelease;
03258 lineCtrlInfo *pLineCtrlInfo;
03259 extDispRecInfo *pExtDispRecInfo;
03260 } voiceInfoRec;
03261
03271 typedef void ( * tFNInfoRec) ( voiceInfoRec *pVoiceInfoRec );
03272
03289 ULONG SLQSVoiceInfoRecCallback( tFNInfoRec pCallback );
03290
03301 typedef struct
03302 {
03303 BYTE numInstances;
03304 messageWaitingInfoContent msgWaitInfo[NUM_OF_SET];
03305 } msgWaitingInfo;
03306
03315 typedef void (* tFNMessageWaiting)( msgWaitingInfo *pSMSMessageWaitingInfo );
03316
03330 ULONG SLQSWmsMessageWaitingCallBack( tFNMessageWaiting pCallback );
03331
03351 typedef struct
03352 {
03353 ULONG id;
03354 BYTE isNewFlow;
03355 BYTE state;
03356 } QosFlowInfoState;
03357
03379 typedef struct
03380 {
03381 QosFlowInfoState *pQFlowState;
03382 swiQosFlow *pTxQFlowGranted;
03383 swiQosFlow *pRxQFlowGranted;
03384 swiQosFilter *pTxQFilter;
03385 swiQosFilter *pRxQFilter;
03386 } QosFlowInfo;
03387
03388
03434 typedef struct
03435 {
03436
03437
03438
03439 ULONG *pDataBearer;
03440 ULONG *pPacketsCountTX;
03441 ULONG *pPacketsCountRX;
03442 ULONGLONG *pTotalBytesTX;
03443 ULONGLONG *pTotalBytesRX;
03444 } QosEventInfo;
03445
03446
03456 typedef void (* tFNSLQSQOSEvent)(
03457 BYTE instance,
03458 QosFlowInfo *pFlowInfo
03459 );
03460
03478 ULONG SLQSSetQosEventCallback(
03479 BYTE instance,
03480 tFNSLQSQOSEvent pCallback
03481 );
03482
03508 typedef void (* tFNQosStatus)(
03509 BYTE instance,
03510 ULONG id,
03511 BYTE status,
03512 BYTE event,
03513 BYTE reason
03514 );
03515
03533 ULONG SLQSSetQosStatusCallback(
03534 BYTE instance,
03535 tFNQosStatus pCallback
03536 );
03537
03546 typedef void (* tFNQosNWStatus)(
03547 BYTE status
03548 );
03549
03564 ULONG SLQSSetQosNWStatusCallback(
03565 tFNQosNWStatus pCallback
03566 );
03567
03576 typedef void (* tFNQosPriEvent)(
03577 WORD event
03578 );
03579
03594 ULONG SLQSSetQosPriEventCallback(
03595 tFNQosPriEvent pCallback );
03596
03616 typedef struct
03617 {
03618 CDMASSInfo *pCDMASigInfo;
03619 HDRSSInfo *pHDRSigInfo;
03620 BYTE *pGSMSigInfo;
03621 CDMASSInfo *pWCDMASigInfo;
03622 LTESSInfo *pLTESigInfo;
03623 TDSCDMASigInfo *pTDSCDMASigInfo;
03624 TDSCDMASigInfoExt *pTDSCDMASigInfoExt;
03625 } nasSigInfo;
03626
03634 typedef void (*tFNSigInfo)( nasSigInfo *pNasSigInfo );
03635
03652 ULONG SLQSNasSigInfoCallBack( tFNSigInfo pCallback );
03653
03673 typedef struct _modemTempNotification
03674 {
03675 BYTE ModemTempState;
03676 WORD ModemTemperature;
03677 } modemTempNotification;
03678
03686 typedef void (*tFNModemTempInfo)
03687 ( modemTempNotification *pModemTempNotification );
03688
03703 ULONG SLQSSetModemTempCallback( tFNModemTempInfo pCallback );
03704
03763 typedef struct _packetSrvStatus
03764 {
03765 qaQmiInterfaceInfo *pQmiInterfaceInfo;
03766 BYTE connStatus;
03767 BYTE reconfigReqd;
03768 WORD sessionEndReason;
03769 WORD verboseSessnEndReasonType;
03770 WORD verboseSessnEndReason;
03771 BYTE ipFamily;
03772 WORD techName;
03773 } packetSrvStatus;
03774
03782 typedef void (* tFNPacketSrvState)(
03783 packetSrvStatus *pPacketSrvStatus );
03784
03800 ULONG SLQSSetPacketSrvStatusCallback(
03801 tFNPacketSrvState pCallback );
03802
03803
03804
03805
03806
03807
03808
03809
03810
03811
03812
03813
03814
03815
03816
03817 typedef struct
03818 {
03819 WORD *pCurrentPersonality;
03820 BYTE *pPersonalityListLength;
03821 protocolSubtypeElement *pProtocolSubtypeElement;
03822 }HDRPersonalityInd;
03823
03832 typedef void ( *tFNHDRPersonaity )( HDRPersonalityInd *pHDRPers );
03833
03849 ULONG SLQSSetSwiHDRPersCallback( tFNHDRPersonaity pCallback );
03850
03885 typedef struct
03886 {
03887 WORD *pSIPLocalPort;
03888 ULONG *pTimerSIPReg;
03889 ULONG *pSubscribeTimer;
03890 ULONG *pTimerT1;
03891 ULONG *pTimerT2;
03892 ULONG *pTimerTf;
03893 BYTE *pSigCompEnabled;
03894 } imsSIPConfigInfo;
03895
03903 typedef void ( * tFNImsSIPConfig) ( imsSIPConfigInfo *pImsSIPConfigInfo );
03904
03920 ULONG SLQSSetSIPConfigCallback( tFNImsSIPConfig pCallback );
03921
03939 typedef struct
03940 {
03941 WORD *pPriCSCFPort;
03942 BYTE *pCSCFPortName;
03943 BYTE *pIMSTestMode;
03944 } imsRegMgrConfigInfo;
03945
03953 typedef void ( * tFNImsRegMgrConfig) (
03954 imsRegMgrConfigInfo *pImsRegMgrConfigInfo );
03955
03971 ULONG SLQSSetRegMgrConfigCallback( tFNImsRegMgrConfig pCallback );
03972
03993 typedef struct
03994 {
03995 BYTE *pSMSFormat;
03996 BYTE *pSMSOverIPNwInd;
03997 BYTE *pPhoneCtxtURI;
03998 } imsSMSConfigInfo;
03999
04007 typedef void ( * tFNImsSMSConfig) (
04008 imsSMSConfigInfo *pImsSMSConfigInfo );
04009
04025 ULONG SLQSSetIMSSMSConfigCallback( tFNImsSMSConfig pCallback );
04026
04036 typedef struct
04037 {
04038 BYTE *pIMSDomain;
04039 } imsUserConfigInfo;
04040
04048 typedef void ( * tFNImsUserConfig) (
04049 imsUserConfigInfo *pImsUserConfigInfo );
04050
04066 ULONG SLQSSetIMSUserConfigCallback( tFNImsUserConfig pCallback );
04067
04151 typedef struct
04152 {
04153 WORD *pSessionExpiryTimer;
04154 WORD *pMinSessionExpiryTimer;
04155 BYTE *pAmrWbEnable;
04156 BYTE *pScrAmrEnable;
04157 BYTE *pScrAmrWbEnable;
04158 BYTE *pAmrMode;
04159 WORD *pAmrWBMode;
04160 BYTE *pAmrOctetAligned;
04161 BYTE *pAmrWBOctetAligned;
04162 WORD *pRingingTimer;
04163 WORD *pRingBackTimer;
04164 WORD *pRTPRTCPInactTimer;
04165 } imsVoIPConfigInfo;
04166
04174 typedef void ( * tFNImsVoIPConfig) (
04175 imsVoIPConfigInfo *pImsVoIPConfigInfo );
04176
04192 ULONG SLQSSetIMSVoIPConfigCallback( tFNImsVoIPConfig pCallback );
04193
04194 #ifdef __cplusplus
04195 }
04196 #endif
04197
04198 #endif