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

Commit d51789ae authored by Anil Admal's avatar Anil Admal Committed by Android (Google) Code Review
Browse files

Merge "Update GNSS Batching to use new GnssLocation with elapsed realtime (HAL)"

parents 0b074a9b 992cdabf
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -464,7 +464,9 @@ f27baaa587bc3dd9b740cb6928ab812b9b7d105b5187663938aee578105f3c39 android.hardwar
7f460e795f5d1ed5e378935f98c6db4d39497de988aef1b4c2a4a07a6c400392 android.hardware.gnss@2.0::IAGnss
2e5ad983734069e84a760004b32da0d09e4170c05380abe27e6eb80e4aa70d5a android.hardware.gnss@2.0::IAGnssCallback
1f4ac068a88a72360280d94a7f6fd7c63813c1eea4891a0eb01394d3e7e775f2 android.hardware.gnss@2.0::IAGnssRil
63216fcb23eaf4d6f12ea0e99b8bfdb8e4e57c02f215d433cd30943d850f61a7 android.hardware.gnss@2.0::IGnss
4deafcdcffa2d002119e7f58810b767a84666e76475aae68e757ec2845d9756d android.hardware.gnss@2.0::IGnss
db6bdf6dfc5edf6c85d2944976db899227abb51079c893874353c322342c50b6 android.hardware.gnss@2.0::IGnssBatching
1f89392f1ebb693d8fa6f50324b1635fc79fab246d31900e63998e1b0e17511c android.hardware.gnss@2.0::IGnssBatchingCallback
b11a5e4a1602d3f408716b6fe2c578a79f060d571aad8e828f9a4426d161fbcf android.hardware.gnss@2.0::IGnssCallback
ecc966c68bddbd95c8dae782b84204cf01c75734675e8769963f3b5106ec128b android.hardware.gnss@2.0::IGnssConfiguration
b670bae2ab8517336290532e364502b4db9120340d75474ccc8442b1b15d6ab7 android.hardware.gnss@2.0::IGnssDebug
+2 −0
Original line number Diff line number Diff line
@@ -12,6 +12,8 @@ hidl_interface {
        "IAGnssCallback.hal",
        "IAGnssRil.hal",
        "IGnss.hal",
        "IGnssBatching.hal",
        "IGnssBatchingCallback.hal",
        "IGnssCallback.hal",
        "IGnssConfiguration.hal",
        "IGnssDebug.hal",
+8 −0
Original line number Diff line number Diff line
@@ -27,6 +27,7 @@ import IGnssDebug;
import IGnssMeasurement;
import IAGnss;
import IAGnssRil;
import IGnssBatching;

/**
 * Represents the standard GNSS (Global Navigation Satellite System) interface.
@@ -104,6 +105,13 @@ interface IGnss extends @1.1::IGnss {
     */
    getExtensionVisibilityControl() generates (IGnssVisibilityControl visibilityControlIface);

    /**
     * This method returns the IGnssBatching interface.
     *
     * @return batchingIface Handle to the IGnssBatching interface.
     */
    getExtensionGnssBatching_2_0() generates (IGnssBatching batchingIface);

    /**
     * Injects current location from the best available location provider.
     *
+51 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2019 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package android.hardware.gnss@2.0;

import @1.0::IGnssBatching;
import IGnssBatchingCallback;

/**
 * Extended interface for GNSS Batching support.
 *
 * If this interface is supported, this batching request must be able to run in
 * parallel with, or without, non-batched location requested by the
 * IGnss start() & stop() - i.e. both requests must be handled independently,
 * and not interfere with each other.
 *
 * For example, if a 1Hz continuous output is underway on the IGnssCallback,
 * due to an IGnss start() operation,
 * and then a IGnssBatching start() is called for a location every 10
 * seconds, the newly added batching request must not disrupt the 1Hz
 * continuous location output on the IGnssCallback.
 *
 * As with GNSS Location outputs, source of location must be GNSS satellite
 * measurements, optionally using interial and baro sensors to improve
 * relative motion filtering. No additional absolute positioning information,
 * such as WiFi derived location, may be mixed with the GNSS information.
 */
interface IGnssBatching extends @1.0::IGnssBatching {
    /**
     * Opens the interface and provides the callback routines
     * to the implementation of this interface.
     *
     * @param callback Callback interface for IGnssBatching.
     *
     * @return success Returns true on success.
     */
    init_2_0(IGnssBatchingCallback callback) generates (bool success);
};
 No newline at end of file
+36 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2019 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package android.hardware.gnss@2.0;

/** The callback interface to report measurements from the HAL. */
interface IGnssBatchingCallback {
    /**
     * Called when a batch of locations is output, by various means, including
     * a flush request, as well as the buffer becoming full (if appropriate option
     * is set.)
     *
     * All locations returned by this callback must be cleared from the hardware
     * buffer, such the sequential calls of this callback do not return any
     * redundant locations.  (Same lat/lon, at a new time, is acceptable.)
     *
     * The GnssLocation struct in gnss@2.0 is extended to include elapsed realtime
     * information.
     *
     * @param locations GNSS Location information from HAL.
     */
    gnssLocationBatchCb(vec<GnssLocation> locations);
};
Loading