summaryrefslogtreecommitdiff
path: root/src/init.scm
blob: 93747ba31163232bb0bfad08b056ecc227e307fe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
(define at
  (lambda (fix level)
    (if (list? fix)
      (for-each (lambda (q) (at q level)) fix)
      (set-intensity (find-fixture fixtures fix) level))))


(define find-fixture
  (lambda (fixtures name)
    (cond
      [(null? fixtures) #f]
      [(eq? (fixture-name (car fixtures)) name) (car fixtures)]
      [else (find-fixture (cdr fixtures) name)])))

(define find-fixture-class
  (lambda (fixture-classes name)
    (cond
      [(null? fixture-classes) #f]
      [(string-ci=? (fixture-class-name (car fixture-classes)) name) (car fixture-classes)]
      [else (find-fixture-class (cdr fixture-classes) name)])))

#!
(let ([robe-dl7s-mode1 (find-fixture-class fixture-class-library
                                           "Robe Robin DL7S Profile Mode 1")])
  (if robe-dl7s-mode1
    (begin
      (patch-fixture 'mh1 robe-dl7s-mode1 0 1)
      (patch-fixture 'mh2 robe-dl7s-mode1 0 52)
      (patch-fixture 'mh3 robe-dl7s-mode1 0 103)
      (patch-fixture 'mh4 robe-dl7s-mode1 0 154))
    (display "DL7S not available\n")))
!#

(let ([dimmer (find-fixture-class fixture-class-library "Generic dimmer")])
  (if dimmer
    (patch-fixture 'dim1 dimmer 0 1)
    (display "Dimmer class not available\n")))