Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 268c6e04 authored by Wyatt Riley's avatar Wyatt Riley
Browse files

IGnssDebug.hal change field outputs for dump()

Aligning the dump() string build to match the new
API fields in IGnssDebug.hal

Bug: 30955615
Test: Builds and non-implementation message reported on Pixel '16

Change-Id: I9e60c87e9c5a5ee2bc20e3f54eb878bd472515c1
parent 6a841cb8
Loading
Loading
Loading
Loading
+33 −13
Original line number Original line Diff line number Diff line
@@ -1457,33 +1457,44 @@ static jstring android_location_GnssLocationProvider_get_internal_state(JNIEnv*
    /*
    /*
     * TODO(b/33089503) : Create a jobject to represent GnssDebug.
     * TODO(b/33089503) : Create a jobject to represent GnssDebug.
     */
     */
    if (gnssDebugIface != nullptr) {

    std::stringstream internalState;

    if (gnssDebugIface == nullptr) {
        internalState << "Gnss Debug Interface not available"  << std::endl;
    } else {
        IGnssDebug::DebugData data;
        IGnssDebug::DebugData data;
        gnssDebugIface->getDebugData([&data](const IGnssDebug::DebugData& debugData) {
        gnssDebugIface->getDebugData([&data](const IGnssDebug::DebugData& debugData) {
            data = debugData;
            data = debugData;
        });
        });


        std::stringstream internalState;
        internalState << "Gnss Location Data:: ";
        if (data.position.valid) {
        if (!data.position.valid) {
            internalState << "Gnss Location Data:: LatitudeDegrees: " << data.position.latitudeDegrees
            internalState << "not valid";
        } else {
            internalState << "LatitudeDegrees: " << data.position.latitudeDegrees
                          << ", LongitudeDegrees: " << data.position.longitudeDegrees
                          << ", LongitudeDegrees: " << data.position.longitudeDegrees
                          << ", altitudeMeters: " << data.position.altitudeMeters
                          << ", altitudeMeters: " << data.position.altitudeMeters
                          << ", speedMetersPerSecond: " << data.position.speedMetersPerSec
                          << ", speedMetersPerSecond: " << data.position.speedMetersPerSec
                          << ", bearingDegrees: " << data.position.bearingDegrees
                          << ", bearingDegrees: " << data.position.bearingDegrees
                          << ", horizontalAccuracyMeters: " << data.position.horizontalAccuracyMeters
                          << ", horizontalAccuracyMeters: "
                          << data.position.horizontalAccuracyMeters
                          << ", verticalAccuracyMeters: " << data.position.verticalAccuracyMeters
                          << ", verticalAccuracyMeters: " << data.position.verticalAccuracyMeters
                          << ", speedAccuracyMetersPerSecond: " << data.position.speedAccuracyMetersPerSecond
                          << ", speedAccuracyMetersPerSecond: "
                          << data.position.speedAccuracyMetersPerSecond
                          << ", bearingAccuracyDegrees: " << data.position.bearingAccuracyDegrees
                          << ", bearingAccuracyDegrees: " << data.position.bearingAccuracyDegrees
                          << ", ageSeconds: " << data.position.ageSeconds << std::endl;
                          << ", ageSeconds: " << data.position.ageSeconds;
        }
        }
        internalState << std::endl;


        if (data.time.valid) {
        internalState << "Gnss Time Data:: timeEstimate: " << data.time.timeEstimate
        internalState << "Gnss Time Data:: timeEstimate: " << data.time.timeEstimate
                          << ", timeUncertaintyNs: " << data.time.timeUncertaintyNs << std::endl;
                      << ", timeUncertaintyNs: " << data.time.timeUncertaintyNs
        }
                      << ", frequencyUncertaintyNsPerSec: "
                      << data.time.frequencyUncertaintyNsPerSec << std::endl;


        if (data.satelliteDataArray.size() != 0) {
        if (data.satelliteDataArray.size() != 0) {
            internalState << "Satellite Data:: ";
            internalState << "Satellite Data for " << data.satelliteDataArray.size()
                          << " satellites:: " << std::endl;
        }
        }


        for (size_t i = 0; i < data.satelliteDataArray.size(); i++) {
        for (size_t i = 0; i < data.satelliteDataArray.size(); i++) {
@@ -1492,11 +1503,20 @@ static jstring android_location_GnssLocationProvider_get_internal_state(JNIEnv*
                          << static_cast<uint32_t>(data.satelliteDataArray[i].constellation)
                          << static_cast<uint32_t>(data.satelliteDataArray[i].constellation)
                          << ", ephemerisType: "
                          << ", ephemerisType: "
                          << static_cast<uint32_t>(data.satelliteDataArray[i].ephemerisType)
                          << static_cast<uint32_t>(data.satelliteDataArray[i].ephemerisType)
                          << ", ephemerisSource: "
                          << static_cast<uint32_t>(data.satelliteDataArray[i].ephemerisSource)
                          << ", ephemerisHealth: "
                          << static_cast<uint32_t>(data.satelliteDataArray[i].ephemerisHealth)
                          << ", serverPredictionIsAvailable: "
                          << data.satelliteDataArray[i].serverPredictionIsAvailable
                          << ", serverPredictionAgeSeconds: "
                          << data.satelliteDataArray[i].serverPredictionAgeSeconds
                          << ", ephemerisAgeSeconds: "
                          << ", ephemerisAgeSeconds: "
                          << data.satelliteDataArray[i].ephemerisAgeSeconds << std::endl;
                          << data.satelliteDataArray[i].ephemerisAgeSeconds << std::endl;
        }
        }
        result = env->NewStringUTF(internalState.str().c_str());
    }
    }

    result = env->NewStringUTF(internalState.str().c_str());
    return result;
    return result;
}
}