Add capability bit for Bluesky driving

Bug: 182304682
Test: on cuttlefish
Change-Id: Ic4655c5002712f7872c5a090986da5565ab63278
This commit is contained in:
Shinru Han
2021-03-16 17:37:16 +08:00
parent 314d760ccf
commit 2bd6304749
2 changed files with 32 additions and 1 deletions

View File

@@ -4450,6 +4450,7 @@ package android.location {
method public boolean hasLowPowerMode();
method public boolean hasMeasurementCorrections();
method public boolean hasMeasurementCorrectionsExcessPathLength();
method public boolean hasMeasurementCorrectionsForDriving();
method public boolean hasMeasurementCorrectionsLosSats();
method @Deprecated public boolean hasMeasurementCorrectionsReflectingPane();
method public boolean hasMeasurementCorrectionsReflectingPlane();
@@ -4465,6 +4466,7 @@ package android.location {
method @NonNull public android.location.GnssCapabilities.Builder setHasLowPowerMode(boolean);
method @NonNull public android.location.GnssCapabilities.Builder setHasMeasurementCorrections(boolean);
method @NonNull public android.location.GnssCapabilities.Builder setHasMeasurementCorrectionsExcessPathLength(boolean);
method @NonNull public android.location.GnssCapabilities.Builder setHasMeasurementCorrectionsForDriving(boolean);
method @NonNull public android.location.GnssCapabilities.Builder setHasMeasurementCorrectionsLosSats(boolean);
method @NonNull public android.location.GnssCapabilities.Builder setHasMeasurementCorrectionsReflectingPlane(boolean);
method @NonNull public android.location.GnssCapabilities.Builder setHasMeasurementCorrelationVectors(boolean);

View File

@@ -61,6 +61,8 @@ public final class GnssCapabilities implements Parcelable {
public static final int TOP_HAL_CAPABILITY_CORRELATION_VECTOR = 4096;
/** @hide */
public static final int TOP_HAL_CAPABILITY_SATELLITE_PVT = 8192;
/** @hide */
public static final int TOP_HAL_CAPABILITY_MEASUREMENT_CORRECTIONS_FOR_DRIVING = 16384;
/** @hide */
@IntDef(flag = true, prefix = {"TOP_HAL_CAPABILITY_"}, value = {TOP_HAL_CAPABILITY_SCHEDULING,
@@ -69,7 +71,8 @@ public final class GnssCapabilities implements Parcelable {
TOP_HAL_CAPABILITY_MEASUREMENTS, TOP_HAL_CAPABILITY_NAV_MESSAGES,
TOP_HAL_CAPABILITY_LOW_POWER_MODE, TOP_HAL_CAPABILITY_SATELLITE_BLOCKLIST,
TOP_HAL_CAPABILITY_MEASUREMENT_CORRECTIONS, TOP_HAL_CAPABILITY_ANTENNA_INFO,
TOP_HAL_CAPABILITY_CORRELATION_VECTOR, TOP_HAL_CAPABILITY_SATELLITE_PVT})
TOP_HAL_CAPABILITY_CORRELATION_VECTOR, TOP_HAL_CAPABILITY_SATELLITE_PVT,
TOP_HAL_CAPABILITY_MEASUREMENT_CORRECTIONS_FOR_DRIVING})
@Retention(RetentionPolicy.SOURCE)
public @interface TopHalCapabilityFlags {}
@@ -350,6 +353,17 @@ public final class GnssCapabilities implements Parcelable {
return (mTopFlags & TOP_HAL_CAPABILITY_CORRELATION_VECTOR) != 0;
}
/**
* Returns {@code true} if GNSS chipset will benefit from measurement corrections for driving
* use case if provided, {@code false} otherwise.
*
* @hide
*/
@SystemApi
public boolean hasMeasurementCorrectionsForDriving() {
return (mTopFlags & TOP_HAL_CAPABILITY_MEASUREMENT_CORRECTIONS_FOR_DRIVING) != 0;
}
/**
* Returns {@code true} if GNSS chipset supports line-of-sight satellite identification
* measurement corrections, {@code false} otherwise.
@@ -550,6 +564,9 @@ public final class GnssCapabilities implements Parcelable {
if (hasMeasurementCorrelationVectors()) {
builder.append("MEASUREMENT_CORRELATION_VECTORS ");
}
if (hasMeasurementCorrectionsForDriving()) {
builder.append("MEASUREMENT_CORRECTIONS_FOR_DRIVING ");
}
if (hasMeasurementCorrectionsLosSats()) {
builder.append("LOS_SATS ");
}
@@ -747,6 +764,18 @@ public final class GnssCapabilities implements Parcelable {
return this;
}
/**
* Sets measurement corrections for driving capability.
*
* @hide
*/
@SystemApi
public @NonNull Builder setHasMeasurementCorrectionsForDriving(boolean capable) {
mTopFlags = setFlag(mTopFlags, TOP_HAL_CAPABILITY_MEASUREMENT_CORRECTIONS_FOR_DRIVING,
capable);
return this;
}
/**
* Sets measurement corrections line-of-sight satellites capabilitity.
*