blob: 445b991a0e658b047ad757af3bc650000154aec7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
import array
from ola.OlaClient import OlaClient
class OLAOutput:
def set_values(self, values):
send = set()
for c, v in values.items():
univ, addr = c.address
if univ not in self.universes:
self.universes[univ] = array.array('B', (0 for i in range(512)))
uni = self.universes[univ]
if uni[addr] != v:
uni[addr] = v
send.add(univ)
for univ in send:
self.client.SendDmx(univ, self.universes[univ])
def __init__(self):
self.client = OlaClient()
self.universes = {1: array.array('B', (0 for i in range(512)))}
|