bin/dmx-web.py
author Tero Marttila <terom@paivola.fi>
Fri, 11 Apr 2014 21:45:26 +0300
changeset 75 baa33d32308e
child 83 136e210fce82
permissions -rwxr-xr-x
qmsk.dmx.web
75
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
     1
#!/usr/bin/env python
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
     2
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
     3
import pvl.args
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
     4
import pvl.web.args
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
     5
import qmsk.dmx
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
     6
import qmsk.dmx.web
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
     7
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
     8
import logging; log = logging.getLogger('dmx')
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
     9
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    10
import optparse
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    11
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    12
def main (argv) :
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    13
    """
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    14
        DMX web control.
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    15
    """
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    16
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    17
    parser = optparse.OptionParser(main.__doc__)
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    18
    parser.add_option_group(pvl.args.parser(parser))
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    19
    parser.add_option_group(pvl.web.args.parser(parser))
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    20
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    21
    parser.add_option('--dmx-serial', default=qmsk.dmx.DMX.SERIAL,
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    22
            help="Path to /dev/tty*")
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    23
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    24
    options, args = parser.parse_args(argv[1:])
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    25
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    26
    pvl.args.apply(options)
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    27
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    28
    # dmx
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    29
    dmx = qmsk.dmx.DMX.open(options.dmx_serial)
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    30
    dmx.zero()
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    31
    
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    32
    # app
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    33
    app = qmsk.dmx.web.DMXWebApplication(dmx)
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    34
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    35
    pvl.web.args.main(options, app)
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    36
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    37
if __name__ == '__main__':
baa33d32308e qmsk.dmx.web
Tero Marttila <terom@paivola.fi>
parents:
diff changeset
    38
    pvl.args.main(main)