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

Commit 9ff7d223 authored by Peng Xu's avatar Peng Xu Committed by Ashutosh Joshi
Browse files

Exposing Context Hub service.

Adding the Context hub service. This is the service that exposes
the context hub HAL to the system. The API exposed is a System API.

Change-Id: I854141714ecd21f6386e6b15b7bc9a997483ccf6
parent 48653d22
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -9327,6 +9327,7 @@ package android.content.pm {
    field public int flags;
    field public int largestWidthLimitDp;
    field public java.lang.String manageSpaceActivityName;
    field public java.lang.String minSdkVersion;
    field public java.lang.String nativeLibraryDir;
    field public java.lang.String permission;
    field public java.lang.String processName;
+11 −15
Original line number Diff line number Diff line
@@ -8408,6 +8408,7 @@ package android.content {
    field public static final java.lang.String CLIPBOARD_SERVICE = "clipboard";
    field public static final java.lang.String CONNECTIVITY_SERVICE = "connectivity";
    field public static final java.lang.String CONSUMER_IR_SERVICE = "consumer_ir";
    field public static final java.lang.String CONTEXTHUB_SERVICE = "contexthub";
    field public static final int CONTEXT_IGNORE_SECURITY = 2; // 0x2
    field public static final int CONTEXT_INCLUDE_CODE = 1; // 0x1
    field public static final int CONTEXT_RESTRICTED = 4; // 0x4
@@ -9649,6 +9650,7 @@ package android.content.pm {
    field public int flags;
    field public int largestWidthLimitDp;
    field public java.lang.String manageSpaceActivityName;
    field public java.lang.String minSdkVersion;
    field public java.lang.String nativeLibraryDir;
    field public java.lang.String permission;
    field public java.lang.String processName;
@@ -15288,37 +15290,31 @@ package android.hardware.location {
    method public java.lang.String getToolchain();
    method public int getToolchainVersion();
    method public java.lang.String getVendor();
    method public void setId(int);
    method public void setMemoryRegions(android.hardware.location.MemoryRegion[]);
    method public void setName(java.lang.String);
    method public void setPeakMips(float);
    method public void setPeakPowerDrawMw(float);
    method public void setPlatformVersion(int);
    method public void setSleepPowerDrawMw(float);
    method public void setStaticSwVersion(int);
    method public void setStoppedPowerDrawMw(float);
    method public void setSupportedSensors(int[]);
    method public void setToolchain(java.lang.String);
    method public void setToolchainVersion(int);
    method public void setVendor(java.lang.String);
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.hardware.location.ContextHubInfo> CREATOR;
  }
  public final class ContextHubManager {
    method public java.lang.Integer[] findNanoAppOnHub(int, android.hardware.location.NanoAppFilter);
    method public int[] getContexthubHandles();
    method public android.hardware.location.ContextHubInfo getContexthubInfo(int);
    method public int[] getContextHubHandles();
    method public android.hardware.location.ContextHubInfo getContextHubInfo(int);
    method public android.hardware.location.NanoAppInstanceInfo getNanoAppInstanceInfo(int);
    method public int loadNanoApp(int, android.hardware.location.NanoApp);
    method public int registerContextHubCallback(android.hardware.location.ContextHubManager.ContextHubCallback);
    method public int registerContextHubCallback(android.hardware.location.ContextHubManager.ContextHubCallback, android.os.Handler);
    method public int sendMessage(int, int, android.hardware.location.ContextHubMessage);
    method public int unloadNanoApp(int);
    method public int unregisterContextHubCallback(android.hardware.location.ContextHubManager.ContextHubCallback);
    field public static final int ANY_HUB = -1; // 0xffffffff
    field public static final int MSG_DATA_SEND = 3; // 0x3
    field public static final int MSG_LOAD_NANO_APP = 1; // 0x1
    field public static final int MSG_UNLOAD_NANO_APP = 2; // 0x2
  }
  public abstract class ContextHubManager.ContextHubCallback {
    ctor public ContextHubManager.ContextHubCallback();
  }
  public class ContextHubMessage {
    ctor public ContextHubMessage(int, int, byte[]);
    method public int describeContents();
+1 −0
Original line number Diff line number Diff line
@@ -9336,6 +9336,7 @@ package android.content.pm {
    field public int flags;
    field public int largestWidthLimitDp;
    field public java.lang.String manageSpaceActivityName;
    field public java.lang.String minSdkVersion;
    field public java.lang.String nativeLibraryDir;
    field public java.lang.String permission;
    field public java.lang.String processName;
+9 −0
Original line number Diff line number Diff line
@@ -51,6 +51,7 @@ import android.hardware.display.DisplayManager;
import android.hardware.hdmi.HdmiControlManager;
import android.hardware.hdmi.IHdmiControlService;
import android.hardware.input.InputManager;
import android.hardware.location.ContextHubManager;
import android.hardware.usb.IUsbManager;
import android.hardware.usb.UsbManager;
import android.hardware.radio.RadioManager;
@@ -765,6 +766,14 @@ final class SystemServiceRegistry {
            public SystemHealthManager createService(ContextImpl ctx) {
                return new SystemHealthManager();
            }});

        registerService(Context.CONTEXTHUB_SERVICE, ContextHubManager.class,
                new CachedServiceFetcher<ContextHubManager>() {
            @Override
            public ContextHubManager createService(ContextImpl ctx) {
                return new ContextHubManager(ctx.getOuterContext(),
                  ctx.mMainThread.getHandler().getLooper());
            }});
    }

    /**
+13 −0
Original line number Diff line number Diff line
@@ -2681,6 +2681,7 @@ public abstract class Context {
            HARDWARE_PROPERTIES_SERVICE,
            //@hide: SOUND_TRIGGER_SERVICE,
            SHORTCUT_SERVICE,
            //@hide: CONTEXTHUB_SERVICE,
    })
    @Retention(RetentionPolicy.SOURCE)
    public @interface ServiceName {}
@@ -3584,6 +3585,18 @@ public abstract class Context {
     */
    public static final String SHORTCUT_SERVICE = "shortcut";

    /**
     * Use with {@link #getSystemService} to retrieve a {@link
     * android.hardware.location.ContextHubManager} for accessing context hubs.
     *
     * @see #getSystemService
     * @see android.hardware.location.ContextHubManager
     *
     * @hide
     */
    @SystemApi
    public static final String CONTEXTHUB_SERVICE = "contexthub";

    /**
     * Use with {@link #getSystemService} to retrieve a
     * {@link android.os.health.SystemHealthManager} for accessing system health (battery, power,
Loading