diff options
author | Thomas White <taw@physics.org> | 2020-08-21 22:28:50 +0200 |
---|---|---|
committer | Thomas White <taw@physics.org> | 2020-08-21 22:28:50 +0200 |
commit | d7468e259e77cfd64568dc50ba5c378145e5db7e (patch) | |
tree | 4a13184cc128e80ecf341effed138b9f91eac673 /guile/starlet | |
parent | 1a9ebe6735b7dab8784ce1aa9dc8eb0f4e3c24a4 (diff) |
Get rid of 'expand-state'
From now on, states will always be real states (not functions evaluating
to states). Cues, however, contain functions evaluating to states.
Diffstat (limited to 'guile/starlet')
-rw-r--r-- | guile/starlet/base.scm | 19 | ||||
-rw-r--r-- | guile/starlet/playback.scm | 4 |
2 files changed, 7 insertions, 16 deletions
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) |