-
Notifications
You must be signed in to change notification settings - Fork 187
/
IMSClass.puml
94 lines (67 loc) · 1.86 KB
/
IMSClass.puml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
@startuml
note as N1
类说明:
endnote
class InputReaderPolicyInterface {
}
class InputDispatcherPolicyInterface {
}
class PointerControllerPolicyInterface {
}
class NativeInputManager {
}
InputReaderPolicyInterface <|-- NativeInputManager
InputDispatcherPolicyInterface <|-- NativeInputManager
PointerControllerPolicyInterface <|-- NativeInputManager
class InputManagerInterface {
}
class InputManager {
sp<InputReaderInterface> mReader;
sp<InputReaderThread> mReaderThread;
sp<InputDispatcherInterface> mDispatcher;
sp<InputDispatcherThread> mDispatcherThread;
}
class InputReaderInterface {
}
class InputReader {
sp<InputReaderPolicyInterface> mPolicy;
sp<QueuedInputListener> mQueuedListener;
}
class InputListenerInterface {
}
class InputDispatcherInterface {
}
class InputDispatcher {
sp<InputDispatcherPolicyInterface> mPolicy;
}
class QueuedInputListener {
sp<InputListenerInterface> mInnerListener;
}
class Thread {
}
class InputReaderThread {
sp<InputReaderInterface> mReader;
virtual bool threadLoop();
}
class InputDispatcherThread {
sp<InputDispatcherInterface> mDispatcher;
virtual bool threadLoop();
}
InputManagerInterface <|-- InputManager
Thread <|-- InputReaderThread
Thread <|-- InputDispatcherThread
InputReaderThread *-- InputReaderInterface
InputDispatcherThread *-- InputDispatcherInterface
InputManager *-- InputReaderInterface
InputManager *-- InputDispatcherInterface
InputManager *-- InputReaderThread
InputManager *-- InputDispatcherThread
InputReaderInterface <|-- InputReader
InputListenerInterface <|-- InputDispatcherInterface
InputDispatcherInterface <|-- InputDispatcher
InputListenerInterface <|-- QueuedInputListener
QueuedInputListener *-- InputListenerInterface
InputDispatcher *-- InputDispatcherPolicyInterface
InputReader *-- InputReaderPolicyInterface
InputReader *-- QueuedInputListener
@enduml