API Guide Home (Online version only) |

# HsPhoneNetworkTypes.h

Go to the documentation of this file.

    00001 /******************************************************************************
    00002  * Copyright (c) 2004 palmOne, Inc. or its subsidiaries.
    00003  * All rights reserved.
    00004  *****************************************************************************/
    00005 /** @ingroup Telephony
    00006  *
    00007  */
    00008
    00009
    00010 /**
    00011  *
    00012  * @file    HsPhoneNetworkTypes.h
    00013  *
    00014  * @brief  Header File for Phone Library API ---- NETWORK CATEGORY
    00015  *
    00016  * NOTES:
    00017  *  All implementations of the Handspring Phone Library support a common API.
    00018  *  This API is broken up into various categories for easier management.  This file
    00019  *  defines the SMS category.  These API calls are used to interact with the wireless network.
    00020  */
    00021
    00022
    00023
    00024
    00025 #ifndef _HS_PHONE_NETWORK_TYPES_H__
    00026 #define _HS_PHONE_NETWORK_TYPES_H__
    00027 #include <PalmOS.h>
    00028 #include <PalmTypes.h>
    00029 #ifndef __CORE_COMPATIBILITY_H__
    00030 #include <PalmCompatibility.h>
    00031     /** workaround for differing header files in sdk-3.5 and sdk-internal */
    00032     #ifndef __CORE_COMPATIBILITY_H__
    00033     #define __CORE_COMPATIBILITY_H__
    00034     #endif
    00035 #endif
    00036
    00037
    00038 #define kMaxPhoneNumberLen  16                  /**< Max length of phone number  */
    00039
    00040 #define minPasswordLen                  4       /**< Phone password/PIN minimum length  */
    00041 #define maxPasswordLen                  8   /**< Phone password/PIN maximum length  */
    00042 #define maxPasswordLenCDMA              4   /**<        */
    00043
    00044 #define phnEnhancedRoamIndMaxLength  40             /**<        */
    00045
    00046 /**
    00047  *  GSM CLIP Subscription Status
    00048  **/
    00049 typedef enum {
    00050     gsmCLIPNotProvisioned,      /**<        */
    00051     gsmCLIPProvisioned,     /**<        */
    00052     gsmCLIPUnknown          /**<        */
    00053 } GSMCLIPStatus;
    00054
    00055
    00056 /**
    00057  *
    00058  **/
    00059 typedef enum {
    00060     clirNotProvisioned,         /**< sent: restricted presentation of the calling line */
    00061     clirProvisioned,            /**< not sent: don't restrict presentation of the calling line */
    00062     clirUnknown,                /**< status not available */
    00063     clirTemporaryRestricted,        /**< not sent, override allowed */
    00064     clirTemporaryAllowed            /**< sent: override allowed */
    00065 } PhnCLIRStatus;
    00066
    00067 #define isValidPhnCLIRStatus(s) ((s >= clirNotProvisioned) && (s <= clirTemporaryAllowed))  /**<        */
    00068
    00069
    00070 /**
    00071  *  GSM CLIR Display Status
    00072  **/
    00073 typedef enum {
    00074   gsmCLIRSubscription,      /**< presentation indicator is used according to the subscription of the CLIR service */
    00075   gsmCLIRInvocation,        /**<        */
    00076   gsmCLIRSuppression        /**<        */
    00077 } GSMCLIRDisplayStatus;
    00078
    00079 #define isValidGSMDialClirStatus(d) ((d >= gsmDialCLIRNotProvisioned) && (d <= gsmDialCLIRTemporaryAllowed))    /**<        */
    00080
    00081 /**
    00082  * Phone operator status
    00083  **/
    00084 typedef enum {
    00085     phnOpUnknown,       /**<        */
    00086     phnOpAvailable,     /**<        */
    00087     phnOpCurrent,       /**<        */
    00088     phnOpForbidden      /**<        */
    00089 } PhnOperatorStatus;
    00090
    00091 #define isValidPhnOperatorStatus(s) ((s >= phnOpUnknown) && (s <= phnOpForbidden))  /**<        */
    00092
    00093
    00094
    00095 /**
    00096  *
    00097  **/
    00098
    00099 typedef UInt8 PhnMsgBoxType;        /**<        */
    00100 typedef enum
    00101   {
    00102     kBoxVoice,          /**<        */
    00103     kBoxTelefax,        /**<        */
    00104     kBoxEMail,          /**<        */
    00105     kBoxOther,          /**<        */
    00106     kBoxData,           /**<        */
    00107     PhnMsgBoxTypeMAX        /**< THIS MUST BE LAST ENTRY.... NOT A VALID VALUE */
    00108     // other values reserved for future expansion
    00109   }
    00110 PhnMsgBoxEnum;
    00111
    00112 #define isValidPhnMsgBoxType(n) (n < PhnMsgBoxTypeMAX)      /**<        */
    00113
    00114 typedef UInt8 PhnMsgBoxPriorityType;
    00115 typedef enum
    00116 {
    00117   kSmsPriorityNormal,
    00118   kSmsPriorityInteractive,
    00119   kSmsPriorityUrgent,
    00120   kSmsPriorityEmergency,
    00121   kSmsPriorityLast
    00122 }
    00123 PhnMsgBoxPriorityEnum;
    00124
    00125 /**
    00126  *
    00127  **/
    00128 typedef struct
    00129   {
    00130     Boolean         indicatorOn;    /**<        */
    00131     PhnMsgBoxType   type;       /**<        */
    00132     Int16           messageCount;   /**<        */
    00133     Int16           lineNumber;     /**<        */
    00134     PhnMsgBoxPriorityType           priority; /**< voicemail priority - example: normal, urgent etc. */
    00135   }
    00136 PhnMsgBoxDataType;
    00137
    00138
    00139
    00140
    00141 /**
    00142  * Operator info
    00143  **/
    00144 #define MAX_LONGOPERATORNAME_LENGTH 24      /**<        */
    00145 #define MAX_SHORTOPERATORNAME_LENGTH 16     /**<        */
    00146 typedef struct
    00147   {
    00148     PhnOperatorStatus   status;         /**<        */
    00149   PhnOperatorID   id;                       /**< Not really used since CDMA just allows one service provider */
    00150   char longname[MAX_LONGOPERATORNAME_LENGTH+1];         /**< name + terminating NULL char */
    00151   char shortname[MAX_SHORTOPERATORNAME_LENGTH+1];       /**< name + terminating NULL char */
    00152   Boolean         isRoaming;                /**< in sync with the current roaming status */
    00153   }
    00154 PhnOperatorType;
    00155
    00156 /**
    00157  * Operator list
    00158  **/
    00159 typedef struct
    00160   {
    00161     short           count;      /**<        */
    00162     PhnOperatorType opData[1];      /**<        */
    00163   }
    00164 PhnOperatorListType,* PhnOperatorListPtr;
    00165
    00166 /**
    00167  *
    00168  **/
    00169 typedef enum {
    00170     gsmRegModeAutomatic,        /**<        */
    00171     gsmRegModeManual,       /**<        */
    00172     gsmRegModeDeregister,       /**<        */
    00173     gsmRegModeFormat,       /**<        */
    00174     gsmRegModeManualAutomatic   /**<        */
    00175 } GSMRegistrationMode;
    00176
    00177 #define isValidGSMRegistrationMode(r) (r <= gsmRegModeManualAutomatic)  /**<        */
    00178
    00179 /**
    00180  *  Possible roaming status'
    00181  *  GSM devices only use first two
    00182  **/
    00183 typedef UInt8 PhnRoamStatus;        /**< set a type for this enumeration */
    00184 typedef enum
    00185   {
    00186     PhnRoamStatusOff,           /**<        */
    00187     PhnRoamStatusOn,            /**<        */
    00188     PhnRoamStatusBlink,         /**<        */
    00189     PhnRoamStatusEnhancedIndicator      /**< If this is the roaming status, call PhnLibGetEnhancedRoamIndicator  */
    00190   }
    00191 PhnRoamStatusEnum;
    00192
    00193 /**
    00194  *  Phone call forwarding reason
    00195  **/
    00196 typedef UInt8 PhnForwardType;       /**< set a type for this enumeration */
    00197 typedef enum {
    00198     phnForwardUnconditional,    /**<        */
    00199     phnForwardOnBusy,       /**<        */
    00200     phnForwardOnNoReplay,       /**<        */
    00201     phnForwardOnNotReachable,   /**<        */
    00202     phnForwardTelefax,      /**<        */
    00203     phnForwardData,         /**<        */
    00204     phnForwardCancelAll,        /**<        */
    00205     phnForwardConditionalAll,   /**<        */
    00206     phnForwardLast          /**<        */
    00207 } PhnForwardEnum;
    00208
    00209 #define isValidPhnForwardType(f) (f < phnForwardLast)       /**<        */
    00210
    00211 /**
    00212  * Phone call barring options
    00213  **/
    00214 typedef enum {
    00215     phnBarOutNone,              /**<        */
    00216     phnBarOutAll,               /**<        */
    00217     phnBarOutInternational,         /**<        */
    00218     phnBarOutInternationalExceptHome,   /**<        */
    00219
    00220     phnBarInNone,               /**<        */
    00221     phnBarInAll,                /**<        */
    00222     phnBarInWhenRoaming,            /**<        */
    00223     phnBarAll               /**<        */
    00224
    00225 } PhnBarFacilityTypeEnum;
    00226 typedef UInt8   PhnBarFacilityType;
    00227 typedef UInt8*  PhnBarFacilityPtr;
    00228 #define isValidPhnBarFacilityType(b) (b <= phnBarAll)   /**<        */
    00229
    00230 /**
    00231  * CDMA Roam Preferences
    00232  **/
    00233 typedef struct
    00234   {
    00235     Boolean         roamCallGuardEnable;    /**<        */
    00236     Boolean         roamRingerEnable;       /**<        */
    00237     UInt8           roamRingerID;       /**<        */
    00238   }
    00239 PhnRoamPrefInfoType,* PhnRoamPrefInfoPtr;
    00240
    00241 /**
    00242  *
    00243  **/
    00244 typedef enum  {
    00245     registrationNone,       /**<        */
    00246     registrationHome,       /**<        */
    00247     registrationSearch,         /**<        */
    00248     registrationDenied,     /**<        */
    00249     registrationUnknown,        /**<        */
    00250     registrationRoaming     /**<        */
    00251 } PhnRegistrationStatus;
    00252
    00253 #define isValidPhnRegistrationStatus(r) (r <= registrationRoaming)      /**<        */
    00254 //#define isValidPhnRegistrationStatus(r) ((r >= registrationNone) && (r <= registrationRoaming))
    00255
    00256 /**
    00257  *  Phone call forwarding mode
    00258  **/
    00259 typedef UInt8 PhnForwardModeType;   /**<        */
    00260 typedef enum {
    00261     phnForwardModeDisable,      /**<        */
    00262     phnForwardModeEnable,       /**<        */
    00263     phnForwardModeInterrogate,  /**<        */
    00264     phnForwardModeRegistration, /**<        */
    00265     phnForwardModeErasure       /**<        */
    00266 } PhnForwardModeEnum;
    00267
    00268 #define isValidPhnForwardModeType(f) (f <= phnForwardModeErasure)   /**<        */
    00269 /**
    00270  * MMI Action Code
    00271  **/
    00272 typedef enum
    00273 {
    00274   mmiActionNoAction     = 0,        /**<        */
    00275   mmiActionActivate     = 0x01,     /**<        */
    00276   mmiActionDeactivate   = 0x02,     /**<        */
    00277   mmiActionInterrogate  = 0x04,     /**<        */
    00278   mmiActionRegister     = 0x08,     /**<        */
    00279   mmiActionErasure      = 0x10,     /**<        */
    00280   mmiActionUnlock       = 0x20,     /**<        */
    00281   mmiActionHandspring   = 0x40      /**<        */
    00282 }
    00283 PhnMMIActionCodeEnum;
    00284 typedef UInt8 PhnMMIActionCode;
    00285
    00286
    00287 /**
    00288  * MMI Service Code
    00289  **/
    00290 typedef enum
    00291 {
    00292     mmiServiceInvalid = 0,      /**<        */
    00293     mmiServiceChangePIN,        /**<        */
    00294     mmiServiceChangePIN2,       /**<        */
    00295     mmiServiceUnlockPIN,        /**<        */
    00296     mmiServiceUnlockPIN2,       /**<        */
    00297     mmiServiceIMEI,         /**<        */
    00298     mmiServiceCallerId,     /**<        */
    00299     mmiServiceNumberSent,       /**<        */
    00300     mmiServiceCOLP,         /**<        */
    00301     mmiServiceCOLR,         /**<        */
    00302     mmiServiceCallWaiting,      /**<        */
    00303     mmiServiceForwardUnconditional, /**<        */
    00304     mmiServiceForwardBusy,      /**<        */
    00305     mmiServiceForwardNoReply,   /**<        */
    00306     mmiServiceForwardNotReachable,  /**<        */
    00307     mmiServiceForwardAll,       /**<        */
    00308     mmiServiceForwardConditionalAll,/**<        */
    00309     mmiServiceBAOC,         /**< bar all outging calls */
    00310     mmiServiceBAOIC,        /**< bar all outging international calls */
    00311     mmiServiceBAOICX,       /**< bar all outging international calls expect home */
    00312     mmiServiceBAIC,         /**< bar all incoming calls */
    00313     mmiServiceBAICR,        /**< bar all incoming calls while roaming */
    00314     mmiServiceAllBarringServ,   /**< bar all services */
    00315     mmiServiceAllOutBarringServ,    /**< bar all outgoing services */
    00316     mmiServiceAllInBarringServ,     /**< bar all incoming services */
    00317     mmiServiceChangeBarPwd,     /**< Change barring password */
    00318     mmiServiceUSSD,         /**<        */
    00319     mmiServicePhoneNumber,      /**<        */
    00320     mmiServiceCallControl,      /**<        */
    00321     mmiServiceSelectorOperatorLock, /**<        */
    00322     mmiServiceSelectorProviderLock, /**<        */
    00323     mmiServiceNNN,          /**<        */
    00324     mmiServiceUnimplemented     /**< defined by GSM standard but not implemented in our phone */
    00325 }
    00326 PhnMMIServiceCodeEnum;
    00327 typedef UInt8 PhnMMIServiceCode;
    00328
    00329 /**
    00330  * Call Control Codes
    00331  **/
    00332 typedef enum {
    00333   mmiControlReleaseAllHeld = 0,     /**<        */
    00334   mmiControlReleaseAllActive,       /**<        */
    00335   mmiControlReleaseCallx,       /**<        */
    00336   mmiControlSwap,           /**<        */
    00337   mmiControlActivateCallx,      /**<        */
    00338   mmiControlConference,         /**<        */
    00339   mmiControlTransfer            /**<        */
    00340 }PhnCallControlTypeEnum;
    00341
    00342 typedef UInt8 PhnCallControlType;
    00343
    00344
    00345 typedef enum
    00346 {
    00347   PhnRoamIconOn,            /**<        */
    00348   PhnRoamIconOff,           /**<        */
    00349   PhnRoamIconFlash          /**<        */
    00350 }
    00351 PhnRoamIconState;
    00352 /************************************************************
    00353  *  Structs
    00354  *************************************************************/
    00355
    00356 #define kMaxMMISequenceLen 64       /**<        */
    00357
    00358 /**
    00359  * Telephone Service Types
    00360  **/
    00361 typedef enum {
    00362   phnTeleserviceUnknown = 0,        /**<        */
    00363   phnTeleserviceVoice = 1,      /**<        */
    00364   phnTeleserviceData = 2,       /**<        */
    00365   phnTeleserviceFax = 4,        /**<        */
    00366   phnTeleserviceDefault = 7,        /**<  Voice + Data + Fax */
    00367   phnTeleserviceSMS = 8,        /**<        */
    00368   phnTeleserviceDataCircSync = 16,  /**<        */
    00369   phnTeleserviceDataCircAsync = 32, /**<        */
    00370   phnTeleserviceDedicatedPack = 64, /**<        */
    00371   phnTeleserviceDedicatedPAD = 128  /**<        */
    00372 } PhnTeleserviceType;
    00373
    00374
    00375 /**
    00376  * Telephone Service MMI code Types
    00377  **/
    00378 typedef enum {
    00379   phnTeleserviceUnknownMmiCode        = 0,  /**<        */
    00380   phnTeleserviceVoiceMmiCode          = 11, /**<        */
    00381   phnTeleserviceAllMmiCode            = 12, /**<        */
    00382   phnTeleserviceFaxMmiCode            = 13, /**<        */
    00383   phnTeleserviceSMSMmiCode            = 16, /**<        */
    00384   phnTeleserviceAllExceptSMSCode      = 19, /**<        */
    00385   phnTeleserviceDataCircSyncMmiCode   = 24, /**<        */
    00386   phnTeleserviceDataCircAsyncMmiCode  = 25, /**<        */
    00387   phnTeleserviceDedicatedPackMmiCode  = 26, /**<        */
    00388   phnTeleserviceDedicatedPADMmiCode   = 27  /**<        */
    00389 } PhnTeleserviceMmiCodeType;
    00390
    00391 /**
    00392  * @brief MMI Decode struct
    00393  **/
    00394 typedef struct
    00395 {
    00396   UInt16  size;             /**<        */
    00397   PhnMMIActionCode  actionCode;     /**<        */
    00398   PhnMMIServiceCode  serviceCode;   /**<        */
    00399   Boolean sendHit;          /**<        */
    00400   char text[kMaxMMISequenceLen+1];  /**<        */
    00401   union
    00402   {
    00403     struct
    00404     {
    00405       char  number[kMaxPhoneNumberLen+1];   /**<        */
    00406       PhnTeleserviceType type;          /**<        */
    00407       UInt16  time;             /**<        */
    00408     } mmiForwarding;
    00409     struct
    00410     {
    00411       PhnTeleserviceType type;          /**<        */
    00412       char pwd[maxPasswordLen+1];       /**<        */
    00413     } mmiBarring;
    00414     struct
    00415     {
    00416       PhnTeleserviceType type;          /**<        */
    00417     } mmiCallWaiting;               /**<        */
    00418     struct
    00419     {
    00420       char oldPwd[maxPasswordLen+1];        /**<        */
    00421       char newPwd[maxPasswordLen+1];        /**<        */
    00422       char repeatNewPwd[maxPasswordLen+1];  /**<        */
    00423     } mmiPassword;
    00424     struct
    00425     {
    00426       PhnCallControlType action;        /**<        */
    00427       PhnConnectionID id;           /**<        */
    00428     } mmiCallControl;
    00429     struct
    00430     {
    00431       char  name[kMaxPhoneNumberLen+1]; /**<        */
    00432       char  number[kMaxPhoneNumberLen+1];   /**<        */
    00433       GSMDialCLIRMode mode;         /**<        */
    00434     } mmiPhoneNumber;
    00435
    00436   } data;
    00437
    00438 }
    00439 PhnMMIEntryType, *PhnMMIEntryPtr;
    00440
    00441 #define kMaxImeiLen 24          /**<        */
    00442
    00443 /**
    00444  * @brief MMI result struct
    00445  **/
    00446 typedef struct
    00447 {
    00448   UInt16 size;              /**<        */
    00449   PhnMMIServiceCode  serviceCode;   /**<        */
    00450   union
    00451   {
    00452     struct
    00453     {
    00454       Boolean enabled;              /**<        */
    00455       char  number[kMaxPhoneNumberLen+1];   /**<        */
    00456       PhnTeleserviceType type;          /**<        */
    00457       UInt16  time;             /**<        */
    00458     } mmiForwarding;
    00459     struct
    00460     {
    00461       Boolean enabled;              /**<        */
    00462       PhnTeleserviceType type;          /**<        */
    00463     } mmiBarring;
    00464     struct
    00465     {
    00466       Boolean enabled;              /**<        */
    00467       PhnTeleserviceType type;          /**<        */
    00468     } mmiCallWaiting;
    00469     struct
    00470     {
    00471       Boolean enabled;              /**<        */
    00472     } mmiCallerID;
    00473     struct
    00474     {
    00475       GSMCLIRDisplayStatus displayStatus;   /**<        */
    00476       PhnCLIRStatus subscriptionStatus;     /**<        */
    00477     } mmiNumberSent;
    00478     struct
    00479     {
    00480       Boolean enabled;              /**<        */
    00481     } mmiColp;
    00482         struct
    00483     {
    00484       Boolean enabled;              /**<        */
    00485     } mmiColr;
    00486     struct
    00487     {
    00488       char imei[kMaxImeiLen+1];         /**<        */
    00489     } mmiIMEI;
    00490
    00491   } data;
    00492 }
    00493 PhnMMIResultType, *PhnMMIResultPtr;
    00494
    00495 typedef enum
    00496 {
    00497   bandGSM_EGSM = 0,
    00498   band1800,
    00499   band900_1800,
    00500   band1900,
    00501   bandAuto,
    00502   band850,
    00503   band1900_850
    00504 } _PhnBandSelection;
    00505
    00506 typedef UInt8 PhnBandSelection;
    00507 #define isValidPhnBandSelection(f) (f <= band1900_850)
    00508
    00509
    00510 /**
    00511  * This defines the roaming mode of the radio.
    00512  */
    00513 typedef enum
    00514 {
    00515   phnRoamPrefHomeOnly,   /**< Home network only (no roaming)      */
    00516   phnRoamPrefAny,        /**< Any network       (roaming allowed) */
    00517   phnRoamPrefRoamOnly,   /**< Roam network only (roaming only)    */
    00518   phnRoamPrefLast        /**< end of list enum                    */
    00519 }
    00520 _PhnRoamPrefSelectionTypeEnum;
    00521 typedef UInt8 PhnRoamPrefSelectionType;
    00522 #define isValidRoamMode(x)  (x < phnRoamPrefLast)
    00523
    00524
    00525 /**
    00526  * This is now deprecated.
    00527  * It is only implemented to maintain backwards compatibility
    00528  * Currently, the only user is NetMaster
    00529  **/
    00530 typedef enum
    00531 {
    00532     phnOneXStatusPRevNoSvc,     /**< Service is not available. */
    00533     phnOneXStatusPRev1,         /**< J-STD-008 service is in use. */
    00534     phnOneXStatusPRev3,         /**< IS-95A service is in use. */
    00535     phnOneXStatusPRev4,         /**< IS-95B service is in use. */
    00536     phnOneXStatusPRev6,         /**< IS-2000 release 0 service is in use. */
    00537     phnOneXStatusPRev7      /**< IS-2000 release A service is in use. */
    00538 }
    00539 _PhnOneXProtRevType;
    00540 typedef UInt8 PhnOneXProtRevType;   /**<        */
    00541 #define isValidPhnOneXProtRevType(p) (p <= phnOneXStatusPRev7)      /**<        */
    00542
    00543 /**
    00544  * Describes the current packet data session state.
    00545  * Currently there are 3 states. Active, dormant, or none.
    00546  **/
    00547 typedef enum
    00548 {
    00549   phnPacketDataSessionNone,         /**< No packet data session exists. */
    00550   phnPacketDataSessionDormant,      /**< Packet data session dormant    */
    00551   phnPacketDataSessionActive        /**< Packet data session active     */
    00552 }
    00553 _PhnPacketDataSessionType;
    00554 typedef UInt8 PhnPacketDataSessionType;     /**<        */
    00555 #define isValidPhnPacketDataSessionType(p) (p <= phnPacketDataSessionActive)        /**<        */
    00556
    00557 /**
    00558  * This is now deprecated.
    00559  * It is only implemented to maintain backwards compatibility
    00560  * Currently, the only user is NetMaster
    00561  **/
    00562 typedef enum
    00563 {
    00564     phnMIPSessionNone,      /**<        */
    00565     phnMIPSession           /**< A Mobile IP session exists. */
    00566 }
    00567 _PhnMIPSessionType;
    00568 typedef UInt8 PhnMIPSessionType;        /**<        */
    00569 #define isValidPhnMIPSessionType(m) (m <= phnMIPSession)        /**<        */
    00570
    00571
    00572 /**
    00573  * This is now deprecated.
    00574  * It is only implemented to maintain backwards compatibility
    00575  * Currently, the only user is NetMaster and the Phone App
    00576  **/
    00577 typedef struct
    00578 {
    00579   PhnOneXProtRevType        oneXStatusPRev;     /**<        */
    00580   PhnPacketDataSessionType  pdSessionStatus;    /**<        */
    00581   PhnMIPSessionType         mipSessionType; /**<        */
    00582 }
    00583 PhnOneXStatus;
    00584
    00585
    00586 /**
    00587  * This defines the different data service types.
    00588  */
    00589 typedef enum
    00590 {
    00591   phnDataServiceNone,
    00592   phnDataServiceCSD,
    00593   phnDataService1xRTT,
    00594   phnDataService1xEVDO,
    00595   phnDataServiceGPRS,
    00596   phnDataServiceEdge,
    00597   phnDataServiceLast
    00598 }
    00599 _PhnDataServiceType;
    00600 typedef UInt16 PhnDataServiceType;
    00601 #define isValidDataService(x) (x < phnDataServiceLast)
    00602
    00603
    00604 /**
    00605  * List of errors on why a data call was disconnected.
    00606  */
    00607 typedef enum
    00608 {
    00609   phnPacketDataEndStatusUnknown,       /**< Unknown end status      */
    00610   phnPacketDataEndStatusNormal,        /**< Normal                  */
    00611   phnPacketDataEndStatusReorder,       /**< reoder                  */
    00612   phnPacketDataEndStatusRetry,         /**< retry                   */
    00613   phnPacketDataEndStatusTimeout,       /**< call                    */
    00614   phnPacketDataEndStatusIntercept,     /**< Intercept               */
    00615   phnPacketDataEndStatusReject,        /**< Service Option rejected */
    00616   phnPacketDataEndStatusNoReason,      /**< No reason given         */
    00617   phnPacketDataEndStatusAuthFailed,    /**< authentication failed   */
    00618   phnPacketDataEndStatusDropped,       /**< dropped call            */
    00619   phnPacketDataEndStatusLast           /**< place holder for last   */
    00620 }
    00621 _PhnPacketDataEndStatusEnum;
    00622 typedef UInt16 PhnPacketDataEndStatusType;
    00623 #define isValidPacketDataEndStatus(x) (x < phnPacketDataEndStatusLast)
    00624
    00625 #define PhnDataSessionStateTypeMajorVersion 0x0001L  // high word
    00626 #define PhnDataSessionStateTypeMinorVersion 0x0000L  // low  word
    00627 #define PhnDataSessionStateTypeVersion      (((UInt32)PhnDataSessionStateTypeMajorVersion << 16) | PhnDataSessionStateTypeMinorVersion)
    00628 typedef struct
    00629 {
    00630   UInt32                      version;          /**< (1.0) should be set to the structure version that you are requesting                   */
    00631   PhnDataServiceType          availableService; /**< (1.0) data connection type available                                                   */
    00632   PhnDataServiceType          sessionType;      /**< (1.0) data connection type (valid only if status is Active or Dormant)                 */
    00633   PhnPacketDataSessionType    sessionStatus;    /**< (1.0) data connection status                                                           */
    00634   PhnPacketDataEndStatusType  disconnectStatus; /**< (1.0) data connection end status (only useful after a data call has been terminated)   */
    00635 }
    00636 PhnDataSessionStateType;
    00637
    00638
    00639 /**
    00640  *
    00641  **/
    00642 typedef struct
    00643 {
    00644   UInt32 timeInSecs;        /**< Current time in minutes */
    00645   Boolean daylightSavings;  /**< Is this daylight savings  */
    00646   Int16 timeZone;          /**< Number of minutes east of GMT  */
    00647   UInt8  daylightSavingsHour; /**< DST adjusted hours : GSM Only  */
    00648
    00649 } PhnNetworkTime;
    00650
    00651
    00652 #endif // _HS_PHONE_NETWORK_TYPES_H__

Top | Palm Developer Network © 2004-2008, Palm, Inc. All rights reserved. Generated on Fri Jun 13 10:06:53 2008 for Palm API Guide