Total Complexity | 4 |
Total Lines | 23 |
Duplicated Lines | 0 % |
Changes | 3 | ||
Bugs | 0 | Features | 0 |
1 | class Led(object): |
||
2 | def __init__(self, bus, address, port): |
||
3 | self.bus = bus |
||
4 | self.address = address |
||
5 | self.port = port |
||
6 | self.active = False |
||
7 | |||
8 | def activate(self): |
||
9 | self.__toggle(True) |
||
10 | self.active = True |
||
11 | |||
12 | def deactivate(self): |
||
13 | self.__toggle(False) |
||
14 | self.active = False |
||
15 | |||
16 | def __toggle(self, state): |
||
17 | state_list = list(bin(self.active)[2:].zfill(8)) |
||
18 | |||
19 | state_list[self.port] = int(state) |
||
20 | state = ''.join(state_list) |
||
21 | |||
22 | state = int(state, 2) |
||
23 | self.bus.write_byte(self.address, state) |
||
24 |