class com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor extends com.sun.glass.ui.monocle.LinuxTouchProcessor
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor
super_class: com.sun.glass.ui.monocle.LinuxTouchProcessor
{
private static final int ID_UNASSIGNED;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -1
private static final int COORD_UNDEFINED;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -2147483648
private int currentID;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int currentSlot;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private final java.util.Map<java.lang.Integer, java.lang.Integer> slotToIDMap;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/Integer;Ljava/lang/Integer;>;
void <init>(com.sun.glass.ui.monocle.LinuxInputDevice);
descriptor: (Lcom/sun/glass/ui/monocle/LinuxInputDevice;)V
flags: (0x0000)
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial com.sun.glass.ui.monocle.LinuxTouchProcessor.<init>:(Lcom/sun/glass/ui/monocle/LinuxInputDevice;)V
1: aload 0
iconst_m1
putfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.currentID:I
2: aload 0
iconst_0
putfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.currentSlot:I
3: aload 0
4: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.slotToIDMap:Ljava/util/Map;
5: aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.pipeline:Lcom/sun/glass/ui/monocle/TouchPipeline;
new com.sun.glass.ui.monocle.LookaheadTouchFilter
dup
iconst_0
invokespecial com.sun.glass.ui.monocle.LookaheadTouchFilter.<init>:(Z)V
invokevirtual com.sun.glass.ui.monocle.TouchPipeline.addFilter:(Lcom/sun/glass/ui/monocle/TouchFilter;)V
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/glass/ui/monocle/LinuxStatefulMultiTouchProcessor;
0 7 1 device Lcom/sun/glass/ui/monocle/LinuxInputDevice;
MethodParameters:
Name Flags
device
public void processEvents(com.sun.glass.ui.monocle.LinuxInputDevice);
descriptor: (Lcom/sun/glass/ui/monocle/LinuxInputDevice;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual com.sun.glass.ui.monocle.LinuxInputDevice.getBuffer:()Lcom/sun/glass/ui/monocle/LinuxEventBuffer;
astore 2
start local 2 1: ldc -2147483648
istore 3
start local 3 2: ldc -2147483648
istore 4
start local 4 3: iconst_0
istore 5
start local 5 4: goto 55
5: StackMap locals: com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor com.sun.glass.ui.monocle.LinuxInputDevice com.sun.glass.ui.monocle.LinuxEventBuffer int int int
StackMap stack:
aload 2
invokevirtual com.sun.glass.ui.monocle.LinuxEventBuffer.getEventType:()S
tableswitch { // 0 - 3
0: 35
1: 31
2: 54
3: 6
default: 54
}
6: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.transform:Lcom/sun/glass/ui/monocle/LinuxTouchTransform;
aload 2
invokevirtual com.sun.glass.ui.monocle.LinuxTouchTransform.getValue:(Lcom/sun/glass/ui/monocle/LinuxEventBuffer;)I
istore 6
start local 6 7: aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.transform:Lcom/sun/glass/ui/monocle/LinuxTouchTransform;
aload 2
invokevirtual com.sun.glass.ui.monocle.LinuxTouchTransform.getAxis:(Lcom/sun/glass/ui/monocle/LinuxEventBuffer;)I
lookupswitch { // 6
0: 25
1: 28
47: 8
53: 25
54: 28
57: 17
default: 30
}
8: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.currentID:I
iconst_m1
if_icmpeq 12
9: iload 3
ldc -2147483648
if_icmpne 10
iload 4
ldc -2147483648
if_icmpeq 12
10: StackMap locals:
StackMap stack:
aload 0
iload 3
iload 4
invokevirtual com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.updatePoint:(II)V
11: ldc -2147483648
dup
istore 4
istore 3
12: StackMap locals:
StackMap stack:
aload 0
iload 6
putfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.currentSlot:I
13: aload 0
aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.slotToIDMap:Ljava/util/Map;
aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.currentSlot:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
14: iconst_m1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
15: invokeinterface java.util.Map.getOrDefault:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
putfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.currentID:I
16: goto 54
17: StackMap locals:
StackMap stack:
iload 6
iconst_m1
if_icmpne 19
aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.currentID:I
iconst_m1
if_icmpeq 19
18: aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.state:Lcom/sun/glass/ui/monocle/TouchState;
aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.currentID:I
invokevirtual com.sun.glass.ui.monocle.TouchState.removePointForID:(I)V
19: StackMap locals:
StackMap stack:
aload 0
iload 6
putfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.currentID:I
20: aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.currentID:I
iconst_m1
if_icmpne 23
21: aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.slotToIDMap:Ljava/util/Map;
aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.currentSlot:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
22: goto 54
23: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.slotToIDMap:Ljava/util/Map;
aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.currentSlot:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.currentID:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
24: goto 54
25: StackMap locals:
StackMap stack:
iload 3
ldc -2147483648
if_icmpne 54
26: iload 6
istore 3
27: goto 54
28: StackMap locals:
StackMap stack:
iload 4
ldc -2147483648
if_icmpne 54
29: iload 6
istore 4
30: StackMap locals:
StackMap stack:
goto 54
end local 6 31: StackMap locals:
StackMap stack:
aload 2
invokevirtual com.sun.glass.ui.monocle.LinuxEventBuffer.getEventCode:()S
tableswitch { // 330 - 330
330: 32
default: 34
}
32: StackMap locals:
StackMap stack:
aload 2
invokevirtual com.sun.glass.ui.monocle.LinuxEventBuffer.getEventValue:()I
ifne 54
33: iconst_1
istore 5
34: StackMap locals:
StackMap stack:
goto 54
35: StackMap locals:
StackMap stack:
aload 2
invokevirtual com.sun.glass.ui.monocle.LinuxEventBuffer.getEventCode:()S
tableswitch { // 0 - 2
0: 45
1: 54
2: 36
default: 54
}
36: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.currentID:I
iconst_m1
if_icmpeq 43
37: iload 3
ldc -2147483648
if_icmpne 42
38: iload 4
ldc -2147483648
if_icmpne 42
39: aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.state:Lcom/sun/glass/ui/monocle/TouchState;
aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.currentID:I
invokevirtual com.sun.glass.ui.monocle.TouchState.removePointForID:(I)V
40: aload 0
iconst_m1
putfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.currentID:I
41: goto 43
42: StackMap locals:
StackMap stack:
aload 0
iload 3
iload 4
invokevirtual com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.updatePoint:(II)V
43: StackMap locals:
StackMap stack:
ldc -2147483648
dup
istore 4
istore 3
44: goto 54
45: StackMap locals:
StackMap stack:
iload 3
ldc -2147483648
if_icmpne 46
iload 4
ldc -2147483648
if_icmpeq 49
46: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.currentID:I
iconst_m1
if_icmpeq 49
47: aload 0
iload 3
iload 4
invokevirtual com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.updatePoint:(II)V
48: goto 51
StackMap locals:
StackMap stack:
49: iload 5
ifeq 51
50: aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.state:Lcom/sun/glass/ui/monocle/TouchState;
invokevirtual com.sun.glass.ui.monocle.TouchState.clear:()V
51: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.pipeline:Lcom/sun/glass/ui/monocle/TouchPipeline;
aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.state:Lcom/sun/glass/ui/monocle/TouchState;
invokevirtual com.sun.glass.ui.monocle.TouchPipeline.pushState:(Lcom/sun/glass/ui/monocle/TouchState;)V
52: ldc -2147483648
dup
istore 4
istore 3
53: iconst_0
istore 5
54: StackMap locals:
StackMap stack:
aload 2
invokevirtual com.sun.glass.ui.monocle.LinuxEventBuffer.nextEvent:()V
55: StackMap locals:
StackMap stack:
aload 2
invokevirtual com.sun.glass.ui.monocle.LinuxEventBuffer.hasNextEvent:()Z
ifne 5
56: aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.pipeline:Lcom/sun/glass/ui/monocle/TouchPipeline;
invokevirtual com.sun.glass.ui.monocle.TouchPipeline.flush:()V
57: 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 58 0 this Lcom/sun/glass/ui/monocle/LinuxStatefulMultiTouchProcessor;
0 58 1 device Lcom/sun/glass/ui/monocle/LinuxInputDevice;
1 58 2 buffer Lcom/sun/glass/ui/monocle/LinuxEventBuffer;
2 58 3 x I
3 58 4 y I
4 58 5 allPointsReleased Z
7 31 6 value I
MethodParameters:
Name Flags
device
private void updatePoint(int, int);
descriptor: (II)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.state:Lcom/sun/glass/ui/monocle/TouchState;
1: aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.currentID:I
invokevirtual com.sun.glass.ui.monocle.TouchState.getPointForID:(I)Lcom/sun/glass/ui/monocle/TouchState$Point;
2: astore 3
start local 3 3: aload 3
ifnonnull 7
4: new com.sun.glass.ui.monocle.TouchState$Point
dup
invokespecial com.sun.glass.ui.monocle.TouchState$Point.<init>:()V
astore 3
5: aload 3
aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.currentID:I
putfield com.sun.glass.ui.monocle.TouchState$Point.id:I
6: aload 0
getfield com.sun.glass.ui.monocle.LinuxStatefulMultiTouchProcessor.state:Lcom/sun/glass/ui/monocle/TouchState;
aload 3
invokevirtual com.sun.glass.ui.monocle.TouchState.addPoint:(Lcom/sun/glass/ui/monocle/TouchState$Point;)Lcom/sun/glass/ui/monocle/TouchState$Point;
astore 3
7: StackMap locals: com.sun.glass.ui.monocle.TouchState$Point
StackMap stack:
iload 1
ldc -2147483648
if_icmpeq 9
8: aload 3
iload 1
putfield com.sun.glass.ui.monocle.TouchState$Point.x:I
9: StackMap locals:
StackMap stack:
iload 2
ldc -2147483648
if_icmpeq 11
10: aload 3
iload 2
putfield com.sun.glass.ui.monocle.TouchState$Point.y:I
11: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/sun/glass/ui/monocle/LinuxStatefulMultiTouchProcessor;
0 12 1 x I
0 12 2 y I
3 12 3 p Lcom/sun/glass/ui/monocle/TouchState$Point;
MethodParameters:
Name Flags
x
y
}
SourceFile: "LinuxStatefulMultiTouchProcessor.java"
InnerClasses:
Point = com.sun.glass.ui.monocle.TouchState$Point of com.sun.glass.ui.monocle.TouchState