The Open Lighting Project has moved!
We've launched our new site at www.openlighting.org. This wiki will remain and be updated with more technical information.
We've launched our new site at www.openlighting.org. This wiki will remain and be updated with more technical information.
Difference between revisions of "OLA Python API"
From wiki.openlighting.org
Line 1: | Line 1: | ||
− | + | == Building the Python Bindings == | |
+ | See [[Building LLA]] but run ''./configure --enable-python-libs'' | ||
+ | == Interesting Classes == | ||
+ | |||
+ | ; LlaClient | ||
+ | : the main connection class | ||
+ | ; dmxBuffer | ||
+ | : represents a list of DMX channel values | ||
+ | ; LlaClientObserver | ||
+ | : base class to handle events | ||
+ | ; LlaPlugin | ||
+ | : represents a Plugin | ||
+ | ; LlaDevice | ||
+ | : represents a Device | ||
+ | |||
+ | == Sending DMX == | ||
A simple example to send DMX: | A simple example to send DMX: | ||
<pre> | <pre> | ||
from lla import * | from lla import * | ||
+ | import sys | ||
con = LlaClient() | con = LlaClient() | ||
− | con.start() | + | if con.start(): |
+ | sys.exit() | ||
+ | |||
universe = 0 | universe = 0 | ||
+ | # create a dmxBuffer for the channel values | ||
+ | DMX_LEN = 512 | ||
dmx = dmxBuffer(DMX_LEN) | dmx = dmxBuffer(DMX_LEN) | ||
for i in range(0, DMX_LEN): | for i in range(0, DMX_LEN): | ||
Line 16: | Line 36: | ||
con.send_dmx(universe, dmx, DMX_LEN) | con.send_dmx(universe, dmx, DMX_LEN) | ||
+ | </pre> | ||
+ | |||
+ | == Receiving DMX == | ||
+ | |||
+ | Receiving is slightly harder, we need to setup an Observer object to handle the events: | ||
+ | |||
+ | <pre> | ||
+ | from lla import * | ||
+ | import sys | ||
+ | |||
+ | |||
</pre> | </pre> |
Revision as of 09:45, 13 October 2007
Building the Python Bindings
See Building LLA but run ./configure --enable-python-libs
Interesting Classes
- LlaClient
- the main connection class
- dmxBuffer
- represents a list of DMX channel values
- LlaClientObserver
- base class to handle events
- LlaPlugin
- represents a Plugin
- LlaDevice
- represents a Device
Sending DMX
A simple example to send DMX:
from lla import * import sys con = LlaClient() if con.start(): sys.exit() universe = 0 # create a dmxBuffer for the channel values DMX_LEN = 512 dmx = dmxBuffer(DMX_LEN) for i in range(0, DMX_LEN): dmx[i] = i con.send_dmx(universe, dmx, DMX_LEN)
Receiving DMX
Receiving is slightly harder, we need to setup an Observer object to handle the events:
from lla import * import sys