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
|
-- This global variable has the current base offset for the input channels.
-- We want to map 16 input channels (from MIDI) to 512 output channels (ArtNet),
-- so we have 32 possible offsets (32 * 16 = 512)
current_layer = 0
-- Set the current_layer based on the control input channel
function control(value)
current_layer = math.floor(value * 31.99);
end
-- Handler functions for the input channels
-- Calculate the channel offset and just output the value the input channel provides
function in0(value)
output("out"..((current_layer * 16)), value)
print("Output on out"..(current_layer * 16))
end
function in1(value)
output("out"..((current_layer * 16) + 1), value)
end
function in2(value)
output("out"..((current_layer * 16) + 2), value)
end
function in3(value)
output("out"..((current_layer * 16) + 3), value)
end
function in4(value)
output("out"..((current_layer * 16) + 4), value)
end
function in5(value)
output("out"..((current_layer * 16) + 5), value)
end
function in6(value)
output("out"..((current_layer * 16) + 6), value)
end
function in7(value)
output("out"..((current_layer * 16) + 7), value)
end
function in8(value)
output("out"..((current_layer * 16) + 8), value)
end
function in9(value)
output("out"..((current_layer * 16) + 9), value)
end
function in10(value)
output("out"..((current_layer * 16) + 10), value)
end
function in11(value)
output("out"..((current_layer * 16) + 11), value)
end
function in12(value)
output("out"..((current_layer * 16) + 12), value)
end
function in13(value)
output("out"..((current_layer * 16) + 13), value)
end
function in14(value)
output("out"..((current_layer * 16) + 14), value)
end
function in15(value)
output("out"..((current_layer * 16) + 15), value)
end
|