diff options
author | Wei Chen <weic@codeaurora.org> | 2018-09-19 10:59:28 -0700 |
---|---|---|
committer | Wei Chen <weic@codeaurora.org> | 2018-10-08 12:26:06 -0700 |
commit | 21b9c4e47ed5811f53d764c38943e3b971bde5e8 (patch) | |
tree | 7050d4d2124d0ff0abd72605cd4a58598892d6a6 /core | |
parent | 5b53be1d9e037a197cdc56b65c73543c63051df1 (diff) | |
download | gps-21b9c4e47ed5811f53d764c38943e3b971bde5e8.tar.gz |
FR48381: Support leap second change event
Support leap second change event
(1) Info will be available in location api and location
client api
(2) Engine hub aggregator will use the info to calculate
UTC timestamp
Change-Id: Ie79c1a38301fa094134a4a31af424487758343f6
CRs-fixed: 2289457
Diffstat (limited to 'core')
-rw-r--r-- | core/EngineHubProxyBase.h | 5 | ||||
-rw-r--r-- | core/LocAdapterBase.cpp | 4 | ||||
-rw-r--r-- | core/LocAdapterBase.h | 2 | ||||
-rw-r--r-- | core/LocApiBase.cpp | 6 | ||||
-rw-r--r-- | core/LocApiBase.h | 1 |
5 files changed, 18 insertions, 0 deletions
diff --git a/core/EngineHubProxyBase.h b/core/EngineHubProxyBase.h index 455c52e..34af4d0 100644 --- a/core/EngineHubProxyBase.h +++ b/core/EngineHubProxyBase.h @@ -85,6 +85,11 @@ public: (void) svEphemeris; return false; } + + inline virtual bool gnssReportSystemInfo(const LocationSystemInfo& systemInfo) { + (void) systemInfo; + return false; + } }; typedef std::function<void(const UlpLocation& ulpLocation, diff --git a/core/LocAdapterBase.cpp b/core/LocAdapterBase.cpp index 42cf7aa..3f82dd6 100644 --- a/core/LocAdapterBase.cpp +++ b/core/LocAdapterBase.cpp @@ -131,6 +131,10 @@ bool LocAdapterBase:: const char* /*url3*/, const int /*maxlength*/) DEFAULT_IMPL(false) +void LocAdapterBase:: + reportLocationSystemInfoEvent(const LocationSystemInfo& /*locationSystemInfo*/) +DEFAULT_IMPL() + bool LocAdapterBase:: requestXtraData() DEFAULT_IMPL(false) diff --git a/core/LocAdapterBase.h b/core/LocAdapterBase.h index a934817..e4f7be2 100644 --- a/core/LocAdapterBase.h +++ b/core/LocAdapterBase.h @@ -151,6 +151,8 @@ public: virtual void reportStatus(LocGpsStatusValue status); virtual bool reportXtraServer(const char* url1, const char* url2, const char* url3, const int maxlength); + virtual void reportLocationSystemInfoEvent(const LocationSystemInfo& locationSystemInfo); + virtual bool requestXtraData(); virtual bool requestTime(); virtual bool requestLocation(); diff --git a/core/LocApiBase.cpp b/core/LocApiBase.cpp index b2642ca..c2ee411 100644 --- a/core/LocApiBase.cpp +++ b/core/LocApiBase.cpp @@ -461,6 +461,12 @@ void LocApiBase::reportXtraServer(const char* url1, const char* url2, } +void LocApiBase::reportLocationSystemInfo(const LocationSystemInfo& locationSystemInfo) +{ + // loop through adapters, and deliver to all adapters. + TO_ALL_LOCADAPTERS(mLocAdapters[i]->reportLocationSystemInfoEvent(locationSystemInfo)); +} + void LocApiBase::requestXtraData() { // loop through adapters, and deliver to the first handling adapter. diff --git a/core/LocApiBase.h b/core/LocApiBase.h index 77c57d9..e5dfebf 100644 --- a/core/LocApiBase.h +++ b/core/LocApiBase.h @@ -171,6 +171,7 @@ public: void reportData(GnssDataNotification& dataNotify, int msInWeek); void reportXtraServer(const char* url1, const char* url2, const char* url3, const int maxlength); + void reportLocationSystemInfo(const LocationSystemInfo& locationSystemInfo); void requestXtraData(); void requestTime(); void requestLocation(); |