glnet_distr/inc/glsupl2.h File Reference

Interface to SUPL v2.0 Library. More...

#include "glrrlps8.h"
#include "glsupl2locationid.h"
#include "glsupl2init.h"
#include "glgpsapi.h"
Include dependency graph for glsupl2.h:

Classes

struct  GLSUPL_GANSSPositioningMethodTypes
 SET Capabilities. More...
struct  GLSUPL_GANSSSignals
 Defines the supported GANSS (i.e. More...
struct  GLSUPL_GANSSPositionMethods
 Defines the supported GANSS (i.e. More...
struct  GLSUPL_PosTechnology
 SET Capabilities. More...
struct  GLSUPL_ServicesSupported
 Defines the supported services by the SET. More...
struct  GLSUPL_RepMode
 Supported reporting mode(s): More...
struct  GLSUPL_BatchRepCap
 Defines the type of batch reporting capabilities supported by the SET (only applicable to quasi real time and batch reporting): More...
struct  GLSUPL_ReportingCap
 Defines the reporting capabilities of the SET. More...
struct  GLSUPL_GeoAreaShapesSupported
 This parameter defines the geographic target area shapes supported by the SET in addition to mandatory circular area: More...
struct  GLSUPL_EventTriggerCapabilities
 Defines the event trigger capabilities of the SET. More...
struct  GLSUPL_SessionCapabilities
 Defines the session capabilities of the SET. More...
struct  GLSUPL_ServiceCapabilities
 The service capabilities of the SET are described in this parameter. More...
struct  GLSUPL_SupportedBearers
 This parameter indicates which bearers the SET supports Note that each bearer in this list must be supported by the SET, but not all at the same time. More...
struct  GLSUPL_PosProtocolVersion3GPP
 Specifies supported protocol versions. More...
struct  GLSUPL_Supported3GPP2PosProtocolVersion
 Specifies supported protocol versions. More...
struct  GLSUPL_PosProtocolVersion3GPP2
 Specifies supported protocol versions. More...
struct  GLSUPL_PosProtocol
 Positioning protocol. More...
struct  GLSUPL_SETCapabilities
 SET Capabilities. More...
struct  GLSUPL_Position
 Position. More...
struct  GLSUPL_SetID
 SET ID. More...
struct  GLSUPL_ApplicationID
 Application ID. More...
struct  GLSUPL_Session
 Session buffer. More...
struct  GLSUPL_Connection
 Connection. More...

Defines

SUPL API Version (implements SUPL 2.0.0 specification)
#define GLSUPL_API_VER   2
 Version number of API.

Typedefs

typedef struct
GLSUPL_GANSSPositioningMethodTypes 
GLSUPL_GANSSPositioningMethodTypes
 SET Capabilities.
typedef struct GLSUPL_GANSSSignals GLSUPL_GANSSSignals
 Defines the supported GANSS (i.e.
typedef struct
GLSUPL_GANSSPositionMethods 
GLSUPL_GANSSPositionMethods
 Defines the supported GANSS (i.e.
typedef struct GLSUPL_PosTechnology GLSUPL_PosTechnology
 Positioning Technology.
typedef enum GLSUPL_PrefMethod GLSUPL_PrefMethod
 Preferred Method.
typedef struct
GLSUPL_ServicesSupported 
GLSUPL_ServicesSupported
 Defines the supported services by the SET.
typedef struct GLSUPL_RepMode GLSUPL_RepMode
 Supported reporting mode(s):
typedef struct GLSUPL_BatchRepCap GLSUPL_BatchRepCap
 Defines the type of batch reporting capabilities supported by the SET (only applicable to quasi real time and batch reporting):
typedef struct GLSUPL_ReportingCap GLSUPL_ReportingCap
 Defines the reporting capabilities of the SET.
typedef struct
GLSUPL_GeoAreaShapesSupported 
GLSUPL_GeoAreaShapesSupported
 This parameter defines the geographic target area shapes supported by the SET in addition to mandatory circular area:
typedef struct
GLSUPL_EventTriggerCapabilities 
GLSUPL_EventTriggerCapabilities
 Defines the event trigger capabilities of the SET.
typedef struct
GLSUPL_SessionCapabilities 
GLSUPL_SessionCapabilities
 Defines the session capabilities of the SET.
typedef struct
GLSUPL_ServiceCapabilities 
GLSUPL_ServiceCapabilities
 The service capabilities of the SET are described in this parameter.
typedef struct
GLSUPL_SupportedBearers 
GLSUPL_SupportedBearers
 This parameter indicates which bearers the SET supports Note that each bearer in this list must be supported by the SET, but not all at the same time.
typedef struct
GLSUPL_PosProtocolVersion3GPP 
GLSUPL_PosProtocolVersion3GPP
 Specifies supported protocol versions.
typedef struct
GLSUPL_Supported3GPP2PosProtocolVersion 
GLSUPL_Supported3GPP2PosProtocolVersion
 Specifies supported protocol versions.
typedef struct
GLSUPL_PosProtocolVersion3GPP2 
GLSUPL_PosProtocolVersion3GPP2
 Specifies supported protocol versions.
typedef struct GLSUPL_PosProtocol GLSUPL_PosProtocol
 Positioning protocol.
typedef struct
GLSUPL_SETCapabilities 
GLSUPL_SETCapabilities
 SET Capabilities.
typedef struct GLSUPL_Position GLSUPL_Position
 Position.
typedef enum GLSUPL_SetIDType GLSUPL_SetIDType
 SET ID Type.
typedef struct GLSUPL_SetID GLSUPL_SetID
 SET ID.
typedef struct GLSUPL_ApplicationID GLSUPL_ApplicationID
 Application ID.
typedef enum GLSUPL_StatusCode GLSUPL_StatusCode
 Status Code.
typedef struct GLSUPL_Session GLSUPL_Session
 Session buffer.
typedef enum GLSUPL_ConnectionType GLSUPL_ConnectionType
 Connection Type SLP address should be considered by client.
typedef enum
GLSUPL_ConnectionPriority 
GLSUPL_ConnectionPriority
 Connection Priority.
typedef struct GLSUPL_Connection GLSUPL_Connection
 Connection.
typedef enum GLSUPL_LOG_SEVERITY GLSUPL_LOG_SEVERITY
 Log severity.
typedef enum GLSUPL_HmacHash GLSUPL_HmacHash
 HMAC hash algorithm.

Enumerations

enum  GLSUPL_PrefMethod
 Preferred Method. More...
enum  GLSUPL_SetIDType
 SET ID Type. More...
enum  GLSUPL_StatusCode {
  GLSUPL_unspecified = 0, GLSUPL_systemFailure = 1, GLSUPL_unexpectedMessage = 2, GLSUPL_protocolError = 3,
  GLSUPL_dataMissing = 4, GLSUPL_unexpectedDataValue = 5, GLSUPL_posMethodFailure = 6, GLSUPL_posMethodMismatch = 7,
  GLSUPL_posProtocolMismatch = 8, GLSUPL_targetSETnotReachable = 9, GLSUPL_versionNotSupported = 10, GLSUPL_resourceShortage = 11,
  GLSUPL_invalidSessionId = 12, GLSUPL_nonProxyModeNotSupported = 13, GLSUPL_proxyModeNotSupported = 14, GLSUPL_positioningNotPermitted = 15,
  GLSUPL_authNetFailure = 16, GLSUPL_authSuplinitFailure = 17, GLSUPL_consentDeniedByUser = 100, GLSUPL_consentGrantedByUser = 101,
  GLSUPL_unspecified = 0, GLSUPL_systemFailure = 1, GLSUPL_unexpectedMessage = 2, GLSUPL_protocolError = 3,
  GLSUPL_dataMissing = 4, GLSUPL_unexpectedDataValue = 5, GLSUPL_posMethodFailure = 6, GLSUPL_posMethodMismatch = 7,
  GLSUPL_posProtocolMismatch = 8, GLSUPL_targetSETnotReachable = 9, GLSUPL_versionNotSupported = 10, GLSUPL_resourceShortage = 11,
  GLSUPL_invalidSessionId = 12, GLSUPL_nonProxyModeNotSupported = 13, GLSUPL_proxyModeNotSupported = 14, GLSUPL_positioningNotPermitted = 15,
  GLSUPL_authNetFailure = 16, GLSUPL_authSuplinitFailure = 17, GLSUPL_incompatibleProtectionLevel = 18, GLSUPL_serviceNotSupported = 19,
  GLSUPL_insufficientInterval = 20, GLSUPL_noSUPLCoverage = 21, GLSUPL_consentDeniedByUser = 100, GLSUPL_consentGrantedByUser = 101,
  GLSUPL_sessionStopped = 102, GLSUPL_appIdDenied = 103
}
 Status Code. More...
enum  GLSUPL_ConnectionType { ,
  GLSUPL_CONNECTION_URL, GLSUPL_CONNECTION_IPv4, GLSUPL_CONNECTION_IPv6 , GLSUPL_CONNECTION_URL,
  GLSUPL_CONNECTION_IPv4, GLSUPL_CONNECTION_IPv6
}
 Connection Type SLP address should be considered by client. More...
enum  GLSUPL_ConnectionPriority
 Connection Priority.
enum  GLSUPL_LOG_SEVERITY {
  LOG_SUPL_EMERG, LOG_SUPL_ALERT, LOG_SUPL_CRIT, LOG_SUPL_ERR,
  LOG_SUPL_WARNING, LOG_SUPL_NOTICE, LOG_SUPL_INFO, LOG_SUPL_DEBUG,
  LOG_SUPL_EMERG, LOG_SUPL_ALERT, LOG_SUPL_CRIT, LOG_SUPL_ERR,
  LOG_SUPL_WARNING, LOG_SUPL_NOTICE, LOG_SUPL_INFO, LOG_SUPL_DEBUG
}
 Log severity. More...
enum  GLSUPL_HmacHash
 HMAC hash algorithm.

Functions

unsigned long glcb_supl_OsGetMsTime (void)
 Called by the SUPL engine to get system time counter in milliseconds.
void glcb_supl_LoadGPSEphemerisExension (GLSUPL_Session *session)
 Called by the SUPL engine to request load GPS Ephemeris Extension file.
GLBOOL glsupl_ProcessGPSEphemerisExension (GLSUPL_Session *session, const unsigned char *buf, int size)
 Called to process GPS Ephemeris Extension file.
void glsupl_SetTime (GLSUPL_Session *session, GLSUPL_Time *time)
 SUPL HAL calls this function to report GPS time from 3rd party GPS device.
SUPL API functions

GLSUPL_Sessionglsupl_Create ()
 Create SUPL session.
void glsupl_Abort (GLSUPL_Session *session)
 Abort SUPL session.
void glsupl_AbortWithStatusCode (GLSUPL_Session *session, GLSUPL_StatusCode code)
 Abort SUPL session with status code.
GLBOOL glsupl_Request (GLSUPL_Session *session, GLSUPL_QoP *qop, GLSUPL_ApplicationID *appID)
 Start SUPL request.
void glsupl_RequestAssistanceData (GLSUPL_Session *session, GLRRLP_RequestedAssistData *reqData)
 Response on glcb_supl_RequestAssistanceData() or can be called after receiving positioning request to request additional assistance data.
void glsupl_SetPosition (GLSUPL_Session *session, const GLSUPL_Position *pPos)
 Response on glcb_supl_ReqPosition()
void glsupl_ReportGpsMeasurements (GLSUPL_Session *session, const GLRRLP_GPS_MeasureInfo *pMes)
 Response to MSA request.
void glsupl_ReportLocationInfo (GLSUPL_Session *session, const GLRRLP_LocationInfo *pLoc)
 Response to MSB or autonomous request.
void glsupl_NetworkRequest (GLSUPL_Session *session, const unsigned char *pucBuf, int nBytes, const unsigned char *ver)
 Initiate Network Initiated request.
void glsupl_Data (GLSUPL_Session *session, const unsigned char *pucBuf, int nBytes)
 This function should be called to deliver SUPL messages to GLL.
void glsupl_SetCapabilities (GLSUPL_Session *session, const GLSUPL_SETCapabilities *pCap)
 Sets default capabilities for GLL SUPL protocol stack.
void glsupl_GetCapabilities (GLSUPL_Session *session, GLSUPL_SETCapabilities *pCap)
 Gets capabilities from GLL SUPL protocol stack.
void glsupl_SetTimers (GLSUPL_Session *session, unsigned long ut1, unsigned long ut2, unsigned long ut3)
 Allows to customize values for timers UT1, UT2, and UT3.
void glsupl_Connect (GLSUPL_Session *session, GLBOOL bSuccess)
 Inform GLL SUPL protocol stack that SUPL connection has been established (bSuccess = 1) or not (bSuccess = 0)
void glsupl_Disconnected (GLSUPL_Session *session)
 Inform GLL SUPL protocol stack that SUPL connection has been terminated.
GLBOOL glsupl_SetID (GLSUPL_Session *session, const GLSUPL_SetID *pSuplSetID)
 Sets the SUPL ID in the GLL SUPL protocol stack.
GLBOOL glsupl_SetVersion (GLSUPL_Session *session, unsigned char uVersion)
 Sets SUPL protocol version.
GLBOOL glsupl_SetHmacHash (GLSUPL_Session *session, GLSUPL_HmacHash hmacHash)
 Sets HMAC hash algorithm.
void glsupl_VerificationRsp (GLSUPL_Session *session, GLBOOL bAllow)
 Respond to glcb_supl_NotificationVerificationReq()
void glsupl_SetLocationId (GLSUPL_Session *session, const GLSUPL_LocationId *pLocationId)
 Sets the Location Information for the LBS SUPL protocol stack.
SUPL callbacks to apply Assistance Data
void glcb_supl_SetReferenceTime (GLSUPL_Session *session, const GLRRLP_ReferenceTime *refTime)
 Reference Time.
void glcb_supl_SetReferenceLocation (GLSUPL_Session *session, const GLRRLP_PositionEstimate *refLoc)
 Reference Location.
void glcb_supl_SetAcquisitionAssistance (GLSUPL_Session *session, const GLRRLP_AcquisAssist *acqAssist)
 Acquisition Assistance.
void glcb_supl_SetGanssAcquisitionAssistance (GLSUPL_Session *session, const GANSS_ACQ_AID *acqAssist)
 GANSS Acquisition Assistance.
void glcb_supl_SetAlmanac (GLSUPL_Session *session, const GLRRLP_Almanac *alm)
 Almanac.
void glcb_supl_SetGlnsAsstAlm (GLSUPL_Session *session, const GlGlnsAlmanac *pAlm)
 GLONASS Almanac.
void glcb_supl_SetNavModel (GLSUPL_Session *session, const GLRRLP_SeqOfNavModelElement *nav)
 Navigation Model.
void glcb_supl_SetGlnsAsstEph (GLSUPL_Session *session, const GlUncmprsdGlnEph *pEph)
 GLONASS Navigation Model.
void glcb_supl_SetIonosphericModel (GLSUPL_Session *session, const GLRRLP_IonosphericModel *iono)
 Ionospheric Model.
void glcb_supl_SetUTCModel (GLSUPL_Session *session, const GLRRLP_UTCModel *utc)
 UTC Model.
void glcb_supl_SetDGPSCorrections (GLSUPL_Session *session, const GLRRLP_DGPSCorrections *dgpsc)
 DGPS Corrections.
void glcb_supl_SetRTIntegrity (GLSUPL_Session *session, const GLRRLP_BadSatellites *rti)
 Real Time Integrity.
SUPL callback functions
void glcb_supl_Log (GLSUPL_LOG_SEVERITY sev, const char *fmt,...)
 Log message.
void glcb_supl_ExceptionAssert (const char *file, unsigned line, const char *msg)
 Exception Assert.
void glcb_supl_ReportFromSuplEnd (GLSUPL_Session *session, const GLSUPL_Position *pos, const GLSUPL_StatusCode *code)
 Report position and status code information to the application when it is received from SLP (SUPL) server in SUPL_END message.
void glcb_supl_SendingSuplEnd (GLSUPL_Session *session, const GLSUPL_StatusCode *code)
 Report status code information to the application before it sent to SLP (SUPL) server in SUPL_END message.
void glcb_supl_Write (GLSUPL_Session *session, const unsigned char *data, unsigned nBytes)
 Called by the SUPL engine to write the encoded bytes to the network.
void glcb_supl_ReqLocationId (GLSUPL_Session *session)
 Called by the SUPL engine to request the Cell Information.
void glcb_supl_ReqPosition (GLSUPL_Session *session, GLSUPL_PosMethod posMethod, const GLSUPL_QoP *qop)
 Called by the SUPL engine to request the position of SET.
void glcb_supl_RequestAssistanceData (GLSUPL_Session *session, GLSUPL_PosMethod method)
 Called by the SUPL engine to request the Assistance Data.
void glcb_supl_ReqConnection (GLSUPL_Session *session)
 Called by the SUPL engine to request SUPL Connection.
void glcb_supl_NotificationVerificationReq (GLSUPL_Session *session, const GLSUPL_Notification *notif)
 Called by the SUPL engine after receiving SUPL-INIT message.
void glcb_supl_EndConnection (GLSUPL_Session *session)
 Called by the SUPL engine to inform that SUPL connection is no longer necessary.
void glcb_supl_EndSession (GLSUPL_Session *session)
 Called by the SUPL engine to inform that all data associated with session is no longer necessary.
void * glcb_supl_Allocate (unsigned long size)
 Called by the SUPL engine to allocate memory buffer.
void glcb_supl_Deallocate (void *buffer)
 Called by the SUPL engine to deallocate session.
void glcb_supl_StartSingleShot (GLSUPL_Session *session, const GLRRLP_PositionInstruct *positionInstruct)
 Called by the SUPL engine to execute positioning request for GLL engine.
Callback to save LTO to file
void glcb_supl_SaveLto (GLSUPL_Session *session, const unsigned char *buf, int size)
Timer functions

Returning GLFALSE will result in calling glcb_supl_DestroyTimer()

void * glcb_supl_CreateTimer (GLSUPL_Session *session)
 Create Timer.
GLBOOL glcb_supl_DisarmTimer (GLSUPL_Session *session, void *pTimer)
 Disarm Timer.
GLBOOL glcb_supl_ArmTimer (GLSUPL_Session *session, void *pTimer, unsigned long ulMs)
 Arm Timer.
void glcb_supl_DestroyTimer (GLSUPL_Session *session, void *pTimer)
 Destroy Timer.
void glsupl_Timeout (GLSUPL_Session *session, void *pTimer)
 Timer Timeout.

Detailed Description

Interface to SUPL v2.0 Library.

Copyright 2001-2011 Broadcom Corporation -- http://www.broadcom.com This program is the proprietary software of Broadcom Corporation and/or its licensors, and may only be used, duplicated, modified or distributed pursuant to the terms and conditions of a separate, written license agreement executed between you and Broadcom (an "Authorized License"). Except as set forth in an Authorized License, Broadcom grants no license (express or implied), right to use, or waiver of any kind with respect to the Software, and Broadcom expressly reserves all rights in and to the Software and all intellectual property rights therein. IF YOU HAVE NO AUTHORIZED LICENSE, THEN YOU HAVE NO RIGHT TO USE THIS SOFTWARE IN ANY WAY, AND SHOULD IMMEDIATELY NOTIFY BROADCOM AND DISCONTINUE ALL USE OF THE SOFTWARE.

Please refer to OMA SUPL 2.0 specification and 3GPP RRLP specification for more information

SUPL: OMA-ERP-SUPL-V2_0-20100909-C RRLP: 3GPP TS 44.031 V5.12.0


Define Documentation

#define GLSUPL_API_VER   2

Version number of API.


Typedef Documentation

Application ID.

Indicates the application ID for SET initiated call flows.

Reference: OMA SUPL TS (Section 10.36 Application ID)

ASN.1 specification:

ApplicationID ::= SEQUENCE {
    appProvider IA5String(SIZE (1..24)),            -- The application provider
    appName     IA5String(SIZE (1..32)),            -- The application name
    appVersion  IA5String(SIZE (1..8)) OPTIONAL,    -- The application version
    ...
}

Defines the type of batch reporting capabilities supported by the SET (only applicable to quasi real time and batch reporting):

  • Report position (true if reporting of position is allowed, false otherwise)
  • Report measurements (true if reporting of measurements is supported, false otherwise)
  • Maximum number of positions (range: 1 to 1024)
  • Maximum number of measurements (range: 1 to 1024)

Reference: OMA SUPL TS (Section 10.10 SET capabilities).

ASN.1 specification:

BatchRepCap ::= SEQUENCE {
  report-position	BOOLEAN, -- set to "true" if reporting of position is supported
  report-measurements	BOOLEAN, -- set to "true" if reporting of measurements is supported
  max-num-positions	INTEGER (1..1024) OPTIONAL,
  max-num-measurements INTEGER (1..1024) OPTIONAL,
  ...
}

Connection Type SLP address should be considered by client.

This type can be used with SET originated connections when SLP address is unknown to build-in SUPL engine.

Defines the event trigger capabilities of the SET.

This parameter is only required if area event triggers are supported by the SET in which case the parameter is mandatory.

Reference: OMA SUPL TS (Section 10.10 SET capabilities).

ASN.1 specification:

EventTriggerCapabilities ::= SEQUENCE {
  geoAreaShapesSupported        	GeoAreaShapesSupported,
  maxNumGeoAreaSupported	INTEGER (0..maxNumGeoArea) OPTIONAL,
  maxAreaIdListSupported	INTEGER (0..maxAreaIdList) OPTIONAL,
  maxAreaIdSupportedPerList	INTEGER (0..maxAreaId) OPTIONAL,
  ...
}

maxNumGeoArea INTEGER ::= 32

maxAreaId INTEGER ::= 256

maxAreaIdList INTEGER ::= 32

SET Capabilities.

modules.

This section contains descriptions of the SUPL library portion of the LBS.
Structures defined according to OMA-TS-UPL-V2_0-20100816-C
Reference: OMA SUPL TS (Section 10. Parameter Definitions).

SUPL API functions
SUPL structures Defines the positioning technology.

Reference: OMA SUPL TS (Section 10.10 SET capabilities).

ASN.1 specification:

GANSSPositioningMethodTypes ::= SEQUENCE {
  setAssisted	BOOLEAN,
  setBased	BOOLEAN,
  autonomous	BOOLEAN,
  ...
}

Defines the supported GANSS (i.e.

other than A-GPS). If included, this parameter is repeated for each supported GANSS. In addition, in the case of SBAS the parameter is repeated for each supported SBAS.

Reference: OMA SUPL TS (Section 10.10 SET capabilities).

ASN.1 specification:

GANSSPositionMethods ::= SEQUENCE (SIZE(1..16)) OF GANSSPositionMethod

Defines the supported GANSS (i.e.

other than A-GPS).

Reference: OMA SUPL TS (Section 10.10 SET capabilities).

ASN.1 specification:

GANSSPositionMethod ::= SEQUENCE {
  ganssId			INTEGER(0..15), -- coding according to parameter definition in section 10.10
  ganssSBASid 		BIT STRING(SIZE(3)) OPTIONAL, --coding according to parameter definition in section 10.10
  gANSSPositioningMethodTypes	GANSSPositioningMethodTypes,
  gANSSSignals		GANSSSignals,
  ...
}

GANSSSignals ::= BIT STRING {
  signal1 (0),
  signal2 (1),
  signal3 (2),
  signal4 (3),
  signal5 (4),
  signal6 (5),
  signal7 (6),
  signal8 (7)} (SIZE (1..8))

This parameter defines the geographic target area shapes supported by the SET in addition to mandatory circular area:

  • Elliptical
  • Polygon

Reference: OMA SUPL TS (Section 10.10 SET capabilities).

ASN.1 specification:

GeoAreaShapesSupported ::= SEQUENCE {
  ellipticalArea   BOOLEAN,
  polygonArea      BOOLEAN,
  ...
}

Position.

This parameter describes the position of the SET. The parameter also contains a timestamp and optionally the velocity. timestamp format as defined in ASN.1 specification as UTCTime: yymmddhhnnssZ where: yy - year mm - month [01..12] hh - hour [00..23] nn - minutes [00..59] ss - seconds [00..59] Z - character indicating UTC (or Zulu) time.

Reference: OMA SUPL TS (Section 10.7 Position).

ASN.1 specification:

Position ::= SEQUENCE {
    timestamp           UTCTime,            -- shall include seconds and shall use UTC time.
    positionEstimate    PositionEstimate,
    velocity            Velocity            OPTIONAL,
    ...
}

Positioning protocol.

Zero or more of the following positioning protocols (bitmap):

  • RRLP
  • RRC
  • TIA-801

Reference: OMA SUPL TS (Section 10.10 SET capabilities).

ASN.1 specification:

PosProtocol ::= SEQUENCE {
  tia801 BOOLEAN,
  rrlp  BOOLEAN,
  rrc   BOOLEAN,
  ...,
  ver2-PosProtocol-extension    Ver2-PosProtocol-extension OPTIONAL
}

Ver2-PosProtocol-extension ::= SEQUENCE {
  lpp     BOOLEAN,
posProtocolVersionRRLP	PosProtocolVersion3GPP OPTIONAL,
posProtocolVersionRRC	PosProtocolVersion3GPP OPTIONAL,
posProtocolVersionTIA801	PosProtocolVersion3GPP2 OPTIONAL,
posProtocolVersionLPP  PosProtocolVersion3GPP OPTIONAL,
...}

Specifies supported protocol versions.

Reference: OMA SUPL TS (Section 10.10 SET capabilities).

ASN.1 specification:

PosProtocolVersion3GPP ::= SEQUENCE {
  majorVersionField      INTEGER(0..255),
  technicalVersionField  INTEGER(0..255),
  editorialVersionField  INTEGER(0..255),
...}

Specifies supported protocol versions.

Reference: OMA SUPL TS (Section 10.10 SET capabilities).

ASN.1 specification:

PosProtocolVersion3GPP2 ::= SEQUENCE (SIZE(1..8)) OF Supported3GPP2PosProtocolVersion

Positioning Technology.

Defines the positioning technology. Zero or more of the following positioning technologies (bitmap):

  • SET-assisted A-GPS
  • SET-based A-GPS
  • Autonomous GPS
  • AFLT
  • E-CID
  • E-OTD

Reference: OMA SUPL TS (Section 10.10 SET capabilities).

ASN.1 specification:

PosTechnology ::= SEQUENCE {
  agpsSETassisted  BOOLEAN,
  agpsSETBased     BOOLEAN,
  autonomousGPS    BOOLEAN,
  aFLT             BOOLEAN,
  eCID             BOOLEAN,
  eOTD             BOOLEAN,
  oTDOA            BOOLEAN,
  ...,
  ver2-PosTechnology-extension	Ver2-PosTechnology-extension OPTIONAL
}
Ver2-PosTechnology-extension ::= SEQUENCE {
  gANSSPositionMethods  GANSSPositionMethods OPTIONAL,
  ...
}

Preferred Method.

One of the following preferred modes:

  • A-GPS SET-assisted preferred
  • A-GPS SET-based preferred
  • No preferred mode

Reference: OMA SUPL TS (Section 10.10 SET capabilities).

ASN.1 specification:

PrefMethod ::= ENUMERATED {
    agpsSETassistedPreferred,
    agpsSETBasedPreferred,
    noPreference
}
-- To achieve compatibility  with ULP V1.0 the names of the enumerations are
-- kept the same as in ULP V1.0. agps shall be interpreted as agnss.

Supported reporting mode(s):

  • Real time
  • Quasi real time
  • Batch reporting (At least one of the three reporting modes must be supported)

Reference: OMA SUPL TS (Section 10.10 SET capabilities).

ASN.1 specification:

RepMode ::= SEQUENCE {
  realtime 	BOOLEAN,
  quasirealtime 	BOOLEAN,
  batch 		BOOLEAN,
  ...
}

Defines the reporting capabilities of the SET.

This parameter is only required if area event triggers are supported by the SET in which case the parameter is mandatory.

Reference: OMA SUPL TS (Section 10.10 SET capabilities).

ASN.1 specification:

ReportingCap ::= SEQUENCE {
  minInt	INTEGER (1..3600), -- units in seconds
  maxInt	INTEGER (1..1440) OPTIONAL, -- units in minutes
  repMode	RepMode,
  batchRepCap	BatchRepCap OPTIONAL, -- only used for batch and quasi real time reporting
  ...
}

The service capabilities of the SET are described in this parameter.

The SET MAY send this parameter in SUPL START, SUPL POS INIT, SUPL TRIGGERED START, SUPL AUTH REQ and SUPL END. The purpose of this parameter is to inform the H-SLP about the service capabilities of the SET

Reference: OMA SUPL TS (Section 10.10 SET capabilities).

ASN.1 specification:

ServiceCapabilities ::= SEQUENCE {
  servicesSupported		ServicesSupported,
  reportingCapabilities	ReportingCap OPTIONAL,
  eventTriggerCapabilities	EventTriggerCapabilities OPTIONAL,
  sessionCapabilities		SessionCapabilities,
  ...
}

Defines the supported services by the SET.

Only Network Initiated services are relevant in this context. Zero or more of the following services are supported:

  • Periodic Trigger
  • Area Event Trigger

Reference: OMA SUPL TS (Section 10.10 SET capabilities).

ASN.1 specification:

ServicesSupported ::= SEQUENCE {
  periodicTrigger	BOOLEAN,
  areaEventTrigger	BOOLEAN,
  ...
}

Defines the session capabilities of the SET.

Reference: OMA SUPL TS (Section 10.10 SET capabilities).

ASN.1 specification:

SessionCapabilities ::= SEQUENCE {
  maxNumberTotalSessions	INTEGER (1..128),
  maxNumberPeriodicSessions	INTEGER (1..32),
  maxNumberTriggeredSessions	INTEGER (1..32),
  ...
}

SET Capabilities.

SET capabilities (not mutually exclusive) in terms of supported positioning technologies and positioning protocols.

Reference: OMA SUPL TS (Section 10.10 SET capabilities).

ASN.1 specification:

SETCapabilities ::= SEQUENCE {
    posTechnology   PosTechnology,
    prefMethod      PrefMethod,
    posProtocol     PosProtocol,
    ...,
    ver2-SETCapabilities-extension	Ver2-SETCapabilities-extension OPTIONAL
}

Ver2-SETCapabilities-extension ::= SEQUENCE {
    serviceCapabilities	ServiceCapabilities OPTIONAL,
    ...,
    supportedBearers SupportedBearers OPTIONAL
}
typedef struct GLSUPL_SetID GLSUPL_SetID

SET ID.

SET identity value. This parameter can be of type:

  • MSISDN
  • MDN
  • MIN
  • IMSI
  • NAI
  • IPAddress -- IPv4 -- IPv6

Reference: OMA SUPL TS (Section 10.14.1 SET Session ID).

ASN.1 specification:

SETId ::= CHOICE {
    msisdn      OCTET STRING(SIZE (8)),
    mdn         OCTET STRING(SIZE (8)),
    min         BIT STRING(SIZE (34)), -- coded according to TIA-553
    imsi        OCTET STRING(SIZE (8)),
    nai         IA5String(SIZE (1..1000)),
    iPAddress   IPAddress,
    ...
}
-- msisdn, mnd and imsi are a BCD (Binary Coded Decimal) string 
-- represent digits from 0 through 9, 
-- two digits per octet, each digit encoded 0000 to 1001 (0 to 9)
-- bits 8765 of octet n encoding digit 2n
-- bits 4321 of octet n encoding digit 2(n-1) +1
-- not used digits in the string shall be filled with 1111   

IPAddress ::= CHOICE {
  ipv4Address  OCTET STRING(SIZE (4)),
  ipv6Address  OCTET STRING(SIZE (16))}

SET ID Type.

SET Session ID type.

Reference: OMA SUPL TS (Section 10.14.1 SET Session ID)

Status Code.

The different status codes, either error or information indicators, as described in the table below.

Reference: OMA SUPL TS (Section 10.6 Status Code)

Specifies supported protocol versions.

Reference: OMA SUPL TS (Section 10.10 SET capabilities).

ASN.1 specification:

Supported3GPP2PosProtocolVersion ::= SEQUENCE {
  revisionNumber        BIT STRING(SIZE (6)), -- the location standard revision number the SET supports coded according to 3GPP2 C.S0022
  pointReleaseNumber    INTEGER(0..255),
  internalEditLevel         INTEGER(0..255),
...}

This parameter indicates which bearers the SET supports Note that each bearer in this list must be supported by the SET, but not all at the same time.

The parameter indicates support for one or more of the following:

  • GSM
  • WCDMA/TD-SCDMA
  • CDMA
  • HRPD
  • UMB
  • LTE
  • WLAN
  • WiMAX

Reference: OMA SUPL TS (Section 10.10 SET capabilities).

ASN.1 specification:

SupportedBearers ::= SEQUENCE {
  gsm		BOOLEAN,
  wcdma		BOOLEAN,
  lte		BOOLEAN,
  cdma		BOOLEAN,
  hprd		BOOLEAN,
  umb		BOOLEAN,
  wlan		BOOLEAN,
  wiMAX		BOOLEAN,
  ...
}

Enumeration Type Documentation

Connection Type SLP address should be considered by client.

This type can be used with SET originated connections when SLP address is unknown to build-in SUPL engine.

Enumerator:
GLSUPL_CONNECTION_URL 

URL.

GLSUPL_CONNECTION_IPv4 

IP Address v4.

GLSUPL_CONNECTION_IPv6 

IP Address v6.

GLSUPL_CONNECTION_URL 

URL.

GLSUPL_CONNECTION_IPv4 

IP Address v4.

GLSUPL_CONNECTION_IPv6 

IP Address v6.

Log severity.

Enumerator:
LOG_SUPL_EMERG 

system is unusable

LOG_SUPL_ALERT 

action must be taken immediately

LOG_SUPL_CRIT 

critical condition

LOG_SUPL_ERR 

error conditions

LOG_SUPL_WARNING 

warning conditions

LOG_SUPL_NOTICE 

normal but significant condition

LOG_SUPL_INFO 

informational

LOG_SUPL_DEBUG 

debug-level messages

LOG_SUPL_EMERG 

system is unusable

LOG_SUPL_ALERT 

action must be taken immediately

LOG_SUPL_CRIT 

critical condition

LOG_SUPL_ERR 

error conditions

LOG_SUPL_WARNING 

warning conditions

LOG_SUPL_NOTICE 

normal but significant condition

LOG_SUPL_INFO 

informational

LOG_SUPL_DEBUG 

debug-level messages

Preferred Method.

One of the following preferred modes:

  • A-GPS SET-assisted preferred
  • A-GPS SET-based preferred
  • No preferred mode

Reference: OMA SUPL TS (Section 10.10 SET capabilities).

ASN.1 specification:

PrefMethod ::= ENUMERATED {
    agpsSETassistedPreferred,
    agpsSETBasedPreferred,
    noPreference
}
-- To achieve compatibility  with ULP V1.0 the names of the enumerations are
-- kept the same as in ULP V1.0. agps shall be interpreted as agnss.

SET ID Type.

SET Session ID type.

Reference: OMA SUPL TS (Section 10.14.1 SET Session ID)

Status Code.

The different status codes, either error or information indicators, as described in the table below.

Reference: OMA SUPL TS (Section 10.6 Status Code)

Enumerator:
GLSUPL_unspecified 

The error is unknown.

GLSUPL_systemFailure 

System Failure.

GLSUPL_unexpectedMessage 

Unexpected message received.

GLSUPL_protocolError 

Protocol parsing error.

GLSUPL_dataMissing 

Needed data value is missing.

GLSUPL_unexpectedDataValue 

A datavalue takes a value that cannot be used.

GLSUPL_posMethodFailure 

The underlying positioning method returned a failure.

GLSUPL_posMethodMismatch 

No positioning method could be found matching requested QoP, SET capabilities and positioning method specified by SLP.

GLSUPL_posProtocolMismatch 

No positioning protocol could be found being available at SET and SLP.

GLSUPL_targetSETnotReachable 

The SET was not responding.

GLSUPL_versionNotSupported 

Wrong ULP version.

GLSUPL_resourceShortage 

There were not enough resources available to serve the SET.

GLSUPL_invalidSessionId 

Invalid session identity.

GLSUPL_nonProxyModeNotSupported 

The SET does not support "Non-Proxy" mode of operation.

GLSUPL_proxyModeNotSupported 

The SET does not support "Proxy" mode of operation.

GLSUPL_positioningNotPermitted 

The SET is not authorized by the SLP.

GLSUPL_authNetFailure 

The network does not authenticate the SET, only used in SUPL AUTH_RESP.

GLSUPL_authSuplinitFailure 

The SUPL INIT message is not authenticated by the SET or the SLP.

GLSUPL_consentDeniedByUser 

User denied consent for location determination session.

GLSUPL_consentGrantedByUser 

User granted consent for location determination session.

GLSUPL_unspecified 

The error is unknown.

GLSUPL_systemFailure 

System Failure.

GLSUPL_unexpectedMessage 

Unexpected message received.

GLSUPL_protocolError 

Protocol parsing error.

GLSUPL_dataMissing 

Needed data value is missing.

GLSUPL_unexpectedDataValue 

A datavalue takes a value that cannot be used.

GLSUPL_posMethodFailure 

The underlying positioning method returned a failure.

GLSUPL_posMethodMismatch 

No positioning method could be found matching requested QoP, SET capabilities and positioning method specified by SLP.

GLSUPL_posProtocolMismatch 

No positioning protocol could be found being available at SET and SLP.

GLSUPL_targetSETnotReachable 

The SET was not responding.

GLSUPL_versionNotSupported 

Wrong ULP version.

GLSUPL_resourceShortage 

There were not enough resources available to serve the SET.

GLSUPL_invalidSessionId 

Invalid session identity.

GLSUPL_nonProxyModeNotSupported 

The SET does not support "Non-Proxy" mode of operation.

GLSUPL_proxyModeNotSupported 

The SET does not support "Proxy" mode of operation.

GLSUPL_positioningNotPermitted 

The SET is not authorized by the SLP.

GLSUPL_authNetFailure 

The network does not authenticate the SET, only used in SUPL AUTH_RESP.

GLSUPL_authSuplinitFailure 

The SUPL INIT message is not authenticated by the SET or the SLP.

GLSUPL_incompatibleProtectionLevel 

The Protection Level in the SUPL INIT message is not compatible with the protection level of the SET.

GLSUPL_serviceNotSupported 

Service Capability not supported.

GLSUPL_insufficientInterval 

The requested interval between fixes is not compatible with the capabilities of either the SET or the SLP.

GLSUPL_noSUPLCoverage 

The SET lost SUPL coverage.

This status code is used for V-SLP to V-SLP handover to indicate to the H-SLP that the SET lost SUPL coverage

GLSUPL_consentDeniedByUser 

User denied consent for location determination session.

GLSUPL_consentGrantedByUser 

User granted consent for location determination session.

GLSUPL_sessionStopped 

The triggered session has been stopped by the network or the SET.

GLSUPL_appIdDenied 

The App Id was not authorized by the SLP and as a result, the requested service was denied.


Function Documentation

void* glcb_supl_Allocate ( unsigned long  size)

Called by the SUPL engine to allocate memory buffer.

Parameters:
size- size of required memory
Note:
Returned pointer should be properly aligned.
void glcb_supl_Deallocate ( void *  buffer)

Called by the SUPL engine to deallocate session.

Parameters:
buffer- pointer to previously allocated buffer.

Called by the SUPL engine to inform that SUPL connection is no longer necessary.

Inform that connection to SLP server can be closed.

void glcb_supl_EndSession ( GLSUPL_Session session)

Called by the SUPL engine to inform that all data associated with session is no longer necessary.

Inform that all requests can be stoped.

void glcb_supl_ExceptionAssert ( const char *  file,
unsigned  line,
const char *  msg 
)

Exception Assert.

Parameters:
file- file name.
line- line number.
msg- message.
void glcb_supl_Log ( GLSUPL_LOG_SEVERITY  sev,
const char *  fmt,
  ... 
)

Log message.

Parameters:
sev- Log level.
fmt,...- format and message (printf format)

Called by the SUPL engine after receiving SUPL-INIT message.

Inform that SLP requests for Notification & Verification

Parameters:
session-
notif- Describes the notification/verification mechanism to be applied.
Note:
Application should response with glsupl_VerificationRsp() only if notification types are: GLSUPL_notificationAndVerficationAllowedNA or GLSUPL_notificationAndVerficationDeniedNA
void glcb_supl_ReportFromSuplEnd ( GLSUPL_Session session,
const GLSUPL_Position pos,
const GLSUPL_StatusCode code 
)

Report position and status code information to the application when it is received from SLP (SUPL) server in SUPL_END message.

Parameters:
session- [in] pointer to SUPL session, can not be NULL.
pos- [in] pointer to position reported in SUPL END, can be NULL.
code- [in] pointer to status code in SUPL END, can be NULL.
Note:
This callback will return position information for SI MSA position request and for SI Cell ID position and when server position will satisfy QoP from SUPL-START message.

Called by the SUPL engine to request SUPL Connection.

SUPL Protocol stack waiting for glsupl_Connect() call which will inform about the result of this request.

void glcb_supl_SendingSuplEnd ( GLSUPL_Session session,
const GLSUPL_StatusCode code 
)

Report status code information to the application before it sent to SLP (SUPL) server in SUPL_END message.

Parameters:
session- [in] pointer to SUPL session, can not be NULL.
code- [in] pointer to status code in SUPL END, can be NULL.
void glcb_supl_SetAcquisitionAssistance ( GLSUPL_Session session,
const GLRRLP_AcquisAssist acqAssist 
)

Acquisition Assistance.

Parameters:
session-
acqAssist- GPS Acquisition Assistance.
void glcb_supl_SetAlmanac ( GLSUPL_Session session,
const GLRRLP_Almanac alm 
)

Almanac.

Parameters:
session- pointer to SUPL session.
alm- GPS Almanac.
void glcb_supl_SetDGPSCorrections ( GLSUPL_Session session,
const GLRRLP_DGPSCorrections *  dgpsc 
)

DGPS Corrections.

Parameters:
session- pointer to SUPL session.
dgpsc- GPS DGPS Corrections.
void glcb_supl_SetGanssAcquisitionAssistance ( GLSUPL_Session session,
const GANSS_ACQ_AID *  acqAssist 
)

GANSS Acquisition Assistance.

Parameters:
session-
acqAssist- GANSS Acquisition Assistance.
void glcb_supl_SetGlnsAsstAlm ( GLSUPL_Session session,
const GlGlnsAlmanac pAlm 
)

GLONASS Almanac.

Parameters:
session- pointer to SUPL session.
pAlm- GLONASS Almanac.
void glcb_supl_SetGlnsAsstEph ( GLSUPL_Session session,
const GlUncmprsdGlnEph pEph 
)

GLONASS Navigation Model.

Parameters:
session- pointer to SUPL session.
pEph- GLONASS Navigation Model.

Ionospheric Model.

Parameters:
session- pointer to SUPL session.
iono- GPS Ionospheric Model.
void glcb_supl_SetNavModel ( GLSUPL_Session session,
const GLRRLP_SeqOfNavModelElement nav 
)

Navigation Model.

Parameters:
session- pointer to SUPL session.
nav- GPS Navigation Model.
void glcb_supl_SetReferenceLocation ( GLSUPL_Session session,
const GLRRLP_PositionEstimate refLoc 
)

Reference Location.

Parameters:
session- pointer to SUPL session.
refLoc- GPS Reference Location.
void glcb_supl_SetReferenceTime ( GLSUPL_Session session,
const GLRRLP_ReferenceTime refTime 
)

Reference Time.

Parameters:
session- pointer to SUPL session.
refTime- GPS Reference Time.
void glcb_supl_SetRTIntegrity ( GLSUPL_Session session,
const GLRRLP_BadSatellites rti 
)

Real Time Integrity.

Parameters:
session- pointer to SUPL session.
rti- GPS Real Time Integrity.
void glcb_supl_SetUTCModel ( GLSUPL_Session session,
const GLRRLP_UTCModel utc 
)

UTC Model.

Parameters:
session- pointer to SUPL session.
utc- GPS UTC Model.
void glcb_supl_StartSingleShot ( GLSUPL_Session session,
const GLRRLP_PositionInstruct positionInstruct 
)

Called by the SUPL engine to execute positioning request for GLL engine.

Parameters:
session- pointer to previously allocated session.
positionInstruct- parameters of positioning request.
void glcb_supl_Write ( GLSUPL_Session session,
const unsigned char *  data,
unsigned  nBytes 
)

Called by the SUPL engine to write the encoded bytes to the network.

Parameters:
session- [in] pointer to SUPL session, can not be NULL.
data- [in] address of buffer for send.
nBytes- [in] length of buffer.
void glsupl_Abort ( GLSUPL_Session session)

Abort SUPL session.

Parameters:
session- pointer to SUPL session.
Return values:
none.

Abort SUPL session with status code.

Parameters:
session- pointer to SUPL session.
code- SUPL status code.
Return values:
none.
void glsupl_Connect ( GLSUPL_Session session,
GLBOOL  bSuccess 
)

Inform GLL SUPL protocol stack that SUPL connection has been established (bSuccess = 1) or not (bSuccess = 0)

Parameters:
session- pointer to SUPL session.
bSuccess0 - unsuccessful, 1 - successful
Returns:
none
Note:
This function should be called after glcb_supl_ReqConnection() to inform SUPL protocol stack about result of this request It is not necessary to call this function, when glcb_supl_ReqConnection() returns GLFALSE

Create SUPL session.

Return values:
pointerto the newly created SUPL session.
void glsupl_Data ( GLSUPL_Session session,
const unsigned char *  pucBuf,
int  nBytes 
)

This function should be called to deliver SUPL messages to GLL.

Parameters:
session- pointer to SUPL session.
pucBuf- pointer to the buffer containing the bytes.
nBytes- number of bytes received (may be zero)
Returns:
none
Note:
This function assumes that only one complete SUPL message is passed to it at a time. In particular, the function cannot process fragments of SUPL messages or multiple SUPL messages at a time.
void glsupl_Disconnected ( GLSUPL_Session session)

Inform GLL SUPL protocol stack that SUPL connection has been terminated.

Parameters:
session- pointer to SUPL session.
Returns:
none
Note:
This function should be called during active SUPL session to inform SUPL protocol stack that TCP/IP connection has been terminated for any reason.

Gets capabilities from GLL SUPL protocol stack.

Returns:
none
Note:
This function can be called at any time.
void glsupl_NetworkRequest ( GLSUPL_Session session,
const unsigned char *  pucBuf,
int  nBytes,
const unsigned char *  ver 
)

Initiate Network Initiated request.

Parameters:
session- pointer to SUPL session.
pucBuf- pointer to a buffer with binary coded Network initiated message.
nBytes- size of this message.
ver- can be HMAC of pucBuf(SUPL_INIT) (described in SUPL 1.0 spec), in this case MUST be 8 bytes array. Refer to GpsHalSuplInitPrepareVer() for additional information
ver- or can be key-string for calculation HMAC of pucBuf(SUPL_INIT) inside SUPL stack.
Returns:
none
Note:
Parameter 'ver' CAN NOT BE NULL.
GLBOOL glsupl_ProcessGPSEphemerisExension ( GLSUPL_Session session,
const unsigned char *  buf,
int  size 
)

Called to process GPS Ephemeris Extension file.

Buffer can be deallocated after caling this function "buf=NULL" or "size=0" will indicate that file is not available or old

Parameters:
sessionPointer to the GLSUPL_Session
bufbuffer
sizesize of the buffer
Returns:
error code
void glsupl_ReportGpsMeasurements ( GLSUPL_Session session,
const GLRRLP_GPS_MeasureInfo pMes 
)

Response to MSA request.

Parameters:
session- pointer to SUPL session.
pMes- GPS Measurement Information.
void glsupl_ReportLocationInfo ( GLSUPL_Session session,
const GLRRLP_LocationInfo pLoc 
)

Response to MSB or autonomous request.

Parameters:
session- pointer to SUPL session.
pLoc- Location Info.
GLBOOL glsupl_Request ( GLSUPL_Session session,
GLSUPL_QoP qop,
GLSUPL_ApplicationID appID 
)

Start SUPL request.

It will be SET-initiated session.

Parameters:
session- pointer to SUPL session.
qop- Desired Quality of Position.
appID- Identifier of the requesting application.
Returns:
Returns GLTRUE, if successful

Response on glcb_supl_RequestAssistanceData() or can be called after receiving positioning request to request additional assistance data.

Parameters:
session- pointer to SUPL session.
reqData- Requested Assist Data.
void glsupl_SetCapabilities ( GLSUPL_Session session,
const GLSUPL_SETCapabilities pCap 
)

Sets default capabilities for GLL SUPL protocol stack.

Returns:
none
Note:
This function can be called at any time.
GLBOOL glsupl_SetHmacHash ( GLSUPL_Session session,
GLSUPL_HmacHash  hmacHash 
)

Sets HMAC hash algorithm.

Note:
This function should be called before any SUPL requests
GLBOOL glsupl_SetID ( GLSUPL_Session session,
const GLSUPL_SetID pSuplSetID 
)

Sets the SUPL ID in the GLL SUPL protocol stack.

Parameters:
session- pointer to SUPL session.
pSuplSetID- pointer to structure defining SUPL SET ID
Returns:
Returns GLTRUE, if successful
Note:
This function should be called before any SUPL requests
void glsupl_SetLocationId ( GLSUPL_Session session,
const GLSUPL_LocationId pLocationId 
)

Sets the Location Information for the LBS SUPL protocol stack.

Parameters:
session- pointer to SUPL session.
pLocationId- pointer to a location information structure.
Returns:
none
Note:
1. If the location information data is available right away, this function can be called from the callback glcb_supl_ReqLocationId().
2. The location information is requested periodically to cover the case of a roaming mobile station. 3. pLocationId->cellInfo.t should be GLSUPL_CELL_INFO_UNAVAILABLE when location information is not available in this case SUPL session will be terminated
void glsupl_SetPosition ( GLSUPL_Session session,
const GLSUPL_Position pPos 
)

Response on glcb_supl_ReqPosition()

Parameters:
session- pointer to SUPL session.
pPos- position of the SET.
void glsupl_SetTime ( GLSUPL_Session session,
GLSUPL_Time *  time 
)

SUPL HAL calls this function to report GPS time from 3rd party GPS device.

Parameters:
sessionSUPL session
timePointer to the GLSUPL_Time
void glsupl_SetTimers ( GLSUPL_Session session,
unsigned long  ut1,
unsigned long  ut2,
unsigned long  ut3 
)

Allows to customize values for timers UT1, UT2, and UT3.

Parameters:
session- pointer to SUPL session.
ut1- UT1 timer in milliseconds, default value is 10000 ms.
ut2- UT2 timer in milliseconds, default value is 10000 ms.
ut3- UT3 timer in milliseconds, default value is 10000 ms.
Returns:
none
Note:
Setting timer value to 0 means that this timer should not be changed. Must be called as a part of GLL initialization procedure. Please refer to SUPL specification for more information
GLBOOL glsupl_SetVersion ( GLSUPL_Session session,
unsigned char  uVersion 
)

Sets SUPL protocol version.

This function allows to restrict functionality of GLL SUPL protocol stack to SUPL 1.0.

Parameters:
session- pointer to SUPL session.
uVersion- protocol version (either 1 or 2)
Note:
This function should be called before any SUPL requests
void glsupl_VerificationRsp ( GLSUPL_Session session,
GLBOOL  bAllow 
)

Respond to glcb_supl_NotificationVerificationReq()

Parameters:
session- pointer to SUPL session.
bAllow1 - allow positioning info, 0 - deny
Returns:
none
Note:
This function should be called as a respond to glcb_supl_NotificationVerificationReq()
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Defines