diff --git a/show/dance2023/theaterLightConfig.n3 b/show/dance2023/theaterLightConfig.n3 --- a/show/dance2023/theaterLightConfig.n3 +++ b/show/dance2023/theaterLightConfig.n3 @@ -6,25 +6,50 @@ @prefix show: . @prefix xsd: . +:EffectFunction rdfs:comment """ +Linked to a code function. That func's Inputs are +1) magic stuff like time, +2) the effectAttrs listed under (?effect :input ?) + +Outputs are always a DeviceSettings list which can affect arbitrary devices. +""" . +show:fadePage1f0 rdfs:comment ":strength connects the fader to sub0" . show:fadePage1 a :FadePage; rdfs:label "live controls"; :fader show:fadePage1f0, show:fadePage1f1 . -show:fadePage1f0 a :Fader; :column "1"; :effectAttr :strength; :effectClass effect:effect0; :value 0.306 . -show:fadePage1f1 a :Fader; :column "2"; :effectAttr :strength; :effectClass effect:effect2; :value 0.58 . +show:fadePage1f0 + a :Fader; + :column "1"; + :effect effect:sub0; + :setting [ :effectAttr :strength ] . # fader value is applied to this attr. -effect:effect0 +effect:sub0 a :Effect; - :setting effect:effect0_set1 . -effect:effect0_set1 :device dev:plain1; :deviceAttr :brightness; :scaledValue 0.5 . + :effectFunction effect:scale; + :input [ :effectAttr :strength ]; # also put the time here if the func needs it. + :setting + [ :device dev:plain1; :deviceAttr :brightness; :value 0.5 ], + [ :device dev:par2; :deviceAttr :color; :value "#ff8000" ] . -effect:effect2 a :Effect; - rdfs:label "effect2"; - :publishAttr :strength; - :setting effect:effect2_set0, effect:effect2_set1, effect:effect2_set2, effect:effect2_set3 . -effect:effect2_set0 :device dev:par6; :deviceAttr :color; :scaledValue 0.251 . -effect:effect2_set1 :device dev:par2; :deviceAttr :color; :scaledValue 0.714 . -effect:effect2_set2 :device dev:strip1; :deviceAttr :color; :scaledValue 0.651 . -effect:effect2_set3 :device dev:strip2; :deviceAttr :color; :scaledValue 0.22 . +effect:scale + a :EffectFunction; + rdfs:label "a submaster- a few devices at specified colors"; + :input + [ :effectAttr :strength; :value 0 ], # overridden by fader + [ :effectAttr :output; :value2 [ # something to say 'this attr value must resemble the following graph' + :device :valueRequired; # ...and it's repeatable, unlike :strength + :deviceAttr :valueRequired; + :value :valueRequired ] ] . + + +# show:fadePage1f1 a :Fader; :column "2"; :effectAttr :strength; :effect effect:effect2 . +# effect:effect2 a :Effect; +# :publishAttr :strength; +# :setting effect:effect2_set0, effect:effect2_set1, effect:effect2_set2, effect:effect2_set3 . +# effect:effect2_set0 :device dev:par6; :deviceAttr :color; :scaledValue 0.251 . +# effect:effect2_set1 :device dev:par2; :deviceAttr :color; :scaledValue 0.714 . +# effect:effect2_set2 :device dev:strip1; :deviceAttr :color; :scaledValue 0.651 . +# effect:effect2_set3 :device dev:strip2; :deviceAttr :color; :scaledValue 0.22 . dev:strip1 a :Bar612601d; :dmxUniverse dmxA:; :dmxBase 175 .