diff options
-rw-r--r-- | examples/demo.scm | 8 | ||||
-rw-r--r-- | guile/starlet/base.scm | 19 | ||||
-rw-r--r-- | guile/starlet/playback.scm | 4 |
3 files changed, 11 insertions, 20 deletions
diff --git a/examples/demo.scm b/examples/demo.scm index 1dbc783..1e78ea7 100644 --- a/examples/demo.scm +++ b/examples/demo.scm @@ -75,20 +75,20 @@ (define cue-list - (list (cue 0 (make-empty-state) + (list (cue 0 make-empty-state #:fade-up 1 #:fade-down 1) - (cue 1 example-state-1 + (cue 1 (lambda () example-state-1) #:fade-up 3 #:fade-down 5) - (cue 2 example-state-2 + (cue 2 (lambda () example-state-2) #:fade-up 3 #:fade-down 1 #:down-delay 3) - (cue 3 (make-empty-state) + (cue 3 make-empty-state #:fade-up 0 #:fade-down 2))) diff --git a/guile/starlet/base.scm b/guile/starlet/base.scm index 8be8576..839c064 100644 --- a/guile/starlet/base.scm +++ b/guile/starlet/base.scm @@ -12,7 +12,7 @@ home-attr! home-all! blackout scanout-freq make-empty-state register-state! percent->dmxval msb lsb - hirestime expand-state set-in-state! state-for-each + hirestime set-in-state! state-for-each merge-states-htp value->number get-attr-name get-state-hash-table scanout-fixture get-fixture-universe get-fixture-addr @@ -217,14 +217,6 @@ val)) -;; If "state" is a procedure, call it to get the real state -;; Otherwise, pass through -(define (expand-state state) - (if (procedure? state) - (state) - state)) - - (define (merge-rule-ltp attr a b) (lambda (time) (value->number b time))) @@ -250,7 +242,7 @@ (let ((combined-state (make <starlet-state>))) (for-each (lambda (state) (add-state-to-state! merge-rule - (expand-state state) + state combined-state)) list-of-states) combined-state)) @@ -392,10 +384,9 @@ (syntax-rules () ((_ state-name body ...) (define state-name - (lambda () - (parameterize ((current-state (make-empty-state))) - body ... - (current-state))))))) + (parameterize ((current-state (make-empty-state))) + body ... + (current-state)))))) (define-syntax at diff --git a/guile/starlet/playback.scm b/guile/starlet/playback.scm index 36d76a1..d8cb861 100644 --- a/guile/starlet/playback.scm +++ b/guile/starlet/playback.scm @@ -151,7 +151,7 @@ (define (cut-to-cue! pb cue) - (let* ((state (expand-state (get-cue-state cue)))) + (let ((state ((get-cue-state cue)))) ;; Flush everything out and just set the state (set-active-fade-list! pb (list (make-fade @@ -175,7 +175,7 @@ (define (make-fade-from-cue cue time) (make-fade - (expand-state (get-cue-state cue)) + ((get-cue-state cue)) 0.0 1.0 (up-time cue) |