summaryrefslogtreecommitdiff
path: root/location/LocationAPI.h
diff options
context:
space:
mode:
authorKatz Yamada <kyamada@codeaurora.org>2017-04-27 13:46:09 -0700
committerKatz Yamada <kyamada@codeaurora.org>2017-04-27 13:46:09 -0700
commit3eef3d7a6c2ecf63cd29e595260824804abae4a8 (patch)
treea35c7d7a11f59307b267749e555e460d92137a06 /location/LocationAPI.h
parent9d802149010dc46c0cf6b8e5856d35ed300eb804 (diff)
downloadgps-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.h30
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 {