7 |
7 |
8 import logging; log = logging.getLogger('dmx') |
8 import logging; log = logging.getLogger('dmx') |
9 |
9 |
10 import optparse |
10 import optparse |
11 |
11 |
|
12 def dmx_heads (options) : |
|
13 from qmsk.dmx import heads |
|
14 |
|
15 return { |
|
16 'ledpar': heads.Stairville_LEDPar56(1), |
|
17 'par1': heads.Dimmer(5), |
|
18 'par2': heads.Dimmer(6), |
|
19 'ledbar': heads.AmericanDJ_MegaTri60_Mode2(10), |
|
20 } |
|
21 |
12 def main (argv) : |
22 def main (argv) : |
13 """ |
23 """ |
14 DMX web control. |
24 DMX web control. |
15 """ |
25 """ |
16 |
26 |
17 parser = optparse.OptionParser(main.__doc__) |
27 parser = optparse.OptionParser(main.__doc__) |
18 parser.add_option_group(pvl.args.parser(parser)) |
28 parser.add_option_group(pvl.args.parser(parser)) |
19 parser.add_option_group(pvl.web.args.parser(parser)) |
29 parser.add_option_group(pvl.web.args.parser(parser)) |
20 |
30 |
21 parser.add_option('--dmx-serial', default=qmsk.dmx.DMX.SERIAL, |
31 parser.add_option('--dmx-serial', default=None, |
22 help="Path to /dev/tty*") |
32 help="Path to /dev/tty*") |
23 |
33 |
24 options, args = parser.parse_args(argv[1:]) |
34 options, args = parser.parse_args(argv[1:]) |
25 |
35 |
26 pvl.args.apply(options) |
36 pvl.args.apply(options) |
27 |
37 |
28 # dmx |
38 # dmx |
29 dmx = qmsk.dmx.DMX.open(options.dmx_serial) |
39 if options.dmx_serial : |
30 dmx.zero() |
40 dmx = qmsk.dmx.DMX.open(options.dmx_serial) |
|
41 #dmx.zero() |
|
42 else : |
|
43 dmx = None |
31 |
44 |
32 # app |
45 # app |
33 app = qmsk.dmx.web.DMXWebApplication(dmx) |
46 app = qmsk.dmx.web.DMXWebApplication(dmx, dmx_heads(options)) |
34 |
47 |
35 pvl.web.args.main(options, app) |
48 pvl.web.args.main(options, app) |
36 |
49 |
37 if __name__ == '__main__': |
50 if __name__ == '__main__': |
38 pvl.args.main(main) |
51 pvl.args.main(main) |