summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorBhavna Sharma <sbhavna@codeaurora.org>2019-01-15 16:29:48 -0800
committerBhavna Sharma <sbhavna@codeaurora.org>2019-02-06 12:58:00 -0800
commit7445c50730a9f81de3926926bf74265653d6377a (patch)
tree8279fa81c390468bd712ea86d01620f4e6b5c0ec /core
parent8e04d01cd2e35bfea1dc7d1f5f689e7780a90f1f (diff)
downloadgps-7445c50730a9f81de3926926bf74265653d6377a.tar.gz
New structures and handling of new data in the pipe
1. KlobucharIonoModel 2. Additional parameters for Glonass 3. Add gps system time to ephemeris reports. CRs-Fixed: 2388931 Change-Id: Ibd08496c8eda2ce7571cbdd71ff0c179f7376aa7
Diffstat (limited to 'core')
-rw-r--r--core/EngineHubProxyBase.h11
-rw-r--r--core/LocAdapterBase.cpp8
-rw-r--r--core/LocAdapterBase.h3
-rw-r--r--core/LocApiBase.cpp10
-rw-r--r--core/LocApiBase.h2
5 files changed, 34 insertions, 0 deletions
diff --git a/core/EngineHubProxyBase.h b/core/EngineHubProxyBase.h
index 34af4d0..4239a50 100644
--- a/core/EngineHubProxyBase.h
+++ b/core/EngineHubProxyBase.h
@@ -90,6 +90,17 @@ public:
(void) systemInfo;
return false;
}
+
+ inline virtual bool gnssReportKlobucharIonoModel(const GnssKlobucharIonoModel& ionoModel) {
+ (void) ionoModel;
+ return false;
+ }
+
+ inline virtual bool gnssReportAdditionalSystemInfo(
+ const GnssAdditionalSystemInfo& additionalSystemInfo) {
+ (void) additionalSystemInfo;
+ return false;
+ }
};
typedef std::function<void(const UlpLocation& ulpLocation,
diff --git a/core/LocAdapterBase.cpp b/core/LocAdapterBase.cpp
index 3f82dd6..22116e6 100644
--- a/core/LocAdapterBase.cpp
+++ b/core/LocAdapterBase.cpp
@@ -191,4 +191,12 @@ DEFAULT_IMPL(false)
bool LocAdapterBase::
reportDeleteAidingDataEvent(GnssAidingData & /*aidingData*/)
DEFAULT_IMPL(false)
+
+bool LocAdapterBase::
+ reportKlobucharIonoModelEvent(GnssKlobucharIonoModel& /*ionoModel*/)
+DEFAULT_IMPL(false)
+
+bool LocAdapterBase::
+ reportGnssAdditionalSystemInfoEvent(GnssAdditionalSystemInfo& /*additionalSystemInfo*/)
+DEFAULT_IMPL(false)
} // namespace loc_core
diff --git a/core/LocAdapterBase.h b/core/LocAdapterBase.h
index e4f7be2..2011333 100644
--- a/core/LocAdapterBase.h
+++ b/core/LocAdapterBase.h
@@ -172,6 +172,9 @@ public:
virtual bool requestOdcpiEvent(OdcpiRequestInfo& request);
virtual bool reportGnssEngEnergyConsumedEvent(uint64_t energyConsumedSinceFirstBoot);
virtual bool reportDeleteAidingDataEvent(GnssAidingData &aidingData);
+ virtual bool reportKlobucharIonoModelEvent(GnssKlobucharIonoModel& ionoModel);
+ virtual bool reportGnssAdditionalSystemInfoEvent(
+ GnssAdditionalSystemInfo& additionalSystemInfo);
};
} // namespace loc_core
diff --git a/core/LocApiBase.cpp b/core/LocApiBase.cpp
index c2ee411..b16a0d0 100644
--- a/core/LocApiBase.cpp
+++ b/core/LocApiBase.cpp
@@ -374,6 +374,16 @@ void LocApiBase::reportDeleteAidingDataEvent(GnssAidingData& aidingData) {
TO_1ST_HANDLING_LOCADAPTERS(mLocAdapters[i]->reportDeleteAidingDataEvent(aidingData));
}
+void LocApiBase::reportKlobucharIonoModel(GnssKlobucharIonoModel & ionoModel) {
+ // loop through adapters, and deliver to the first handling adapter.
+ TO_1ST_HANDLING_LOCADAPTERS(mLocAdapters[i]->reportKlobucharIonoModelEvent(ionoModel));
+}
+
+void LocApiBase::reportGnssAdditionalSystemInfo(GnssAdditionalSystemInfo& additionalSystemInfo) {
+ // loop through adapters, and deliver to the first handling adapter.
+ TO_1ST_HANDLING_LOCADAPTERS(mLocAdapters[i]->reportGnssAdditionalSystemInfoEvent(
+ additionalSystemInfo));
+}
void LocApiBase::reportSv(GnssSvNotification& svNotify)
{
diff --git a/core/LocApiBase.h b/core/LocApiBase.h
index e5dfebf..70bebc3 100644
--- a/core/LocApiBase.h
+++ b/core/LocApiBase.h
@@ -187,6 +187,8 @@ public:
void requestOdcpi(OdcpiRequestInfo& request);
void reportGnssEngEnergyConsumedEvent(uint64_t energyConsumedSinceFirstBoot);
void reportDeleteAidingDataEvent(GnssAidingData& aidingData);
+ void reportKlobucharIonoModel(GnssKlobucharIonoModel& ionoModel);
+ void reportGnssAdditionalSystemInfo(GnssAdditionalSystemInfo& additionalSystemInfo);
// downward calls
// All below functions are to be defined by adapter specific modules: