Index: device/generic_sensor/android/java/src/org/chromium/device/sensors/PlatformSensorProvider.java |
diff --git a/device/generic_sensor/android/java/src/org/chromium/device/sensors/PlatformSensorProvider.java b/device/generic_sensor/android/java/src/org/chromium/device/sensors/PlatformSensorProvider.java |
deleted file mode 100644 |
index 18aebf099213256d52fc682a404cc447cad1a308..0000000000000000000000000000000000000000 |
--- a/device/generic_sensor/android/java/src/org/chromium/device/sensors/PlatformSensorProvider.java |
+++ /dev/null |
@@ -1,167 +0,0 @@ |
-// Copyright 2016 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-package org.chromium.device.sensors; |
- |
-import android.content.Context; |
-import android.hardware.Sensor; |
-import android.hardware.SensorManager; |
-import android.os.Build; |
-import android.os.Handler; |
-import android.os.HandlerThread; |
- |
-import org.chromium.base.ContextUtils; |
-import org.chromium.base.annotations.CalledByNative; |
-import org.chromium.base.annotations.JNINamespace; |
-import org.chromium.device.mojom.SensorType; |
- |
-import java.util.HashSet; |
-import java.util.Set; |
- |
-/** |
- * Lifetime is controlled by device::PlatformSensorProviderAndroid. |
- */ |
-@JNINamespace("device") |
-class PlatformSensorProvider { |
- /** |
- * SensorManager that is shared among PlatformSensor objects. It is used for Sensor object |
- * creation and @see android.hardware.SensorEventListener registration. |
- * @see android.hardware.SensorManager |
- */ |
- private final SensorManager mSensorManager; |
- |
- /** |
- * Thread that is handling all sensor events. |
- */ |
- private HandlerThread mSensorsThread; |
- |
- /** |
- * Processes messages on #mSensorsThread message queue. Provided to #mSensorManager when |
- * sensor should start polling for data. |
- */ |
- private Handler mHandler; |
- |
- /** |
- * Set of currently active PlatformSensor objects. |
- */ |
- private final Set<PlatformSensor> mActiveSensors = new HashSet<PlatformSensor>(); |
- |
- /** |
- * Returns shared thread Handler. |
- * |
- * @return Handler thread handler. |
- */ |
- public Handler getHandler() { |
- return mHandler; |
- } |
- |
- /** |
- * Returns shared SensorManager. |
- * |
- * @return SensorManager sensor manager. |
- */ |
- public SensorManager getSensorManager() { |
- return mSensorManager; |
- } |
- |
- /** |
- * Notifies PlatformSensorProvider that sensor started polling for data. Adds sensor to |
- * a set of active sensors, creates and starts new thread if needed. |
- */ |
- public void sensorStarted(PlatformSensor sensor) { |
- if (mActiveSensors.isEmpty()) startSensorThread(); |
- mActiveSensors.add(sensor); |
- } |
- |
- /** |
- * Notifies PlatformSensorProvider that sensor is no longer polling for data. When |
- * #mActiveSensors becomes empty thread is stopped. |
- */ |
- public void sensorStopped(PlatformSensor sensor) { |
- mActiveSensors.remove(sensor); |
- if (mActiveSensors.isEmpty()) stopSensorThread(); |
- } |
- |
- /** |
- * Starts sensor handler thread. |
- */ |
- protected void startSensorThread() { |
- if (mSensorsThread == null) { |
- mSensorsThread = new HandlerThread("SensorsHandlerThread"); |
- mSensorsThread.start(); |
- mHandler = new Handler(mSensorsThread.getLooper()); |
- } |
- } |
- |
- /** |
- * Stops sensor handler thread. |
- */ |
- protected void stopSensorThread() { |
- if (mSensorsThread != null) { |
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) { |
- mSensorsThread.quitSafely(); |
- } else { |
- mSensorsThread.quit(); |
- } |
- mSensorsThread = null; |
- mHandler = null; |
- } |
- } |
- |
- /** |
- * Constructor. |
- */ |
- protected PlatformSensorProvider(Context context) { |
- mSensorManager = (SensorManager) context.getSystemService(Context.SENSOR_SERVICE); |
- } |
- |
- /** |
- * Creates PlatformSensorProvider instance. |
- * |
- * @return PlatformSensorProvider new PlatformSensorProvider instance. |
- */ |
- protected static PlatformSensorProvider createForTest(Context context) { |
- return new PlatformSensorProvider(context); |
- } |
- |
- /** |
- * Creates PlatformSensorProvider instance. |
- * |
- * @return PlatformSensorProvider new PlatformSensorProvider instance. |
- */ |
- @CalledByNative |
- protected static PlatformSensorProvider create() { |
- return new PlatformSensorProvider(ContextUtils.getApplicationContext()); |
- } |
- |
- /** |
- * Creates PlatformSensor instance. |
- * |
- * @param type type of a sensor. |
- * @return PlatformSensor new PlatformSensor instance or null if sensor cannot be created. |
- */ |
- @CalledByNative |
- protected PlatformSensor createSensor(int type) { |
- if (mSensorManager == null) return null; |
- |
- switch (type) { |
- case SensorType.AMBIENT_LIGHT: |
- return PlatformSensor.create(Sensor.TYPE_LIGHT, 1, this); |
- case SensorType.ACCELEROMETER: |
- return PlatformSensor.create(Sensor.TYPE_ACCELEROMETER, 3, this); |
- case SensorType.LINEAR_ACCELERATION: |
- return PlatformSensor.create(Sensor.TYPE_LINEAR_ACCELERATION, 3, this); |
- case SensorType.GYROSCOPE: |
- return PlatformSensor.create(Sensor.TYPE_GYROSCOPE, 3, this); |
- case SensorType.MAGNETOMETER: |
- return PlatformSensor.create(Sensor.TYPE_MAGNETIC_FIELD, 3, this); |
- case SensorType.ABSOLUTE_ORIENTATION: |
- return PlatformSensor.create(Sensor.TYPE_ROTATION_VECTOR, 4, this); |
- case SensorType.RELATIVE_ORIENTATION: |
- return PlatformSensor.create(Sensor.TYPE_GAME_ROTATION_VECTOR, 4, this); |
- default: |
- return null; |
- } |
- } |
-} |