-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathschema.puml
71 lines (60 loc) · 1.21 KB
/
schema.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
@startuml
!include schema.iuml
skinparam roundcorner 5
skinparam shadowing true
skinparam linetype ortho
skinparam packageStyle rectangle
hide methods
hide stereotypes
table(scene) {
scene_id : integer primary
---
name : text
}
table(light) {
light_id : integer primary
---
name : text
flags : integer
}
scene "0..*" -r- "1..*" light
(scene, light) .. member
table(member) {
scene_id : integer primary
light_id : integer notnull
unique(scene_id, light_id)
}
table(colors) {
color_id : integer primary
idx : integer primary
hue : integer
saturation : integer
value : integer
temperature : integer
transition : integer
}
table(light_map) {
light_id : integer primary
output_id : integer primary
---
power : integer
color_id : integer
mode : integer
---
glm_esn : integer generated(output_id >> 8)
glm_idx : integer generated(output_id & 0xff)
}
table(glm) {
esn : integer primary
---
model : text
capabilities : integer
sw_version : integer
last_seen : integer
---
output_count : integer generated(substr(model,5,1))
}
light -r- glm
(light, glm) .. light_map
light -u- colors : color_id
@enduml