diff options
author | Katz Yamada <kyamada@codeaurora.org> | 2017-04-27 13:46:09 -0700 |
---|---|---|
committer | Katz Yamada <kyamada@codeaurora.org> | 2017-04-27 13:46:09 -0700 |
commit | 3eef3d7a6c2ecf63cd29e595260824804abae4a8 (patch) | |
tree | a35c7d7a11f59307b267749e555e460d92137a06 /location/LocationAPI.h | |
parent | 9d802149010dc46c0cf6b8e5856d35ed300eb804 (diff) | |
download | gps-3eef3d7a6c2ecf63cd29e595260824804abae4a8.tar.gz |
SystemStatus - Add ephemeris detail info in Gnss Debug interface
Add ephemeris detail info in Gnss Debug interface. This new info
also comes up in NMEA stings. Requires a new QMI_LOC interface
that supports extended NMEA string TLV.
Change-Id: I5dc566fb210c06a443ed6c27e064377851ce83a5
CRs-Fixed: 2024594
Diffstat (limited to 'location/LocationAPI.h')
-rw-r--r-- | location/LocationAPI.h | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/location/LocationAPI.h b/location/LocationAPI.h index 810510f..88b1554 100644 --- a/location/LocationAPI.h +++ b/location/LocationAPI.h @@ -37,6 +37,7 @@ #define GNSS_NI_MESSAGE_ID_MAX 2048 #define GNSS_SV_MAX 64 #define GNSS_MEASUREMENTS_MAX 64 +#define GNSS_UTC_TIME_OFFSET (3657) typedef enum { LOCATION_ERROR_SUCCESS = 0, @@ -250,6 +251,26 @@ typedef enum { GNSS_SV_TYPE_GALILEO, } GnssSvType; +typedef enum { + GNSS_EPH_TYPE_UNKNOWN = 0, + GNSS_EPH_TYPE_EPHEMERIS, + GNSS_EPH_TYPE_ALMANAC, +} GnssEphemerisType; + +typedef enum { + GNSS_EPH_SOURCE_UNKNOWN = 0, + GNSS_EPH_SOURCE_DEMODULATED, + GNSS_EPH_SOURCE_SUPL_PROVIDED, + GNSS_EPH_SOURCE_OTHER_SERVER_PROVIDED, + GNSS_EPH_SOURCE_LOCAL, +} GnssEphemerisSource; + +typedef enum { + GNSS_EPH_HEALTH_UNKNOWN = 0, + GNSS_EPH_HEALTH_GOOD, + GNSS_EPH_HEALTH_BAD, +} GnssEphemerisHealth; + typedef uint16_t GnssSvOptionsMask; typedef enum { GNSS_SV_OPTIONS_HAS_EPHEMER_BIT = (1<<0), @@ -558,6 +579,7 @@ typedef struct { typedef struct { size_t size; // set to sizeof + bool mValid; Location mLocation; double verticalAccuracyMeters; double speedAccuracyMetersPerSecond; @@ -566,16 +588,22 @@ typedef struct { typedef struct { size_t size; // set to sizeof + bool mValid; int64_t timeEstimate; float timeUncertaintyNs; + float frequencyUncertaintyNsPerSec; } GnssDebugTime; typedef struct { size_t size; // set to sizeof uint32_t svid; GnssSvType constellation; - uint32_t ephemerisType; + GnssEphemerisType mEphemerisType; + GnssEphemerisSource mEphemerisSource; + GnssEphemerisHealth mEphemerisHealth; float ephemerisAgeSeconds; + bool serverPredictionIsAvailable; + float serverPredictionAgeSeconds; } GnssDebugSatelliteInfo; typedef struct { |