Linux SDK (lite-qmi)  MBPL_SDK_R25_ENG3
unpack_loc_BestAvailPos_Ind_t Struct Reference

#include <loc.h>

Data Fields

uint32_t status
 
uint32_t * pXid
 
double * pLatitude
 
double * pLongitude
 
float * pHorUncCircular
 
float * pAltitudeWrtEllipsoid
 
float * pVertUnc
 
uint64_t * pTimestampUtc
 
float * pTimeUnc
 
float * pHorUncEllipseSemiMinor
 
float * pHorUncEllipseSemiMajor
 
float * pHorUncEllipseOrientAzimuth
 
uint8_t * pHorCirConf
 
uint8_t * pHorEllpConf
 
uint32_t * pHorReliability
 
float * pSpeedHorizontal
 
float * pSpeedUnc
 
float * pAltitudeWrtMeanSeaLevel
 
uint8_t * pVertConfidence
 
uint32_t * pVertReliability
 
float * pSpeedVertical
 
float * pSpeedVerticalUnc
 
float * pHeading
 
float * pHeadingUnc
 
float * pMagneticDeviation
 
uint32_t * pTechnologyMask
 
loc_precisionDilutionpPrecisionDilution
 
loc_gpsTimepGpsTime
 
uint32_t * pTimeSrc
 
loc_sensorDataUsagepSensorDataUsage
 
loc_svUsedforFixpSvUsedforFix
 
loc_extendedPrecisionDilutionpExtendedPrecisionDilution
 
uint64_t * pSpoofReportMask
 
loc_expandedSVspExpandedSVs
 
loc_satelliteSignalTypespSatelliteSignalTypes
 
uint16_t Tlvresult
 
swi_uint256_t ParamPresenceMask
 

Detailed Description

This structure contains Best Available Position

Parameters
status
  • Valid values:
    • eQMI_LOC_SUCCESS (0) - Request was completed successfully
    • eQMI_LOC_GENERAL_FAILURE (1) - Request failed because of a general failure
    • eQMI_LOC_UNSUPPORTED (2) - Request failed because it is not supported
    • eQMI_LOC_INVALID_PARAMETER (3) - Request failed because it contained invalid parameters
    • eQMI_LOC_ENGINE_BUSY (4) - Request failed because the engine is busy
    • eQMI_LOC_PHONE_OFFLINE (5) - Request failed because the phone is offline
    • eQMI_LOC_TIMEOUT (6) - Request failed because it timed out
    • eQMI_LOC_CONFIG_NOT_SUPPORTED (7) - Request failed because an undefined configuration was requested
    • eQMI_LOC_INSUFFICIENT_MEMORY (8) - Request failed because the engine could not allocate sufficient memory for the request
    • eQMI_LOC_MAX_GEOFENCE_PROGRAMMED (9) - Request failed because the maximum number of Geofences are already programmed
    • eQMI_LOC_XTRA_VERSION_CHECK_FAILURE (10) - Location service failed because of an XTRA version-based file format check failure
      • eQMI_LOC_GNSS_DISABLED (11) - Request failed because the location service is disabled
  • Bit to check in ParamPresenceMask - 1
xidTransaction ID that was specified in the Get Best Available Position request.
  • Bit to check in ParamPresenceMask - 0x10
pLatitude
  • Latitude (specified in WGS84 datum)
  • Type - Floating point
  • Units - Degrees
  • Range - -90.0 to 90.0
  • Positive values indicate northern latitude
  • Negative values indicate southern latitude
  • Bit to check in ParamPresenceMask - 0x11
pLongitude
  • Longitude (specified in WGS84 datum)
  • Type - Floating point
  • Units - Degrees
  • Range - -180.0 to 180.0
  • Positive values indicate eastern latitude
  • Negative values indicate western latitude
  • Bit to check in ParamPresenceMask - 0x12
pHorUncCircular
  • Horizontal position uncertainty.
  • Units - Meters
  • Bit to check in ParamPresenceMask - 0x13
pAltitudeWrtEllipsoid
  • Altitude With Respect to WGS84 Ellipsoid.
  • Units - Meters
  • Range -500 to 15883
  • Bit to check in ParamPresenceMask - 0x14
pVertUnc
  • Vertical uncertainty.
  • Units - Meters
  • Bit to check in ParamPresenceMask - 0x15
pTimestampUtc
  • UTC timestamp
  • Units - Milliseconds since Jan. 1, 1970
  • Bit to check in ParamPresenceMask - 0x16
pTimeUnc
  • Time uncertainty.
  • Units - Milliseconds
  • Bit to check in ParamPresenceMask - 0x17
pHorUncEllipseSemiMinor
  • Semi-minor axis of horizontal elliptical uncertainty.
  • Units - Meters
  • Bit to check in ParamPresenceMask - 0x18
pHorUncEllipseSemiMajor
  • Semi-major axis of horizontal elliptical uncertainty.
  • Units: Meters
  • Bit to check in ParamPresenceMask - 0x19
pHorUncEllipseOrientAzimuth
  • Elliptical horizontal uncertainty azimuth of orientation.
  • Units - Decimal degrees
  • Range - 0 to 180
  • Bit to check in ParamPresenceMask - 0x1A
pHorCirConf
  • Horizontal circular uncertainty confidence
  • Units: Precent
  • Range: 0 to 99
  • Bit to check in ParamPresenceMask - 0x1B
pHorEllpConf
  • Horizontal elliptical uncertainty confidence
  • Units: Precent
  • Range: 0 to 99
  • Bit to check in ParamPresenceMask - 0x1C
pHorReliability
  • Values
    • 0 - Location reliability is not set.
    • 1 - Location reliability is very low; use it at your own risk
    • 2 - Location reliability is low; little or no cross-checking is possible.
    • 3 - Location reliability is medium; limited cross-check passed
    • 4 - Location reliability is high; strong cross-check passed
  • Bit to check in ParamPresenceMask - 0x1D
pSpeedHorizontal
  • Horizontal speed.
  • Units - Meters/second
  • Bit to check in ParamPresenceMask - 0x1E
pSpeedUnc
  • 3-D Speed uncertainty.
  • Units - Meters/second.
  • Bit to check in ParamPresenceMask - 0x1F
pAltitudeWrtMeanSeaLevel
  • Altitude With Respect to Sea Level.
  • Units - Meters
  • Bit to check in ParamPresenceMask - 0x20
pVertConfidence
  • Vertical uncertainty confidence.
  • Units - Percentage
  • Range 0 to 99
  • Bit to check in ParamPresenceMask - 0x21
pVertReliability
  • Values
    • 0 - Location reliability is not set.
    • 1 - Location reliability is very low; use it at your own risk.
    • 2 - Location reliability is low; little or no cross-checking is possible
    • 3 - Location reliability is medium; limited cross-check passed
    • 4 - Location reliability is high; strong cross-check passed
  • Bit to check in ParamPresenceMask - 0x22
pSpeedVertical
  • Vertical speed.
  • Units - Meters/second
  • Bit to check in ParamPresenceMask - 0x23
pSpeedVerticalUnc
  • Veritical speed
  • Units: Meters/second
  • Bit to check in ParamPresenceMask - 0x24
pHeading
  • Heading.
  • Units - Degree
  • Range 0 to 359.999
  • Bit to check in ParamPresenceMask - 0x25
pHeadingUnc
  • Heading uncertainty.
  • Units - Degree
  • Range 0 to 359.999
  • Bit to check in ParamPresenceMask - 0x26
pMagneticDeviation
  • Difference between the bearing to true north and the bearing shown on a magnetic compass. The deviation is positive when the magnetic north is east of true north.
  • Bit to check in ParamPresenceMask - 0x27
pTechnologyMask
  • Values
    • 0x00000001 - Satellites were used to generate the fix
    • 0x00000002 - Cell towers were used to generate the fix
    • 0x00000004 - Wi-Fi access points were used to generate the fix
    • 0x00000008 - Sensors were used to generate the fix
    • 0x00000010 - Reference Location was used to generate the fix
    • 0x00000020 - Coarse position injected into the location engine was used to generate the fix
    • 0x00000040 - AFLT was used to generate the fix
    • 0x00000080 - GNSS and network-provided measurements were used to generate the fix
  • Bit to check in ParamPresenceMask - 0x28
-pPrecisionDilution
-pGpsTime
  • See loc_gpsTime for more information
  • Bit to check in ParamPresenceMask - 0x2A
pTimeSrc
  • Values
    • 0 - Invalid time.
    • 1 - Time is set by the 1X system.
    • 2 - Time is set by WCDMA/GSM time tagging.
    • 3 - Time is set by an external injection.
    • 4 - Time is set after decoding over-the-air GPS navigation data from one GPS satellite.
    • 5 - Time is set after decoding over-the-air GPS navigation data from multiple satellites.
    • 6 - Both time of the week and the GPS week number are known.
    • 7 - Time is set by the position engine after the fix is obtained
    • 8 - Time is set by the position engine after performing SFT, this is done when the clock time uncertainty is large.
    • 9 - Time is set after decoding GLO satellites.
    • 10- Time is set after transforming the GPS to GLO time
    • 11- Time is set by the sleep time tag provided by the WCDMA network.
    • 12- Time is set by the sleep time tag provided by the GSM network
    • 13- Source of the time is unknown
    • 14- Time is derived from the system clock (better known as the slow clock); GNSS time is maintained irrespective of the GNSS receiver state
    • 15- Time is set after decoding QZSS satellites.
    • 16- Time is set after decoding BDS satellites.
  • Bit to check in ParamPresenceMask - 0x2B
-pSensorDataUsage
-pSvUsedforFix
  • See loc_svUsedforFix for more information
  • Bit to check in ParamPresenceMask - 0x2D
pExtendedPrecisionDilution
  • Extended Dilution of Precision Dilution of precision associated with this position.
Parameters
pSpoofReportMask
  • Spoof report
    • Valid bitmasks:
    • QMI_LOC_POSITION_SPOOFED (0x00000001) – Set bit indicates suspected spoofing in position
    • QMI_LOC_TIME_SPOOFED (0x00000002) – Set bit indicates suspected spoofing in time
    • QMI_LOC_NAVIGATION_DATA_ SPOOFED (0x00000004) – Set bit indicates suspected spoofing in navigation data
  • Bit to check in ParamPresenceMask - 0x2F
Parameters
pExpandedSVs
  • Expanded SVs Used to Calculate the Fix.
Parameters
pSatelliteSignalTypes
Tlvresult
  • unpack result

The documentation for this struct was generated from the following file: