From e7c30fa882af46d23f9eddf78fd66cd1bf89a65c Mon Sep 17 00:00:00 2001 From: Dante Russo Date: Wed, 1 May 2019 12:40:40 -0700 Subject: GNSS HIDL 2.0 updates Implement new GNSS HIDL 2.0 functions and callbacks gnssRequestLocationCb_2_0, getExtensionGnssBatching_2_0, getExtensionGnssDebug_2_0, getDebugData_2_0, injectBestLocation_2_0, gnssSetCapabilitiesCb_2_0, gnssLocationCb_2_0, gnssSvStatusCb_2_0, and gnssMeasurementCb_2_0. Fix VTS test failures from deprecated functions setGpsLock, setSuplEs, V1:0::getExtensionAGnss, and V1.0::getExtensionGnssNi CRs-fixed: 2433957 Change-Id: Id10cb41c32d6c50144b0501eb2d2eaf9c9a9aaec --- android/2.0/location_api/MeasurementAPIClient.cpp | 60 +++++++++++++++++++++-- 1 file changed, 55 insertions(+), 5 deletions(-) (limited to 'android/2.0/location_api/MeasurementAPIClient.cpp') diff --git a/android/2.0/location_api/MeasurementAPIClient.cpp b/android/2.0/location_api/MeasurementAPIClient.cpp index d9cae18..23c3b16 100644 --- a/android/2.0/location_api/MeasurementAPIClient.cpp +++ b/android/2.0/location_api/MeasurementAPIClient.cpp @@ -54,6 +54,8 @@ static void convertGnssData_2_0(GnssMeasurementsNotification& in, static void convertGnssMeasurement(GnssMeasurementsData& in, V1_0::IGnssMeasurementCallback::GnssMeasurement& out); static void convertGnssClock(GnssMeasurementsClock& in, IGnssMeasurementCallback::GnssClock& out); +static void convertGnssMeasurementsCodeType(GnssMeasurementsCodeType& in, + ::android::hardware::hidl_string& out); MeasurementAPIClient::MeasurementAPIClient() : mGnssMeasurementCbIface(nullptr), @@ -362,6 +364,8 @@ static void convertGnssData_2_0(GnssMeasurementsNotification& in, out.measurements.resize(in.count); for (size_t i = 0; i < in.count; i++) { convertGnssMeasurement(in.measurements[i], out.measurements[i].v1_1.v1_0); + convertGnssConstellationType(in.measurements[i].svType, out.measurements[i].constellation); + convertGnssMeasurementsCodeType(in.measurements[i].codeType, out.measurements[i].codeType); if (in.measurements[i].adrStateMask & GNSS_MEASUREMENTS_ACCUMULATED_DELTA_RANGE_STATE_VALID_BIT) out.measurements[i].v1_1.accumulatedDeltaRangeState |= IGnssMeasurementCallback::GnssAccumulatedDeltaRangeState::ADR_STATE_VALID; @@ -374,11 +378,6 @@ static void convertGnssData_2_0(GnssMeasurementsNotification& in, if (in.measurements[i].adrStateMask & GNSS_MEASUREMENTS_ACCUMULATED_DELTA_RANGE_STATE_HALF_CYCLE_RESOLVED_BIT) out.measurements[i].v1_1.accumulatedDeltaRangeState |= IGnssMeasurementCallback::GnssAccumulatedDeltaRangeState::ADR_STATE_HALF_CYCLE_RESOLVED; - -// out.measurements[i].codeType = -// static_cast(in.measurements[i].codeType); -// out.measurements[i].otherCodeTypeName = in.measurements[i].otherCodeTypeName; - if (in.measurements[i].stateMask & GNSS_MEASUREMENTS_STATE_CODE_LOCK_BIT) out.measurements[i].state |= IGnssMeasurementCallback::GnssMeasurementState::STATE_CODE_LOCK; if (in.measurements[i].stateMask & GNSS_MEASUREMENTS_STATE_BIT_SYNC_BIT) @@ -417,6 +416,57 @@ static void convertGnssData_2_0(GnssMeasurementsNotification& in, convertGnssClock(in.clock, out.clock); } +static void convertGnssMeasurementsCodeType(GnssMeasurementsCodeType& in, + ::android::hardware::hidl_string& out) +{ + switch(in) { + case GNSS_MEASUREMENTS_CODE_TYPE_A: + out = "A"; + break; + case GNSS_MEASUREMENTS_CODE_TYPE_B: + out = "B"; + break; + case GNSS_MEASUREMENTS_CODE_TYPE_C: + out = "C"; + break; + case GNSS_MEASUREMENTS_CODE_TYPE_I: + out = "I"; + break; + case GNSS_MEASUREMENTS_CODE_TYPE_L: + out = "L"; + break; + case GNSS_MEASUREMENTS_CODE_TYPE_M: + out = "M"; + break; + case GNSS_MEASUREMENTS_CODE_TYPE_P: + out = "P"; + break; + case GNSS_MEASUREMENTS_CODE_TYPE_Q: + out = "Q"; + break; + case GNSS_MEASUREMENTS_CODE_TYPE_S: + out = "S"; + break; + case GNSS_MEASUREMENTS_CODE_TYPE_W: + out = "W"; + break; + case GNSS_MEASUREMENTS_CODE_TYPE_X: + out = "X"; + break; + case GNSS_MEASUREMENTS_CODE_TYPE_Y: + out = "Y"; + break; + case GNSS_MEASUREMENTS_CODE_TYPE_Z: + out = "Z"; + break; + case GNSS_MEASUREMENTS_CODE_TYPE_N: + out = "N"; + break; + default: + out = "UNKNOWN"; + } +} + } // namespace implementation } // namespace V2_0 } // namespace gnss -- cgit v1.2.3