final class android.hardware.SystemSensorManager$SensorEventQueue extends android.hardware.SystemSensorManager$BaseEventQueue
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: android.hardware.SystemSensorManager$SensorEventQueue
super_class: android.hardware.SystemSensorManager$BaseEventQueue
{
private final android.hardware.SensorEventListener mListener;
descriptor: Landroid/hardware/SensorEventListener;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final android.util.SparseArray<android.hardware.SensorEvent> mSensorsEvents;
descriptor: Landroid/util/SparseArray;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Landroid/util/SparseArray<Landroid/hardware/SensorEvent;>;
public void <init>(android.hardware.SensorEventListener, android.os.Looper, android.hardware.SystemSensorManager, java.lang.String);
descriptor: (Landroid/hardware/SensorEventListener;Landroid/os/Looper;Landroid/hardware/SystemSensorManager;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 2
aload 3
iconst_0
aload 4
invokespecial android.hardware.SystemSensorManager$BaseEventQueue.<init>:(Landroid/os/Looper;Landroid/hardware/SystemSensorManager;ILjava/lang/String;)V
1: aload 0
new android.util.SparseArray
dup
invokespecial android.util.SparseArray.<init>:()V
putfield android.hardware.SystemSensorManager$SensorEventQueue.mSensorsEvents:Landroid/util/SparseArray;
2: aload 0
aload 1
putfield android.hardware.SystemSensorManager$SensorEventQueue.mListener:Landroid/hardware/SensorEventListener;
3: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/hardware/SystemSensorManager$SensorEventQueue;
0 4 1 listener Landroid/hardware/SensorEventListener;
0 4 2 looper Landroid/os/Looper;
0 4 3 manager Landroid/hardware/SystemSensorManager;
0 4 4 packageName Ljava/lang/String;
MethodParameters:
Name Flags
listener
looper
manager
packageName
public void addSensorEvent(android.hardware.Sensor);
descriptor: (Landroid/hardware/Sensor;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: new android.hardware.SensorEvent
dup
aload 1
1: aload 0
getfield android.hardware.SystemSensorManager$SensorEventQueue.mManager:Landroid/hardware/SystemSensorManager;
getfield android.hardware.SystemSensorManager.mTargetSdkLevel:I
2: invokestatic android.hardware.Sensor.getMaxLengthValuesArray:(Landroid/hardware/Sensor;I)I
invokespecial android.hardware.SensorEvent.<init>:(I)V
astore 2
start local 2 3: aload 0
getfield android.hardware.SystemSensorManager$SensorEventQueue.mSensorsEvents:Landroid/util/SparseArray;
dup
astore 3
monitorenter
4: aload 0
getfield android.hardware.SystemSensorManager$SensorEventQueue.mSensorsEvents:Landroid/util/SparseArray;
aload 1
invokevirtual android.hardware.Sensor.getHandle:()I
aload 2
invokevirtual android.util.SparseArray.put:(ILjava/lang/Object;)V
5: aload 3
monitorexit
6: goto 9
StackMap locals: android.hardware.SystemSensorManager$SensorEventQueue android.hardware.Sensor android.hardware.SensorEvent android.util.SparseArray
StackMap stack: java.lang.Throwable
7: aload 3
monitorexit
8: athrow
9: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Landroid/hardware/SystemSensorManager$SensorEventQueue;
0 10 1 sensor Landroid/hardware/Sensor;
3 10 2 t Landroid/hardware/SensorEvent;
Exception table:
from to target type
4 6 7 any
7 8 7 any
MethodParameters:
Name Flags
sensor
public void removeSensorEvent(android.hardware.Sensor);
descriptor: (Landroid/hardware/Sensor;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield android.hardware.SystemSensorManager$SensorEventQueue.mSensorsEvents:Landroid/util/SparseArray;
dup
astore 2
monitorenter
1: aload 0
getfield android.hardware.SystemSensorManager$SensorEventQueue.mSensorsEvents:Landroid/util/SparseArray;
aload 1
invokevirtual android.hardware.Sensor.getHandle:()I
invokevirtual android.util.SparseArray.delete:(I)V
2: aload 2
monitorexit
3: goto 6
StackMap locals: android.hardware.SystemSensorManager$SensorEventQueue android.hardware.Sensor android.util.SparseArray
StackMap stack: java.lang.Throwable
4: aload 2
monitorexit
5: athrow
6: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Landroid/hardware/SystemSensorManager$SensorEventQueue;
0 7 1 sensor Landroid/hardware/Sensor;
Exception table:
from to target type
1 3 4 any
4 5 4 any
MethodParameters:
Name Flags
sensor
protected void dispatchSensorEvent(int, float[], int, long);
descriptor: (I[FIJ)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield android.hardware.SystemSensorManager$SensorEventQueue.mManager:Landroid/hardware/SystemSensorManager;
getfield android.hardware.SystemSensorManager.mHandleToSensor:Ljava/util/HashMap;
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast android.hardware.Sensor
astore 6
start local 6 1: aload 6
ifnonnull 3
2: return
3: StackMap locals: android.hardware.Sensor
StackMap stack:
aconst_null
astore 7
start local 7 4: aload 0
getfield android.hardware.SystemSensorManager$SensorEventQueue.mSensorsEvents:Landroid/util/SparseArray;
dup
astore 8
monitorenter
5: aload 0
getfield android.hardware.SystemSensorManager$SensorEventQueue.mSensorsEvents:Landroid/util/SparseArray;
iload 1
invokevirtual android.util.SparseArray.get:(I)Ljava/lang/Object;
checkcast android.hardware.SensorEvent
astore 7
6: aload 8
monitorexit
7: goto 10
StackMap locals: android.hardware.SystemSensorManager$SensorEventQueue int float[] int long android.hardware.Sensor android.hardware.SensorEvent android.util.SparseArray
StackMap stack: java.lang.Throwable
8: aload 8
monitorexit
9: athrow
10: StackMap locals:
StackMap stack:
aload 7
ifnonnull 12
11: return
12: StackMap locals:
StackMap stack:
aload 2
iconst_0
aload 7
getfield android.hardware.SensorEvent.values:[F
iconst_0
aload 7
getfield android.hardware.SensorEvent.values:[F
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
13: aload 7
lload 4
putfield android.hardware.SensorEvent.timestamp:J
14: aload 7
iload 3
putfield android.hardware.SensorEvent.accuracy:I
15: aload 7
aload 6
putfield android.hardware.SensorEvent.sensor:Landroid/hardware/Sensor;
16: aload 0
getfield android.hardware.SystemSensorManager$SensorEventQueue.mSensorAccuracies:Landroid/util/SparseIntArray;
iload 1
invokevirtual android.util.SparseIntArray.get:(I)I
istore 8
start local 8 17: aload 7
getfield android.hardware.SensorEvent.accuracy:I
iflt 20
iload 8
aload 7
getfield android.hardware.SensorEvent.accuracy:I
if_icmpeq 20
18: aload 0
getfield android.hardware.SystemSensorManager$SensorEventQueue.mSensorAccuracies:Landroid/util/SparseIntArray;
iload 1
aload 7
getfield android.hardware.SensorEvent.accuracy:I
invokevirtual android.util.SparseIntArray.put:(II)V
19: aload 0
getfield android.hardware.SystemSensorManager$SensorEventQueue.mListener:Landroid/hardware/SensorEventListener;
aload 7
getfield android.hardware.SensorEvent.sensor:Landroid/hardware/Sensor;
aload 7
getfield android.hardware.SensorEvent.accuracy:I
invokeinterface android.hardware.SensorEventListener.onAccuracyChanged:(Landroid/hardware/Sensor;I)V
20: StackMap locals: int
StackMap stack:
aload 0
getfield android.hardware.SystemSensorManager$SensorEventQueue.mListener:Landroid/hardware/SensorEventListener;
aload 7
invokeinterface android.hardware.SensorEventListener.onSensorChanged:(Landroid/hardware/SensorEvent;)V
21: return
end local 8 end local 7 end local 6 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Landroid/hardware/SystemSensorManager$SensorEventQueue;
0 22 1 handle I
0 22 2 values [F
0 22 3 inAccuracy I
0 22 4 timestamp J
1 22 6 sensor Landroid/hardware/Sensor;
4 22 7 t Landroid/hardware/SensorEvent;
17 22 8 accuracy I
Exception table:
from to target type
5 7 8 any
8 9 8 any
MethodParameters:
Name Flags
handle
values
inAccuracy
timestamp
protected void dispatchFlushCompleteEvent(int);
descriptor: (I)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield android.hardware.SystemSensorManager$SensorEventQueue.mListener:Landroid/hardware/SensorEventListener;
instanceof android.hardware.SensorEventListener2
ifeq 5
1: aload 0
getfield android.hardware.SystemSensorManager$SensorEventQueue.mManager:Landroid/hardware/SystemSensorManager;
getfield android.hardware.SystemSensorManager.mHandleToSensor:Ljava/util/HashMap;
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast android.hardware.Sensor
astore 2
start local 2 2: aload 2
ifnonnull 4
3: return
4: StackMap locals: android.hardware.Sensor
StackMap stack:
aload 0
getfield android.hardware.SystemSensorManager$SensorEventQueue.mListener:Landroid/hardware/SensorEventListener;
checkcast android.hardware.SensorEventListener2
aload 2
invokeinterface android.hardware.SensorEventListener2.onFlushCompleted:(Landroid/hardware/Sensor;)V
end local 2 5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Landroid/hardware/SystemSensorManager$SensorEventQueue;
0 6 1 handle I
2 5 2 sensor Landroid/hardware/Sensor;
MethodParameters:
Name Flags
handle
protected void dispatchAdditionalInfoEvent(int, int, int, float[], int[]);
descriptor: (III[F[I)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
getfield android.hardware.SystemSensorManager$SensorEventQueue.mListener:Landroid/hardware/SensorEventListener;
instanceof android.hardware.SensorEventCallback
ifeq 7
1: aload 0
getfield android.hardware.SystemSensorManager$SensorEventQueue.mManager:Landroid/hardware/SystemSensorManager;
getfield android.hardware.SystemSensorManager.mHandleToSensor:Ljava/util/HashMap;
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast android.hardware.Sensor
astore 6
start local 6 2: aload 6
ifnonnull 4
3: return
4: StackMap locals: android.hardware.Sensor
StackMap stack:
new android.hardware.SensorAdditionalInfo
dup
aload 6
iload 2
iload 3
aload 5
aload 4
invokespecial android.hardware.SensorAdditionalInfo.<init>:(Landroid/hardware/Sensor;II[I[F)V
5: astore 7
start local 7 6: aload 0
getfield android.hardware.SystemSensorManager$SensorEventQueue.mListener:Landroid/hardware/SensorEventListener;
checkcast android.hardware.SensorEventCallback
aload 7
invokevirtual android.hardware.SensorEventCallback.onSensorAdditionalInfo:(Landroid/hardware/SensorAdditionalInfo;)V
end local 7 end local 6 7: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Landroid/hardware/SystemSensorManager$SensorEventQueue;
0 8 1 handle I
0 8 2 type I
0 8 3 serial I
0 8 4 floatValues [F
0 8 5 intValues [I
2 7 6 sensor Landroid/hardware/Sensor;
6 7 7 info Landroid/hardware/SensorAdditionalInfo;
MethodParameters:
Name Flags
handle
type
serial
floatValues
intValues
}
SourceFile: "SystemSensorManager.java"
NestHost: android.hardware.SystemSensorManager
InnerClasses:
private abstract BaseEventQueue = android.hardware.SystemSensorManager$BaseEventQueue of android.hardware.SystemSensorManager
final SensorEventQueue = android.hardware.SystemSensorManager$SensorEventQueue of android.hardware.SystemSensorManager