1a46c0ec8Sopenharmony_cidigraph seats
2a46c0ec8Sopenharmony_ci{
3a46c0ec8Sopenharmony_ci  rankdir="BT";
4a46c0ec8Sopenharmony_ci  node [
5a46c0ec8Sopenharmony_ci    shape="box";
6a46c0ec8Sopenharmony_ci  ]
7a46c0ec8Sopenharmony_ci
8a46c0ec8Sopenharmony_ci  kernel [label="Kernel"];
9a46c0ec8Sopenharmony_ci
10a46c0ec8Sopenharmony_ci  event0 [URL="\ref libinput_event"];
11a46c0ec8Sopenharmony_ci  event1 [URL="\ref libinput_event"];
12a46c0ec8Sopenharmony_ci  event2 [URL="\ref libinput_event"];
13a46c0ec8Sopenharmony_ci  event3 [URL="\ref libinput_event"];
14a46c0ec8Sopenharmony_ci
15a46c0ec8Sopenharmony_ci  pseat0 [label="phys seat0"; URL="\ref libinput_seat_get_physical_name"];
16a46c0ec8Sopenharmony_ci  pseat1 [label="phys seat1"; URL="\ref libinput_seat_get_physical_name"];
17a46c0ec8Sopenharmony_ci
18a46c0ec8Sopenharmony_ci  lseatA [label="logical seat A"; URL="\ref libinput_seat_get_logical_name"];
19a46c0ec8Sopenharmony_ci  lseatB [label="logical seat B"; URL="\ref libinput_seat_get_logical_name"];
20a46c0ec8Sopenharmony_ci  lseatC [label="logical seat C"; URL="\ref libinput_seat_get_logical_name"];
21a46c0ec8Sopenharmony_ci
22a46c0ec8Sopenharmony_ci  ctx1 [label="libinput context 1"; URL="\ref libinput"];
23a46c0ec8Sopenharmony_ci  ctx2 [label="libinput context 2"; URL="\ref libinput"];
24a46c0ec8Sopenharmony_ci
25a46c0ec8Sopenharmony_ci  dev1 [label="device 'Foo'"];
26a46c0ec8Sopenharmony_ci  dev2 [label="device 'Bar'"];
27a46c0ec8Sopenharmony_ci  dev3 [label="device 'Spam'"];
28a46c0ec8Sopenharmony_ci  dev4 [label="device 'Egg'"];
29a46c0ec8Sopenharmony_ci
30a46c0ec8Sopenharmony_ci  kernel -> event0
31a46c0ec8Sopenharmony_ci  kernel -> event1
32a46c0ec8Sopenharmony_ci  kernel -> event2
33a46c0ec8Sopenharmony_ci  kernel -> event3
34a46c0ec8Sopenharmony_ci
35a46c0ec8Sopenharmony_ci  event0 -> pseat0
36a46c0ec8Sopenharmony_ci  event1 -> pseat0
37a46c0ec8Sopenharmony_ci  event2 -> pseat0
38a46c0ec8Sopenharmony_ci  event3 -> pseat1
39a46c0ec8Sopenharmony_ci
40a46c0ec8Sopenharmony_ci  pseat0 -> ctx1
41a46c0ec8Sopenharmony_ci  pseat1 -> ctx2
42a46c0ec8Sopenharmony_ci
43a46c0ec8Sopenharmony_ci  ctx1 -> lseatA
44a46c0ec8Sopenharmony_ci  ctx1 -> lseatB
45a46c0ec8Sopenharmony_ci  ctx2 -> lseatC
46a46c0ec8Sopenharmony_ci
47a46c0ec8Sopenharmony_ci  lseatA -> dev1
48a46c0ec8Sopenharmony_ci  lseatA -> dev2
49a46c0ec8Sopenharmony_ci  lseatB -> dev3
50a46c0ec8Sopenharmony_ci  lseatC -> dev4
51a46c0ec8Sopenharmony_ci}
52