summaryrefslogtreecommitdiff
path: root/guile/nanolight/fixture.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guile/nanolight/fixture.scm')
-rw-r--r--guile/nanolight/fixture.scm22
1 files changed, 5 insertions, 17 deletions
diff --git a/guile/nanolight/fixture.scm b/guile/nanolight/fixture.scm
index 4a530f7..df4b168 100644
--- a/guile/nanolight/fixture.scm
+++ b/guile/nanolight/fixture.scm
@@ -1,10 +1,9 @@
(define-module (nanolight fixture)
#:use-module (oop goops)
- #:use-module (nanolight state)
#:use-module (ice-9 threads)
#:export (<fixture> <fixture-attribute>
make-output
- patch-fixture show-state
+ patch-fixture
fixture-string get-address-string
percent->dmxval
get-start-addr get-universe))
@@ -112,8 +111,7 @@
(define (make-output)
- (let ((fixtures '())
- (current-state '()))
+ (let ((fixtures '()))
(define (run-scanout)
@@ -128,19 +126,13 @@
universes)))
(u8vector-set!
(assq-ref universes universe)
- addr (round-dmx value)))
-
- (define (execute-state-assignment state-assignment)
- (let ((attr (find-attribute
- (fixture state-assignment)
- (attribute state-assignment))))
- (when attr
- (let ((trans (translator attr)))
+ addr (round-dmx value)
+
(trans
(get-universe (fixture state-assignment))
(get-start-addr (fixture state-assignment))
((value-func state-assignment))
- set-dmx)))))
+ set-dmx)))
(for-each execute-state-assignment current-state)
@@ -155,16 +147,12 @@
(make-thread run-scanout)
; Method functions
- (define (show-state state)
- (set! current-state state))
-
(define (add-fixture fixture)
(set! fixtures (cons fixture fixtures)))
(lambda args
(apply
(case (car args)
- ((show-state) show-state)
((add-fixture) add-fixture)
(else => (error "Invalid method")))
(cdr args)))))