DDF DMXC2: Difference between revisions

From English DMXC-Wiki
No edit summary
 
(34 intermediate revisions by one other user not shown)
Line 1: Line 1:
{{Chaptertitle_DMXC}}<br>
{{Chaptertitle}}<br>
{{Inuse}}<br>
<!--{{Inuse}}<br>-->
{{Hint|25.10.2013: UPrenner: create the article page<br>07.11.2013 UPrenner: work-in-progress<br>
{{Hint|25.10.2013: UPrenner: create the article page<br>07.11.2013 UPrenner: work-in-progress<br>
<!--25.10.2013: UPrenner article ready, just update of pictures<br>'''If you are a native speaker, please Help us and review this-->
11.11.2013: UPrenner article ready, just update of pictures<br>'''If you are a native speaker, please Help us and review this
}}<br>
}}<br>
{{NavigationTop-Man2
{{NavigationTop-Man2
Line 12: Line 12:
{{Start-LaTeX}}
{{Start-LaTeX}}
==Overview==
==Overview==
{{Picture_with_subtitle |DMXC2_Manual_DDF_Buehnenansicht.png|1|Grafische Bühnenansicht mit DDF-Icon|right|250px}}
{{Picture_with_subtitle |DMXC2_Manual_DDF_graphical_view.png|1|Graphical view with DDF icon|right|250px}}


{{Picture_with_subtitle |DMXC2_Manual_DDF_Beispiel.png|2|Geöffnetes DDF-Fenster mit Steuerelementen|right|250px}}
{{Picture_with_subtitle |DMXC2_Manual_DDF_example.png|2|Opened DDF window with control elements|right|250px}}


DDF is the abbreviation of ''Device Definition File''. The DDF are the device description (Fixtures) in DMXControl, they serve to inform DMXControl about the functions of the attached DMX device to this. In the DDF the number becomes this one how channels of the DMX device defined and as well these use possible control elements:
DDF is the abbreviation of ''Device Definition File''. The DDF are the device description (Fixtures) in DMXControl, they serve to inform DMXControl about the functions of the attached DMX device to this. In the DDF the number becomes this one how channels of the DMX device defined and as well these use possible control elements:
Line 157: Line 157:




{{BoxHinweis
{{BoxHint
| Text=For many applications the first two concepts are sufficient.
| Text=For many applications the first two concepts are sufficient.
}}
}}
Line 166: Line 166:




{{BoxHinweis
{{BoxHint
| Text=The markings of the buttons don't have a meaning here.
| Text=The markings of the buttons don't have a meaning here.
}}
}}
Line 175: Line 175:


====Generic attributs====
====Generic attributs====
{{BoxHinweis
{{BoxHint
| Text=Attributes often recurring are described to it globally once for the shortening with the same meaning after the following tables here.
| Text=Attributes often recurring are described to it globally once for the shortening with the same meaning after the following tables here.
}}
}}
Line 226: Line 226:




{{BoxHinweis
{{BoxHint
| Text=All coordinate details <span style="color:#8B0000">(top, left, width, height)</span> are indicated in pixel.
| Text=All coordinate details <span style="color:#8B0000">(top, left, width, height)</span> are indicated in pixel.
}}
}}
Line 383: Line 383:




{{ BoxHinweis
{{ BoxHint
| Text= The channel type (<span style="color:#8B0000">type</span>) also should allocate channel for everybody  
| Text= The channel type (<span style="color:#8B0000">type</span>) also should allocate channel for everybody  
become provided that this channel to the type matches. E.g. it doesn't make sense to describe every channel as a dimmer.
become provided that this channel to the type matches. E.g. it doesn't make sense to describe every channel as a dimmer.
Line 418: Line 418:




{{ BoxHinweis
{{ BoxHint
| Text= The ones for RGB devices reserved <span style="color:#8B0000">type</span>'s are important the HAL (Hardware Abstraction Layer) since version 2. 11 in which then be able to the adjusted colors of the spotlight, be represented in the graphical view too. Also for version 2.12, here they also are needed for the RGB running light generator.}}
| Text= The ones for RGB devices reserved <span style="color:#8B0000">type</span>'s are important the HAL (Hardware Abstraction Layer) since version 2. 11 in which then be able to the adjusted colors of the spotlight, be represented in the graphical view too. Also for version 2.12, here they also are needed for the RGB running light generator.}}


Line 503: Line 503:
|}
|}


{{BoxHinweis
{{BoxHint
| Text=The position pointer can be placed by Initsequenz
| Text=The position pointer can be placed by initsequenz
}}
}}


Line 520: Line 520:
|style="width: 100px"| <span style="color:#8B0000">'''<slider>'''</span>
|style="width: 100px"| <span style="color:#8B0000">'''<slider>'''</span>
|style="width: 75px"|
|style="width: 75px"|
|style="width: 200px"| '''Level 3'''<br/>Subtag von “<span style="color:#8B0000"><form></span>“;<br />Erzeugt einen Schieberegler
|style="width: 200px"| '''Level 3'''<br/>Subtag from “<span style="color:#8B0000"><form></span>“;<br />Creates a slider
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
Line 526: Line 526:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">top<br />left<br />width<br />height</span>
|style="width: 75px"| <span style="color:#8B0000">top<br />left<br />width<br />height</span>
|style="width: 200px"| Siehe Generische Attribute<br />GP3 bis GP6
|style="width: 200px"| See generic attribute<br />GP3 bis GP6
|style="width: 100px"| integer
|style="width: 100px"| integer
|style="width: 100px"|  
|style="width: 100px"|  
Line 532: Line 532:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">channel</span>
|style="width: 75px"| <span style="color:#8B0000">channel</span>
|style="width: 200px"| Zugeordneter Kanal<br />alternativ zu <span style="color:#8B0000">action</span>
|style="width: 200px"| assigned channel<br />alternative for <span style="color:#8B0000">action</span>
|style="width: 100px"| integer<br />optional
|style="width: 100px"| integer<br />optional
|style="width: 100px"|  
|style="width: 100px"|  
Line 538: Line 538:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">startvalue</span>
|style="width: 75px"| <span style="color:#8B0000">startvalue</span>
|style="width: 200px"| Wertebereich des<br />Schiebers (unterer Wert)
|style="width: 200px"| Value range of the<br />Slider (lower value)
|style="width: 100px"| integer
|style="width: 100px"| integer
|style="width: 100px"| startvalue="0"
|style="width: 100px"| startvalue="0"
Line 544: Line 544:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">endvalue</span>
|style="width: 75px"| <span style="color:#8B0000">endvalue</span>
|style="width: 200px"| Wertebereich des<br />Schiebers (oberer Wert)
|style="width: 200px"| Value range of the<br />Slider  (uper value)
|style="width: 100px"| integer
|style="width: 100px"| integer
|style="width: 100px"| endvalue="255"
|style="width: 100px"| endvalue="255"
Line 550: Line 550:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">tickfreq</span>
|style="width: 75px"| <span style="color:#8B0000">tickfreq</span>
|style="width: 200px"| Skalierung, Abstand der<br />Skalenunterteilung
|style="width: 200px"| Scaling, distance of the<br>scale subdivision
|style="width: 100px"| integer
|style="width: 100px"| integer
|style="width: 100px"| tickfreq="32"
|style="width: 100px"| tickfreq="32"
Line 556: Line 556:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">smallchange</span>
|style="width: 75px"| <span style="color:#8B0000">smallchange</span>
|style="width: 200px"| Änderungsrate z.B. beim<br />Pfeiltastenscrollen
|style="width: 200px"| Change rate e.g. at the<br />up down keys
|style="width: 100px"| integer<br />(VB-Eigenschaft)
|style="width: 100px"| integer<br />(VB-properties)
|style="width: 100px"| smallchange="20"
|style="width: 100px"| smallchange="20"
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">largechange</span>
|style="width: 75px"| <span style="color:#8B0000">largechange</span>
|style="width: 200px"| Änderungsrate z.B. beim<br />Mausklicken (nicht ziehen)
|style="width: 200px"| Change rate e.g. at the<br />mouse click (not draged)
|style="width: 100px"| integer<br />(VB-Eigenschaft)
|style="width: 100px"| integer<br />(VB-properties)
|style="width: 100px"| largechange="50"
|style="width: 100px"| largechange="50"
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">name</span>
|style="width: 75px"| <span style="color:#8B0000">name</span>
|style="width: 200px"| Referenzname für procedure<br />code (Variablenname)
|style="width: 200px"| Referenz name for procedure<br />code (variable name)
|style="width: 100px"| string<br />optional
|style="width: 100px"| string<br />optional
|style="width: 100px"| StrobeSpeed
|style="width: 100px"| StrobeSpeed
Line 574: Line 574:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">action</span>
|style="width: 75px"| <span style="color:#8B0000">action</span>
|style="width: 200px"| Aufruf einer Prozedur bei<br />Änderung am Slider<br />alternativ zu <span style="color:#8B0000">channel</span>
|style="width: 200px"| Call of a procedure at<br>change at the Slider<br>alternative <span style="color:#8B0000">channel</span>
|style="width: 100px"| string<br />optional
|style="width: 100px"| string<br />optional
|style="width: 100px"| SetSpeed
|style="width: 100px"| SetSpeed
Line 592: Line 592:
|style="width: 100px"| <span style="color:#8B0000">'''<dropdown>'''</span>
|style="width: 100px"| <span style="color:#8B0000">'''<dropdown>'''</span>
|style="width: 75px"|
|style="width: 75px"|
|style="width: 200px"| '''Level 3'''<br/>Subtag von “<span style="color:#8B0000"><form></span>“;<br />Erzeugt ein Dropdown-Menü.
|style="width: 200px"| '''Level 3'''<br/>Subtag from“<span style="color:#8B0000"><form></span>“;<br />Creates a dropdown menu.
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
Line 598: Line 598:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">top<br />left<br />width</span>
|style="width: 75px"| <span style="color:#8B0000">top<br />left<br />width</span>
|style="width: 200px"| Siehe Generische Attribute<br />GP3 bis GP5
|style="width: 200px"| See generic attribute<br />GP3 bis GP5
|style="width: 100px"| integer
|style="width: 100px"| integer
|style="width: 100px"|  
|style="width: 100px"|  
Line 604: Line 604:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">channel</span>
|style="width: 75px"| <span style="color:#8B0000">channel</span>
|style="width: 200px"| Zugeordneter Kanal<br />alternativ zu <span style="color:#8B0000">action</span>
|style="width: 200px"| Assigned channel<br />alternative for <span style="color:#8B0000">action</span>
|style="width: 100px"| integer<br />optional
|style="width: 100px"| integer<br />optional
|style="width: 100px"|  
|style="width: 100px"|  
Line 610: Line 610:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">name</span>
|style="width: 75px"| <span style="color:#8B0000">name</span>
|style="width: 200px"| Referenzname für procedure<br />code (Variablenname)
|style="width: 200px"| Referenz name for procedure<br />code (variable name)
|style="width: 100px"| string<br />optional
|style="width: 100px"| string<br />optional
|style="width: 100px"| Gobo
|style="width: 100px"| Gobo
Line 616: Line 616:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">action</span>
|style="width: 75px"| <span style="color:#8B0000">action</span>
|style="width: 200px"| Aufruf einer Prozedur bei<br />Aufruf eines Dropdown-<br />eintrags, alternativ zu <span style="color:#8B0000">channel</span>
|style="width: 200px"| Call of a procedure at<br />change of a dropdown<br />entries, alternative for <span style="color:#8B0000">channel</span>
|style="width: 100px"| string<br />optional
|style="width: 100px"| string<br />optional
|style="width: 100px"| SetGobo
|style="width: 100px"| SetGobo
Line 622: Line 622:
|style="width: 100px"| <span style="color:#8B0000"><item></span>
|style="width: 100px"| <span style="color:#8B0000"><item></span>
|style="width: 75px"|  
|style="width: 75px"|  
|style="width: 200px"| '''Level 4'''<br/>Subtag von “<span style="color:#8B0000"><dropdown></span>“
|style="width: 200px"| '''Level 4'''<br/>Subtag from “<span style="color:#8B0000"><dropdown></span>“
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
Line 628: Line 628:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">caption</span>
|style="width: 75px"| <span style="color:#8B0000">caption</span>
|style="width: 200px"| Erklärender Name
|style="width: 200px"| Explanatory name
|style="width: 100px"| string
|style="width: 100px"| string
|style="width: 100px"| Clear
|style="width: 100px"| Clear
Line 634: Line 634:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">value</span>
|style="width: 75px"| <span style="color:#8B0000">value</span>
|style="width: 200px"| DMX-Wert zu <span style="color:#8B0000">caption</span>
|style="width: 200px"| DMX value for <span style="color:#8B0000">caption</span>
|style="width: 100px"| integer
|style="width: 100px"| integer
|style="width: 100px"| value="0"
|style="width: 100px"| value="0"
Line 640: Line 640:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">minvalue<br />maxvalue</span>
|style="width: 75px"| <span style="color:#8B0000">minvalue<br />maxvalue</span>
|style="width: 200px"| Wertebereich zu <span style="color:#8B0000">caption</span> zur<br />Anzeige des Dropdown-Eintrags.
|style="width: 200px"| Value range for <span style="color:#8B0000">caption</span> for<br />the diplayed of the dropdown entry.
|style="width: 100px"| integer
|style="width: 100px"| integer
|style="width: 100px"| minvalue="10"<br />maxvalue="26"
|style="width: 100px"| minvalue="10"<br />maxvalue="26"
Line 646: Line 646:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">color</span>
|style="width: 75px"| <span style="color:#8B0000">color</span>
|style="width: 200px"| Zeigt ein Quadrat mit der zuge-<br />ordneten Farbe vor <span style="color:#8B0000">caption</span> an
|style="width: 200px"| Show a square with the assigned color before <span style="color:#8B0000">caption</span>.
|style="width: 100px"| hex
|style="width: 100px"| hex
|style="width: 100px"| color="#ff0000"<br />Farbe Rot
|style="width: 100px"| color="#ff0000"<br />Color Red
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 100px"| <span style="color:#8B0000"><colorlist></span>
|style="width: 100px"| <span style="color:#8B0000"><colorlist></span>
|style="width: 75px"|  
|style="width: 75px"|  
|style="width: 200px"| '''Level 4'''<br/>Subtag von “<span style="color:#8B0000"><dropdown></span>“<br />Fügen alle Einträge der<br />dem Gerät zugewiesenen<br />Colorliste ein.
|style="width: 200px"| '''Level 4'''<br/>Subtag from “<span style="color:#8B0000"><dropdown></span>“<br />All entries of the in color list assigned to the device insert.
|style="width: 100px"| optional Ersatz/<br />Ergänzung für<br />Item  
|style="width: 100px"| optional a substitute/<br />addition for<br />Item  
|style="width: 100px"|  
|style="width: 100px"|  
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 100px"| <span style="color:#8B0000"><gobolist></span>
|style="width: 100px"| <span style="color:#8B0000"><gobolist></span>
|style="width: 75px"|  
|style="width: 75px"|  
|style="width: 200px"| '''Level 4'''<br/>Subtag von “<span style="color:#8B0000"><dropdown></span>“<br />Fügen alle Einträge der<br />dem Gerät zugewiesenen<br />Goboliste ein.
|style="width: 200px"| '''Level 4'''<br/>Subtag from“<span style="color:#8B0000"><dropdown></span>“<br />All entries of the in gobo list assigned to the device insert.
|style="width: 100px"| optional Ersatz/<br />Ergänzung für<br />Item  
|style="width: 100px"| optional a substitute/<br />addition for<br />Item  
|style="width: 100px"|  
|style="width: 100px"|  
|}
|}
Line 676: Line 676:
|style="width: 100px"| <span style="color:#8B0000">'''<options>'''</span>
|style="width: 100px"| <span style="color:#8B0000">'''<options>'''</span>
|style="width: 75px"|
|style="width: 75px"|
|style="width: 200px"| '''Level 3'''<br/>Subtag von “<span style="color:#8B0000"><form></span>“;<br />Erzeugt ein Radiobuttonfeld
|style="width: 200px"| '''Level 3'''<br/>Subtag from “<span style="color:#8B0000"><form></span>“;<br />Creates a radio button field
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
Line 682: Line 682:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">top<br />left</span>
|style="width: 75px"| <span style="color:#8B0000">top<br />left</span>
|style="width: 200px"| Siehe Generische Attribute<br />GP3 & GP4
|style="width: 200px"| See generic attribute<br />GP3 & GP4
|style="width: 100px"| integer
|style="width: 100px"| integer
|style="width: 100px"|  
|style="width: 100px"|  
Line 688: Line 688:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">channel</span>
|style="width: 75px"| <span style="color:#8B0000">channel</span>
|style="width: 200px"| Zugeordneter Kanal<br />alternativ zu <span style="color:#8B0000">action</span>
|style="width: 200px"| Assigned channel alternative for<span style="color:#8B0000">action</span>
|style="width: 100px"| integer<br />optional
|style="width: 100px"| integer<br />optional
|style="width: 100px"|  
|style="width: 100px"|  
Line 694: Line 694:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">action</span>
|style="width: 75px"| <span style="color:#8B0000">action</span>
|style="width: 200px"| Aufruf einer Prozedur bei<br />Auswahl eines Radiobuttons,<br />alternativ zu <span style="color:#8B0000">channel</span>
|style="width: 200px"| Call of a procedure at<br />change of a radio buttons,<br />alternative for <span style="color:#8B0000">channel</span>
|style="width: 100px"| optional
|style="width: 100px"| optional
|style="width: 100px"| SetGoboSpeed
|style="width: 100px"| SetGoboSpeed
Line 700: Line 700:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">name</span>
|style="width: 75px"| <span style="color:#8B0000">name</span>
|style="width: 200px"| Referenzname für procedure<br />code (Variablenname)
|style="width: 200px"| Referenz name for procedure<br>code (variable name)
|style="width: 100px"| string<br />optional
|style="width: 100px"| string<br />optional
|style="width: 100px"| GoboSpeed
|style="width: 100px"| GoboSpeed
Line 706: Line 706:
|style="width: 100px"| <span style="color:#8B0000"><option></span>
|style="width: 100px"| <span style="color:#8B0000"><option></span>
|style="width: 75px"|  
|style="width: 75px"|  
|style="width: 200px"| '''Level 4'''<br/>Subtag von “<span style="color:#8B0000"><options></span>“
|style="width: 200px"| '''Level 4'''<br/>Subtag from “<span style="color:#8B0000"><options></span>“
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
Line 712: Line 712:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">caption</span>
|style="width: 75px"| <span style="color:#8B0000">caption</span>
|style="width: 200px"| Siehe Generische Attribute<br />GP2
|style="width: 200px"| See generic attribute<br />GP2
|style="width: 100px"| string
|style="width: 100px"| string
|style="width: 100px"| off
|style="width: 100px"| off
Line 718: Line 718:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">value</span>
|style="width: 75px"| <span style="color:#8B0000">value</span>
|style="width: 200px"| DMX-Wert zu <span style="color:#8B0000">caption</span>
|style="width: 200px"| DMX value for <span style="color:#8B0000">caption</span>
|style="width: 100px"| integer
|style="width: 100px"| integer
|style="width: 100px"| 0
|style="width: 100px"| 0
Line 724: Line 724:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">top<br />left</span>
|style="width: 75px"| <span style="color:#8B0000">top<br />left</span>
|style="width: 200px"| Siehe Generische Attribute<br />GP3 & GP4, relative Position<br />zur Position von “<span style="color:#8B0000"><options></span>“
|style="width: 200px"| See generic attribute<br />GP3 & GP4, relativ position<br />for positioning from “<span style="color:#8B0000"><options></span>“
|style="width: 100px"| integer
|style="width: 100px"| integer
|style="width: 100px"| left="0"<br />top="0"
|style="width: 100px"| left="0"<br />top="0"
Line 738: Line 738:
! Example
! Example
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|colspan="5" style="text-align:center"| [[file:DMXC2_Manual_DDF_Onoff.png]]
|colspan="5" style="text-align:center"| [[file:DMXC2_Manual_DDF_onoff.png]]
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 100px"| <span style="color:#8B0000">'''<onoff>'''</span>
|style="width: 100px"| <span style="color:#8B0000">'''<onoff>'''</span>
|style="width: 75px"|
|style="width: 75px"|
|style="width: 200px"| '''Level 3'''<br/>Subtag von “<span style="color:#8B0000"><form></span>“;<br />Erzeugt einen Button als Schalter
|style="width: 200px"| '''Level 3'''<br/>Subtag from “<span style="color:#8B0000"><form></span>“;<br />Creates a button as switch
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
Line 748: Line 748:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">top<br />left<br />width<br />height</span>
|style="width: 75px"| <span style="color:#8B0000">top<br />left<br />width<br />height</span>
|style="width: 200px"| Siehe Generische Attribute<br />GP3 bis GP6
|style="width: 200px"| See generic attribute<br />GP3 bis GP6
|style="width: 100px"| integer
|style="width: 100px"| integer
|style="width: 100px"|  
|style="width: 100px"|  
Line 754: Line 754:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">channel</span>
|style="width: 75px"| <span style="color:#8B0000">channel</span>
|style="width: 200px"| Zugeordneter Kanal<br />alternativ zu <span style="color:#8B0000">action</span>
|style="width: 200px"| Assigned channel alternative for  <span style="color:#8B0000">action</span>
|style="width: 100px"| integer<br />optional
|style="width: 100px"| integer<br />optional
|style="width: 100px"|  
|style="width: 100px"|  
Line 760: Line 760:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">action</span>
|style="width: 75px"| <span style="color:#8B0000">action</span>
|style="width: 200px"| Aufruf einer Prozedur beim<br />betätigen des Buttons<br />alternativ zu <span style="color:#8B0000">channel</span>
|style="width: 200px"| Call of a procedure at<br />pushing the buttons<br />alternative for <span style="color:#8B0000">channel</span>
|style="width: 100px"| string<br />optional
|style="width: 100px"| string<br />optional
|style="width: 100px"| SetLampOnOff
|style="width: 100px"| SetLampOnOff
Line 766: Line 766:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">name</span>
|style="width: 75px"| <span style="color:#8B0000">name</span>
|style="width: 200px"| Referenzname für procedure<br />code (Variablenname)
|style="width: 200px"| Referenz name for procedure code (variable name)
|style="width: 100px"| string<br />optional
|style="width: 100px"| string<br />optional
|style="width: 100px"| LampOnOff
|style="width: 100px"| LampOnOff
Line 772: Line 772:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">caption</span>
|style="width: 75px"| <span style="color:#8B0000">caption</span>
|style="width: 200px"| Erklärender Name
|style="width: 200px"| Explanatory name
|style="width: 100px"| string
|style="width: 100px"| string
|style="width: 100px"| An/Aus
|style="width: 100px"| On/Off
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">color</span>
|style="width: 75px"| <span style="color:#8B0000">color</span>
|style="width: 200px"| Hex RGB-Farbwert des Button
|style="width: 200px"| Hex RGB color value of the button
|style="width: 100px"| hex
|style="width: 100px"| hex
|style="width: 100px"| color="#00ff00"<br />Farbe Grün
|style="width: 100px"| color="#00ff00"<br />color green
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">onvalue</span>
|style="width: 75px"| <span style="color:#8B0000">onvalue</span>
|style="width: 200px"| DMX-Wert für Button ON
|style="width: 200px"| DMX value for button ON
|style="width: 100px"| integer
|style="width: 100px"| integer
|style="width: 100px"| onvalue="150"
|style="width: 100px"| onvalue="150"
Line 790: Line 790:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">offvalue</span>
|style="width: 75px"| <span style="color:#8B0000">offvalue</span>
|style="width: 200px"| DMX-Wert für Button OFF
|style="width: 200px"| DMX value for button OFF
|style="width: 100px"| integer
|style="width: 100px"| integer
|style="width: 100px"| offvalue="0"
|style="width: 100px"| offvalue="0"
Line 796: Line 796:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000"><small>onsequence</small></span>
|style="width: 75px"| <span style="color:#8B0000"><small>onsequence</small></span>
|style="width: 200px"| Sequence, die bei ON<br />ausgeführt wird
|style="width: 200px"| Execute a Sequence, by switching to ON
|style="width: 100px"| string
|style="width: 100px"| string
|style="width: 100px"| "set 0 230;<br />set 1 25"
|style="width: 100px"| "set 0 230;<br />set 1 25"
Line 802: Line 802:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000"><small>offsequence</small></span>
|style="width: 75px"| <span style="color:#8B0000"><small>offsequence</small></span>
|style="width: 200px"| Sequence, die bei OFF<br />ausgeführt wird
|style="width: 200px"| Execute a Sequence, by switching to OFF
|style="width: 100px"| string
|style="width: 100px"| string
|style="width: 100px"| "set 0 0;<br />set 1 0"
|style="width: 100px"| "set 0 0;<br />set 1 0"
Line 820: Line 820:
|style="width: 100px"| <span style="color:#8B0000">'''<command>'''</span>
|style="width: 100px"| <span style="color:#8B0000">'''<command>'''</span>
|style="width: 75px"|
|style="width: 75px"|
|style="width: 200px"| '''Level 3'''<br/>Subtag von “<span style="color:#8B0000"><form></span>“;<br />Erzeugt Button’s als Taster
|style="width: 200px"| '''Level 3'''<br/>Subtag for “<span style="color:#8B0000"><form></span>“;<br />Creates a button as push button.
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
Line 826: Line 826:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">top<br />left<br />width<br />height</span>
|style="width: 75px"| <span style="color:#8B0000">top<br />left<br />width<br />height</span>
|style="width: 200px"| Siehe Generische Attribute<br />GP3 bis GP6
|style="width: 200px"| See generic attribute<br />GP3 bis GP6
|style="width: 100px"| integer
|style="width: 100px"| integer
|style="width: 100px"|  
|style="width: 100px"|  
Line 832: Line 832:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">action</span>
|style="width: 75px"| <span style="color:#8B0000">action</span>
|style="width: 200px"| Aufruf einer Prozedur beim<br />betätigen des Buttons
|style="width: 200px"| Call of a procedure at pushing the button.
|style="width: 100px"| string<br />optional
|style="width: 100px"| string<br />optional
|style="width: 100px"| SetReset
|style="width: 100px"| SetReset
Line 838: Line 838:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">name</span>
|style="width: 75px"| <span style="color:#8B0000">name</span>
|style="width: 200px"| Referenzname für procedure<br />code (Variablenname)
|style="width: 200px"| Referenz name for procedure code (variable name)
|style="width: 100px"| string<br />optional
|style="width: 100px"| string<br />optional
|style="width: 100px"| Reset
|style="width: 100px"| Reset
Line 844: Line 844:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">caption</span>
|style="width: 75px"| <span style="color:#8B0000">caption</span>
|style="width: 200px"| Erklärender Name
|style="width: 200px"| Explanatory name
|style="width: 100px"| string
|style="width: 100px"| string
|style="width: 100px"| Reset
|style="width: 100px"| Reset
Line 850: Line 850:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">color</span>
|style="width: 75px"| <span style="color:#8B0000">color</span>
|style="width: 200px"| Hex RGB-Farbwert des Button
|style="width: 200px"| Hex RGB color value of the button
|style="width: 100px"| string
|style="width: 100px"| string
|style="width: 100px"| color="#0000ff"<br />Farbe Blau
|style="width: 100px"| color="#0000ff"<br />color blue
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000"><small>clicksequence</small></span>
|style="width: 75px"| <span style="color:#8B0000"><small>clicksequence</small></span>
|style="width: 200px"| Beim Buttonclick zu<br />startende Aktivität ist im<br />Attribut spezifiziert
|style="width: 200px"| Activity to be started at the button click is specified in the attribute
|style="width: 100px"| string
|style="width: 100px"| string
|style="width: 100px"| <small>"save 0;<br />set 0 230;<br />hold 5500;<br />restore 0"</small>
|style="width: 100px"| <small>"save 0;<br />set 0 230;<br />hold 5500;<br />restore 0"</small>
Line 862: Line 862:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000"><small>downsequence</small></span>
|style="width: 75px"| <span style="color:#8B0000"><small>downsequence</small></span>
|style="width: 200px"| Beim Niederdrücken zu<br />startende Aktivität ist im<br />Attribut spezifiziert
|style="width: 200px"| Activity to be started at push down the button is specified in the attribute
|style="width: 100px"| string
|style="width: 100px"| string
|style="width: 100px"| <small>"save 0;<br />set 0 230;<br />hold 5500;<br />restore 0"</small>
|style="width: 100px"| <small>"save 0;<br />set 0 230;<br />hold 5500;<br />restore 0"</small>
Line 868: Line 868:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000"><small>upsequence</small></span>
|style="width: 75px"| <span style="color:#8B0000"><small>upsequence</small></span>
|style="width: 200px"| Beim Loslassen zu<br />startende Aktivität ist im<br />Attribut spezifiziert
|style="width: 200px"| Activity to be started at relase the button is specified in the attribute
|style="width: 100px"| string
|style="width: 100px"| string
|style="width: 100px"| <small>"save 0;<br />set 0 230;<br />hold 5500;<br />restore 0"</small>
|style="width: 100px"| <small>"save 0;<br />set 0 230;<br />hold 5500;<br />restore 0"</small>
Line 886: Line 886:
|style="width: 100px"| <span style="color:#8B0000">'''<colorpicker>'''</span>
|style="width: 100px"| <span style="color:#8B0000">'''<colorpicker>'''</span>
|style="width: 75px"|
|style="width: 75px"|
|style="width: 200px"| '''Level 3'''<br/>Subtag von “<span style="color:#8B0000"><form></span>“;<br />Erzeugt einen Colorpicker.
|style="width: 200px"| '''Level 3'''<br/>Subtag from “<span style="color:#8B0000"><form></span>“;<br />Creates a colorpicker.
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
Line 892: Line 892:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">top<br />left<br />width<br />height</span>
|style="width: 75px"| <span style="color:#8B0000">top<br />left<br />width<br />height</span>
|style="width: 200px"| Siehe Generische Attribute<br />GP3 bis GP6
|style="width: 200px"| See generic attribute<br />GP3 bis GP6
|style="width: 100px"| integer
|style="width: 100px"| integer
|style="width: 100px"|  
|style="width: 100px"|  
Line 898: Line 898:
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 75px"| <span style="color:#8B0000">channel1</span>
|style="width: 75px"| <span style="color:#8B0000">channel1</span>
|style="width: 200px"| Zuordnung zum 1. Kanal<br />Rot oder Cyan,<br />alternativ zu <span style="color:#8B0000">action</span>
|style="width: 200px"| Assignment to 1. channel<br />red oder cyan,<br />alternative for <span style="color:#8B0000">action</span>
|style="width: 100px"| integer<br />optional
|style="width: 100px"| integer<br />optional
|style="width: 100px"|  
|style="width: 100px"|  
Line 904: Line 904:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">channel2</span>
|style="width: 75px"| <span style="color:#8B0000">channel2</span>
|style="width: 200px"| Zuordnung zum 2. Kanal<br />Grün oder Magenta,<br />alternativ zu <span style="color:#8B0000">action</span>
|style="width: 200px"| Assignment to 2. channel<br />green or magenta,<br />alternative for <span style="color:#8B0000">action</span>
|style="width: 100px"| integer<br />optional
|style="width: 100px"| integer<br />optional
|style="width: 100px"|  
|style="width: 100px"|  
Line 910: Line 910:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">channel3</span>
|style="width: 75px"| <span style="color:#8B0000">channel3</span>
|style="width: 200px"| Zuordnung zum 3. Kanal<br />Blau oder Yellow,<br />alternativ zu <span style="color:#8B0000">action</span>
|style="width: 200px"| Assignment to 3. channel<br />blue oder yellow,<br />alternative for <span style="color:#8B0000">action</span>
|style="width: 100px"| integer<br />optional
|style="width: 100px"| integer<br />optional
|style="width: 100px"|  
|style="width: 100px"|  
Line 916: Line 916:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">name</span>
|style="width: 75px"| <span style="color:#8B0000">name</span>
|style="width: 200px"| Referenzname für procedure<br />code (Variablenname)
|style="width: 200px"| Referenz name for procedure code (variable name)
|style="width: 100px"| string<br />optional
|style="width: 100px"| string<br />optional
|style="width: 100px"| ColRGB
|style="width: 100px"| ColRGB
Line 922: Line 922:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">action</span>
|style="width: 75px"| <span style="color:#8B0000">action</span>
|style="width: 200px"| Aufruf einer Prozedur bei<br />Änderung einer Farbe,<br />alternativ zu <span style="color:#8B0000">channel1-3</span>
|style="width: 200px"| Call of a procedure at<br />changing a color,<br />alternative for <span style="color:#8B0000">channel1-3</span>
|style="width: 100px"| string<br />optional
|style="width: 100px"| string<br />optional
|style="width: 100px"| SetColRGB
|style="width: 100px"| SetColRGB
Line 928: Line 928:
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 75px"| <span style="color:#8B0000">mode</span>
|style="width: 75px"| <span style="color:#8B0000">mode</span>
|style="width: 200px"| Auswahl der zwei Modi RGB<br />oder CMY  
|style="width: 200px"| Choice of the two modes<br />RGB or CMY  
|style="width: 100px"| string
|style="width: 100px"| string
|style="width: 100px"| mode=“cmy“
|style="width: 100px"| mode=“cmy“
Line 934: Line 934:
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 75px"| <span style="color:#8B0000">layout</span>
|style="width: 75px"| <span style="color:#8B0000">layout</span>
|style="width: 200px"| Auswahl von zwei<br />verschiedenen Layouts des<br />Colorpickers  
|style="width: 200px"| Choice of two<br />different layouts from the <br />Colorpickers  
|style="width: 100px"| integer
|style="width: 100px"| integer
|style="width: 100px"| layout="1"
|style="width: 100px"| layout="1"
Line 945: Line 945:
</source>
</source>


{{ BoxHinweis
{{ BoxHint
| Text= Bitte halten Sie die Maustaste gedrückt, wenn Sie über das Dropdown-Menü die Einstellung im Farbbalken ändern wollen. Eine Direkteingabe des numerischen Wertes ist ebenfalls möglich.
| Text= Please keep the mouse button pushed down if you want to change the setting in the color bar over the drop down menu. A direct input of the numeric value is also possible.  
In Proceduren werden die Farbwerte über name:Farbkanal referenziert ({ColRGB:1}; {ColRGB:2}; {ColRGB:3})  
Become the color values in procedures about name:colorchannel provided with references ({ColRGB:1}; {ColRGB:2}; {ColRGB:3})  
}}
}}


Line 959: Line 959:
! Example
! Example
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|colspan="5" style="text-align:center"| [[Bild:DMXC2_Manual_DDF_Line.png]]
|colspan="5" style="text-align:center"| [[file:DMXC2_Manual_DDF_line.png]]
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 100px"| <span style="color:#8B0000">'''<line>'''</span>
|style="width: 100px"| <span style="color:#8B0000">'''<line>'''</span>
|style="width: 75px"|
|style="width: 75px"|
|style="width: 200px"| '''Level 3'''<br/>Subtag von “<span style="color:#8B0000"><form></span>“;<br />Gestaltungselement;<br />Erzeugt eine Linie.
|style="width: 200px"| '''Level 3'''<br/>Subtag from “<span style="color:#8B0000"><form></span>“;<br />Design element;<br />Creates a line.
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
Line 969: Line 969:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">x1; y1</span>
|style="width: 75px"| <span style="color:#8B0000">x1; y1</span>
|style="width: 200px"| Startkoordinate der Linie
|style="width: 200px"| Start coordinate of the line
|style="width: 100px"| integer
|style="width: 100px"| integer
|style="width: 100px"|  
|style="width: 100px"|  
Line 975: Line 975:
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 75px"| <span style="color:#8B0000">x2; y2</span>
|style="width: 75px"| <span style="color:#8B0000">x2; y2</span>
|style="width: 200px"| Endkoordinate der Linie
|style="width: 200px"| End coordinate of the line
|style="width: 100px"| integer
|style="width: 100px"| integer
|style="width: 100px"|  
|style="width: 100px"|  
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|colspan="5" style="text-align:center"| [[Bild:DMXC2_Manual_DDF_Label.png]]
|colspan="5" style="text-align:center"| [[file:DMXC2_Manual_DDF_label.png]]
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 100px"| <span style="color:#8B0000">'''<nowiki><label></nowiki>'''</span>
|style="width: 100px"| <span style="color:#8B0000">'''<nowiki><label></nowiki>'''</span>
|style="width: 75px"|
|style="width: 75px"|
|style="width: 200px"| '''Level 3'''<br/>Subtag von “<span style="color:#8B0000"><form></span>“;<br />Gestaltungselement;<br />zusätzliche Beschreibung<br />eines Bedienelementes.
|style="width: 200px"| '''Level 3'''<br/>Subtag from “<span style="color:#8B0000"><form></span>“;<br />Design element;<br />additional description of<br>an operating device.
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
Line 989: Line 989:
|style="width: 100px"|
|style="width: 100px"|
|style="width: 75px"| <span style="color:#8B0000">top<br />left<br />width<br />height</span>
|style="width: 75px"| <span style="color:#8B0000">top<br />left<br />width<br />height</span>
|style="width: 200px"| Siehe Generische Attribute<br />GP3 bis GP6
|style="width: 200px"| See generic attribute<br />GP3 bis GP6
|style="width: 100px"| integer
|style="width: 100px"| integer
|style="width: 100px"|  
|style="width: 100px"|  
Line 995: Line 995:
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 75px"| <span style="color:#8B0000">caption</span>
|style="width: 75px"| <span style="color:#8B0000">caption</span>
|style="width: 200px"| Anzuzeigender Text
|style="width: 200px"| Text to be shown
|style="width: 100px"| string
|style="width: 100px"| string
|style="width: 100px"| CMY Mischung
|style="width: 100px"| CMY Mischung
|}
|}


'''Beispiel:'''
'''Example:'''
[[Bild:DMXC2_Manual_DDF_Giotto-Spot.png|miniatur|zentriert|600px|Bild 8: DDF Giotto Spot 400]]
[[file:DMXC2_Manual_DDF_Giotto-Spot.png|miniatur|center|600px|Bild 8: DDF Giotto Spot 400]]


{{ BoxReferenz
{{BoxAdvanced
| Text= Dieses DDF-File finden Sie in der [http://www.dmxcontrol.de/Geraetedefinitionen/Geraetebibliothek.html#SGM Gerätebibliothek (zur Zeit nicht online)] auf der DMXControl Website.
| Text= You find this DDF in the [http://www.dmxcontrol.de/Geraetedefinitionen/Geraetebibliothek.html#SGM device libary (at the moment not online)] on the DMXControl Website.
}}
}}


====Help====
====Help====
Das Bild 9 zeigt ein Beispiel für ein Hilfemenü, Hilfemenüs sind optional. Es wird empfohlen, hier die DMX Belegung des Gerätes anzuzeigen. Die Hilfebeschreibung erfolgt im ASCII-Format. Bitte erhöhen Sie die Übersichtlichkeit durch Formatierung mit Tabulator-Zeichen oder Unterstreichungen. Die Hilfe kann durch Klick auf den Fragezeichen-Button (neben dem Pin-Button) ein- und  ausgeschaltet werden.
In fig. 9 shows an example of a help menu, help menus are optional. It is recommended to announce the DMX occupancy of the device here. The help description is carried out in the ASCII format. Please increase the clarity by formatting with tabulator signs or underlinings. The help can one by click on the question mark button (next to the Pin badge) and be turned off.


[[Bild:DMXC2_Manual_DDF_Help.png|miniatur|zentriert|600px|Bild 9: Hilfemenü eines DDF's]]
[[Bild:DMXC2_Manual_DDF_help.png|miniatur|center|600px|Bild 9: Hilfemenü eines DDF's]]


====Sequences====
====Sequences====
Line 1,016: Line 1,016:
|- style="vertical-align:top;"
|- style="vertical-align:top;"
! Operation
! Operation
! Bedeutung
! Meaning
! Beispiel
! Example
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 150px"| <span style="color:#8B0000">save >channel<</span>
|style="width: 150px"| <span style="color:#8B0000">save >channel<</span>
|style="width: 250px"| Zwischenspeichern des aktuellen Kanal-<br />werts des DMX-Kanals <span style="color:#8B0000">>channel<</span>
|style="width: 250px"| Storing the current channel value of the DMX channel intermediately <span style="color:#8B0000">>channel<</span>
|style="width: 200px"| <small>"<span style="color:#0000FF">save 0;</span> set 0 230; hold 5500; restore 0"</small>
|style="width: 200px"| <small>"<span style="color:#0000FF">save 0;</span> set 0 230; hold 5500; restore 0"</small>
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 150px"| <span style="color:#8B0000">set >channel< >value<</span>
|style="width: 150px"| <span style="color:#8B0000">set >channel< >value<</span>
|style="width: 250px"| Setzt den Kanal <span style="color:#8B0000">>channel<</span> auf Wert<br /><span style="color:#8B0000">>value<</span>
|style="width: 250px"| Set the channel <span style="color:#8B0000">>channel<</span> to value<br /><span style="color:#8B0000">>value<</span>
|style="width: 200px"| <small>"save 0; <span style="color:#0000FF">set 0 230;</span> hold 5500; restore 0"</small>
|style="width: 200px"| <small>"save 0; <span style="color:#0000FF">set 0 230;</span> hold 5500; restore 0"</small>
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 150px"| <span style="color:#8B0000">hold >time<</span>
|style="width: 150px"| <span style="color:#8B0000">hold >time<</span>
|style="width: 250px"| Timer (wartet <span style="color:#8B0000">>time<</span> in msec.)
|style="width: 250px"| Timer (wait <span style="color:#8B0000">>time<</span> in ms)
|style="width: 200px"| <small>"save 0; set 0 230; <span style="color:#0000FF">hold 5500;</span> restore 0"</small>
|style="width: 200px"| <small>"save 0; set 0 230; <span style="color:#0000FF">hold 5500;</span> restore 0"</small>
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 150px"| <span style="color:#8B0000">restore >channel<</span>
|style="width: 150px"| <span style="color:#8B0000">restore >channel<</span>
|style="width: 250px"| Setzt den zwischengespeicherten Wert<br />des DMX-Kanals <span style="color:#8B0000">>channel<</span> wieder zurück
|style="width: 250px"| Move the value of the DMX channel stored intermediately <span style="color:#8B0000">>channel<</span> back again.
|style="width: 200px"| <small>"save 0; set 0 230; hold 5500; <span style="color:#0000FF">restore 0</span>"</small>
|style="width: 200px"| <small>"save 0; set 0 230; hold 5500; <span style="color:#0000FF">restore 0</span>"</small>
|}
|}


===Procedurs (advanced programming options)===
===Procedurs (advanced programming options)===
Die Device- und Form-Konfiguration von DMXControl erlaubt auch die Programmierung von algorithmischen Veränderungen der DMX-Signale, die bei der Bedienung von Steuerelementen wie onoff-Button, Klappmenü (dropdown) oder Schieberegler (slider) automatisch  ausgeführt werden (siehe actions in Kapitel Funktionale Elemente).
The device and form configuration of DMXControl also permits the programming of algorithmic changes of the DMX signals which are executed automatically with the operation of control elements like onoff button, dropdown menu or slider.


Sie können also die Werte, die den Steuerelementen zugeordnet sind, über logische Bedingungen und Formeln setzen. Die Prozeduren dienen dazu, z.B. Mehrfachbelegungen von einem Kanal behandeln zu können (z.B. Gobodrehung liegt auf gleichem Kanal wie die Goboauswahl), so dass der  Wert je nach Drehgeschwindigkeit anders berechnet werden kann.  
So you can set conditions and formulae the values which are assigned to the control elements about logical. E.g. the procedures serve to be able to treat multiple occupations of a channel (e.g. gobo rotation lies on the same channel as the gobo selection) so that the value can be calculated differently depending on rotational speed.


Diese Prozeduren erlauben Ihnen auch die Programmierung von Abhängigkeiten der Kanäle oder Bedienelemente eines Gerätes, z.B. verbinden Sie bestimmte Farben mit Gobos in fester oder algorithmischer Zuordnung oder Sie ordnen bestimmte Geschwindigkeiten irgendwelche Farben zu.  
These procedures also permit you the programming of dependences of the channels or operating devices of a device, any colors e.g. you connect certain colors with gobos in a firm or algorithmic assignment or you organize certain speeds.  


Auch lassen sich so bei Geräte mit zwei Farbrädern, die Farben dann über ein Dropdown auswählen oder bei RGB bzw. CMY Geräten lassen sich vordefinierte Farben einem Dropdown zuordnen.
Also can at devices with two color wheels, the colors then select more than one drop down or predefined colors have drop down at RGB or CMY devices assigned to one for themselves so.




====General principles====
====General principles====
Die Prozeduren werden als Action-Attribut den <tt><span style="color:#8B0000"><function></span></tt>-Tags (Kanälen) oder den Steuerungselementen z.B. <tt><span style="color:#8B0000"><onoff></span></tt>, <tt><span style="color:#8B0000"><slider></span></tt> oder <tt><span style="color:#8B0000"><dropdown></span></tt> zugeordet. Bei Bedienung entsprechender Steuerungselemente wird der Code der Prozedur automatisch interpretiert und ausgeführt.   
The procedures become this one as an action attribute <tt><span style="color:#8B0000"><function></span></tt> tags (channels) or the control elements e.g. <tt><span style="color:#8B0000"><onoff></span></tt>, <tt><span style="color:#8B0000"><slider></span></tt> or <tt><span style="color:#8B0000"><dropdown></span></tt> assigned.  
Ist das Action-Attribut dagegen einem Kanal in den <tt><span style="color:#8B0000"><function></span></tt>-Tags zugeordnet, so wird sie bei jeder Änderung des zugehörenden Kanalwertes ausgeführt.
With operation of corresponding control elements the code of the procedure is interpreted and executed automatically.   
Die Prozeduren verwenden „Referenzen“ auf die Werte der Steuerelemente, die innerhalb der Form-Definition der Steuerungselemente durch das <tt><span style="color:#8B0000">Name</span></tt>-Attribut deklariert sind, z.B.
The action attribute is against this into assigned, a channel the <tt><span style="color:#8B0000"><function></span></tt> tag she is executed so at every change of the belonging channel value.  
Using the procedures „References“on the values of the control elements which are declared by the <tt><span style="color:#8B0000">Name</span></tt> attribute within the form definition of the control elements e.g.




Line 1,057: Line 1,058:




Dies  bedeutet: Die  Prozedur  SetColor wird  bei  Bedienung  des  Dropdown-Menüs  ausgeführt und  der  Wert  des  Dropdown-Menüs  wird  als  Variable  <tt><span style="color:#8B0000">color_color</span></tt> an  die  aufgerufene  Prozedur <tt><span style="color:#8B0000">SetColor</span></tt> übergeben.
This means: The procedure SetColor is executed with operation of the drop down menu and the value of the drop down menu is submitted to the called procedure <tt><span style="color:#8B0000">SetColor</span></tt> as a variable <tt><span style="color:#8B0000">color_color</span></tt>.


Weiterhin existieren implizite Referenzen als standardmäßige Zuordnung zu den Kanälen. So ist z.B. <tt><span style="color:#8B0000">channel_2</span></tt>  implizit  mit  dem  Kanal  (<tt><span style="color:#8B0000">function</span></tt>)  mit <tt>channel=2</tt>  verbundendem  auch  die  Action <tt><span style="color:#8B0000">GetColor</span></tt> zugeordnet ist.
Furthermore implicit references as a default assignment to the channels exist. E.g. that way is <tt><span style="color:#8B0000">channel_2</span></tt>  with the channel (<tt><span style="color:#8B0000">function</span></tt>)  with <tt>channel=2</tt>  bindedalso the action <tt><span style="color:#8B0000">GetColor</span></tt> assigned.




<source lang=xml>
<source lang=xml>
<function channel="2" minvalue="0" maxvalue="255" name="Farbe" fade="no"  
<function channel="2" minvalue="0" maxvalue="255" name="Color" fade="no"  
action="GetColor" colorchannel="yes"/>
action="GetColor" colorchannel="yes"/>
</source>
</source>




Variablen im eigentlichen Sinne als frei belegbare Speicherwerte sind bisher nicht definiert.
Till now, variables in the real meaning as freely verifiable loft values aren't defined.


====Basic syntax elements and conventions====
====Basic syntax elements and conventions====
Während die Referenzen mit ihrem Namen bezeichnet werden ( '''"color_color"''' ), wird der aktuelle Wert vom zugeordneten Steuerelement durch geschweifte Klammern adressiert ('''"{color_color}"''').  
While the references are marked by her name ('''"color_color"'''), the current value is addressed by curly brackets of the assigned control element ('''"{color_color}"''').  


Um die Interpretation des Prozedurcodes durch einen Parser zu vereinfachen, sind in der jetzigen Programmversion einige Konventionen vereinbart, die Sie leider einhalten müssen, obwohl sie nicht sehr  nutzerfreundlich  erscheinenZum  Vergleich  und  zur  leichteren  Erlernbarkeit  liefern  die nachfolgenden Tabellen auf der rechten Seiten immer eine generische Sprachvariante.
To simplify the interpretation of the procedure code by a Parser, some conventions you unfortunately must observe although they seem not very user friendly are agreed on in the present program releaseFor comparison purposes and the following tables on this one always provide a generic language variant to right sides on the easier to learn.


Folgende Zeichen dienen als Separatoren:
The following signs serve as sync separators:
{| class="wikitable centered"
{| class="wikitable centered"
|- style="vertical-align:top;"
|- style="vertical-align:top;"
! Operation
! Operation
! Bedeutung
! Meaning
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 75px"| !
|style="width: 75px"| !
|style="width: 300px"| beginnt einen Befehl
|style="width: 300px"| start with an command
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 75px"| &nbsp;&#124;
|style="width: 75px"| &nbsp;&#124;
|style="width: 300px"| separiert die einzelnen Bestandteile
|style="width: 300px"| separate the individual components
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 75px"| &nbsp;$
|style="width: 75px"| &nbsp;$
|style="width: 300px"| beendet einen Befehl
|style="width: 300px"| conclude an order
|}
|}


Es werden folgende arithmetische Operationen unterstützt:
The following arithmetical operations are supported:
{| class="wikitable centered"
{| class="wikitable centered"
|- style="vertical-align:top;"
|- style="vertical-align:top;"
! Operation
! Operation
! Bedeutung
! Meaning
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 75px"| &nbsp;+
|style="width: 75px"| &nbsp;+
|style="width: 300px"| Addition
|style="width: 300px"| addition
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 75px"| &nbsp;-
|style="width: 75px"| &nbsp;-
|style="width: 300px"| Subtraktion
|style="width: 300px"| subtraction
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 75px"| &nbsp;*
|style="width: 75px"| &nbsp;*
|style="width: 300px"| Multiplikation
|style="width: 300px"| multiplication
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 75px"| &nbsp;/
|style="width: 75px"| &nbsp;/
|style="width: 300px"| Division
|style="width: 300px"| division
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 75px"| &nbsp;mod
|style="width: 75px"| &nbsp;mod
|style="width: 300px"| Modulo-Operation<br />(gibt den Rest der Mod-Division als Ergebnis aus)
|style="width: 300px"| modulo-Operation<br />(issues the remainder of the<br>mod division in the form of result)
|}
|}


Jeder Ausdruck muss von einer Klammer umgeben sein, um berechnet zu werden.
Every expression must be surrounded by a bracket to be calculated.  
Folgende Beispiele illustrieren die Verwendung arithmetischer Operationen:
The following examples illustrate the use of arithmetical operations:
{| class="wikitable centered"
{| class="wikitable centered"
|- style="vertical-align:top;"
|- style="vertical-align:top;"
! DMXControl code
! DMXControl code
! Generische Sprachvariante
! Generic language variant
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 280px"| !set_channel|2|(227+{color_speed})$
|style="width: 280px"| !set_channel|2|(227+{color_speed})$
Line 1,130: Line 1,131:
|}
|}


Die verwendeten Standardoperatoren haben folgende Semantik:
The used standard operators have the following semantics:
{| class="wikitable centered"
{| class="wikitable centered"
|- style="vertical-align:top;"
|- style="vertical-align:top;"
! Operation
! Operation
! Bedeutung
! Meaning
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 160px"| set_control | >cntr< | >val<
|style="width: 160px"| set_control | >cntr< | >val<
|style="width: 400px"| setzt das Steuerelement mit dem angegebenen Namen >cntr< auf<br />den Wert des Ausdruckes >val<
|style="width: 400px"| the control element puts >val< on the value of the expression with the given name >cntr<
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 160px"| set_channel | >ch< | >val<
|style="width: 160px"| set_channel | >ch< | >val<
|style="width: 400px"| Übergibt an den angegebenen Kanal >ch< den Wert >val<
|style="width: 400px"| >Val< submits the value to the indicated channel >ch<
|}
|}


Folgende Vergleichsoperatoren können verwendet werden:
The following relational operators can be used:
{| class="wikitable centered"
{| class="wikitable centered"
|- style="vertical-align:top;"
|- style="vertical-align:top;"
! Operation
! Operation
! Alternative Schreibweise
! Alternative notation
! Bedeutung
! Meaning
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 185px"| >
|style="width: 185px"| >
|style="width: 185px"| &gt; |gt|
|style="width: 185px"| > - &amp;gt; - |gt|
|style="width: 185px"| größer
|style="width: 185px"| greater
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 185px"| <
|style="width: 185px"| <
|style="width: 185px"| &lt; |lt|
|style="width: 185px"| < - &amp;lt; - |lt|
|style="width: 185px"| kleiner
|style="width: 185px"| smaller
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 185px"| =
|style="width: 185px"| =
|style="width: 185px"| &eq; |eq|
|style="width: 185px"| = - &amp;eq; - |eq|
|style="width: 185px"| gleich
|style="width: 185px"| eaqual
|}
|}


Mit Hilfe der Vergleichsoperationen können Bedingungen formuliert werden, da DMXControl die if-Anweisung unterstützt.
With the help of the comparing operations conditions can be formulated since DMXControl supports the if instruction.
{| class="wikitable centered"
{| class="wikitable centered"
|- style="vertical-align:top;"
|- style="vertical-align:top;"
! DMXControl code
! DMXControl code
! Generische Sprachvariante
! Generic language variant
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 280px"| !if|{channel_3} &lt; 1|
|style="width: 280px"| !if|{channel_3} &lt; 1|
Line 1,173: Line 1,174:
|}
|}


{{ BoxHinweis
{{ BoxHint
| Text= Die Prozedur “INITCONTROLS” wird beim Öffnen der Form ausgeführt, um die Controls auf die Werte zu setzten, die durch die aktuellen DMX-Werte vorgegeben werden. Darin sollten also nur "Get"-Funktionen aufgerufen werden! Initcontrols muss nicht  definiert sein, ist aber empfohlen, damit die Controls immer den aktuellen Zustand des Gerätes abbilden.
| Text= The procedure “INITCONTROLS”do you execute when opening the form around which Controls put toward the values which are provided by the current DMX values. Into this, so only "Get" functions should be called! However, it is recommended Initcontrols doesn't have to be defined so that the Controls always show the current condition of the device.
}}
}}


====XML syntax of the procedure code====
====XML syntax of the procedure code====
Line 1,182: Line 1,182:
|- style="vertical-align:top;"
|- style="vertical-align:top;"
! Tag  
! Tag  
! Attribut
! Attribute
! Hierachie und Eigenschaft
! Hierarchy and properties
! Bemerkung
! Meaning
! Beispiel
! Example
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 100px"| <span style="color:#8B0000"> '''&#60;code&#62;''' </span>
|style="width: 100px"| <span style="color:#8B0000"> '''&#60;code&#62;''' </span>
|style="width: 75px"|
|style="width: 75px"|
|style="width: 200px"| '''Level 2'''<br />Subtag von "<span style="color:#8B0000">&#60;device&#62;</span>"<br />enthält alle Proceduren
|style="width: 200px"| '''Level 2'''<br />Subtag from "<span style="color:#8B0000">&#60;device&#62;</span>"<br />includes all procedures
|style="width: 100px"|
|style="width: 100px"|
|style="width: 100px"|
|style="width: 100px"|
Line 1,195: Line 1,195:
|style="width: 100px"| <span style="color:#8B0000"><procedure></span>
|style="width: 100px"| <span style="color:#8B0000"><procedure></span>
|style="width: 75px"|  
|style="width: 75px"|  
|style="width: 200px"| '''Level 3'''<br />Subtag von "<span style="color:#8B0000">&#60;code&#62;</span>"<br />enthält den Code der Procedure
|style="width: 200px"| '''Level 3'''<br />Subtag from "<span style="color:#8B0000">&#60;code&#62;</span>"<br />includes the code of the procedures
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 100px"|  
Line 1,201: Line 1,201:
|style="width: 100px"|  
|style="width: 100px"|  
|style="width: 75px"| <span style="color:#8B0000">name</span>
|style="width: 75px"| <span style="color:#8B0000">name</span>
|style="width: 200px"| Name der Prozedur
|style="width: 200px"| Name of the procedures
|style="width: 100px"| string
|style="width: 100px"| string
|style="width: 100px"| SetGobo
|style="width: 100px"| SetGobo
Line 1,207: Line 1,207:


====An example prozedure====
====An example prozedure====
Dieses Beispiel zeigt eine Prozedure, die die Werte der Steuerungselemente „color_color“ und „color_speed“ eines Movingheads in Abhängigkeit vom aktuellen DMX-Wert des Kanals 2 (Farbwechsler) setzt. Der Mac 250+ hat 4 Möglichkeiten für das Farbrad:
This example shows a procedure that sets the values of the control elements "color_color" and "color_speed" a moving heads in relation to the current DMX-value of channel 2 (color changer). The Mac 250 + has 4 options for the color wheel:




* Feste Farbe (erstes If im Beispiel unten),   
* Solid color (first If in the example below),   
* Drehung mit Uhrzeigersinn (2. If im Beispiel unten),  
* Turn clockwise (2. If in the example below),
* Drehung gegen Uhrzeigersinn (3. If im Beispiel unten) sowie 
* Turn counter clockwise (3 if in the example below), as well as
* zufällige Farben mit unterschiedlicher Geschwindigkeit (4. If im Beispiel unten).
* random colors with different speeds (4. If in the example below).




Hier die Deklarationen im Konfigurationsfile, die relevanten Variablen sind fett hervorgehoben:  
Here, the declarations in the configuration file, the relevant variables are highlighted in bold:




<source lang=xml>
<source lang=xml>
<function channel="2" minvalue="0" maxvalue="255" name="Farbe" fade="no"  
<function channel="2" minvalue="0" maxvalue="255" name="Color" fade="no"  
action="GetColor"/>
action="GetColor"/>
</source>
</source>


   
   
“color_color” ist die Referenz auf den Wert der Klappbox zur Farbauswahl.  
“color_color” is the reference to the value of the dropdown menu for selecting a color.  




Line 1,233: Line 1,233:


   
   
“color_speed” ist die Referenz auf den Wert des Schiebereglers zur Geschwindigkeit:  
“color_speed” is the reference to the value of the slider to the speed:  




Line 1,242: Line 1,242:




Die Prozedur unterteilt die DMX_Werte des Kanal 2 in 4 Intervalle und führt unterschiedliche Zuweisungen aus. Der aktuelle Wert wird also geprüft und die Controls werden entsprechend eingestellt.
The procedure split the DMX_Werte of the channel 2 in 4 intervals and performs different assignments. The current value is checked so and the controls are adjusted accordingly.




Line 1,248: Line 1,248:
|- style="vertical-align:top;"
|- style="vertical-align:top;"
! DMXControl code
! DMXControl code
! Generische Sprachvariante
! Generic language variant
|- style="vertical-align:top;"
|- style="vertical-align:top;"
|style="width: 280px"| <source lang=XML><procedure name='GetColor'></source>
|style="width: 280px"| <source lang=XML><procedure name='GetColor'></source>
Line 1,311: Line 1,311:
==Tip(s)==   
==Tip(s)==   


Neu in DMXControl 2.12 sind die Attribute 'minvalue' und 'maxvalue' beim Steuerelement Dropdown. Durch setzen dieser Attribute wird auch der richtige Dopdowneintrag angezeigt wenn der aktuelle DMX-Wert von value abweicht, sich aber noch im Bereich min/maxvalue befindet.
'Minvalue' and 'maxvalue' the control attributes are new in DMXControl 2.12 drop. By setting these attributes also the right double down entry is displayed if the current DMX value of value is different, but still in the range min/max value is.


==Links and references==
==Links and references==

Latest revision as of 18:30, 6 February 2024

Books.png DDF DMXC2


Hint:
25.10.2013: UPrenner: create the article page
07.11.2013 UPrenner: work-in-progress
11.11.2013: UPrenner article ready, just update of pictures
If you are a native speaker, please Help us and review this


Arrow back.png Pack And Go Function
DDFCreator Arrow forw.png
Contents

 

Overview

Picture 1: Graphical view with DDF icon
Picture 1: Graphical view with DDF icon


Picture 2: Opened DDF window with control elements
Picture 2: Opened DDF window with control elements


DDF is the abbreviation of Device Definition File. The DDF are the device description (Fixtures) in DMXControl, they serve to inform DMXControl about the functions of the attached DMX device to this. In the DDF the number becomes this one how channels of the DMX device defined and as well these use possible control elements:

  • Position input control element e.g. at Movingheads and Scanners.
  • RGB or CMY color choice control element to the color mixture at e.g. LED headlight or color mixed units at Movingheads.
  • Dropdown control elements
  • Button control elements.

Become the DDF in the « graphical view » with an icon of the device shown (see figure 1), then also can here be accessed the icon, the DDF window by a click with the control elements (see figure 2). XML format which is translated by DMXControl into the internal device description is carried out the description the DMX equipment in one. The DDF are found the DMXControl main directory in the sub-folder DEVICEs. The accompanying icon pictures, which one in the & laquo; Graphic stage view & raquo; be, lie in another sub-folder named shown images.

You get prefabricated DDFs, which weren't enclosed at the installation, can you perhaps of the DMXControl home page in the device library[1]. DDF can be made in a simple way with a XML editor (e. g. PSPad[2]) or also with the DDFCreator. There are advantages and disadvantages with the DDFCreator as also the construction of a DDF with a XML editor. With a XML editor, paraphrasing an existing DDF can be managed considerably faster than with the DDFCreator, against this one is fundamentally faster with the DDFCreator at the construction of a new DDF surface with slidern, button etc.

At both one needs a corresponding knowledge to make an operating DDF no matter whether one now the DDFCreator preferred or the XML editor. Shall the following chapters be conveyed for you, this knowledge among other things the language reference serves as a reference book

Description

A very common language syntax which e.g. is also used in the other dialects at web pages or WAP in the Internet sides is XML (eXtensible Markup Language). But you don't have to be an expert to make a new device description too manually. The following simple notes suffice:

Please take care that your editor doesn't store any (invisible) control characters. There won't be any problems at the Windows editor or PSPad. If you want to use Word or similar software, you should save the file in the raw document format (*.txt).

  • The DMXControl dialect of XML requires for every opening tag always one (<tag>) closing (</tag>) tag. Only this one gets the last level completed just by implication day (e. g. <item caption= "white" value="0" />).
  • The final signs /> and </tag> are semantically equivalent, also <item caption="white" value="0" > </item> is valid in this case.
  • Every day can have attributes which you find professed in the table below. Every attribute value is started with an equals sign and the value must always be included in double apostrophes.
  • All day and attribute identifiers are noted down at DMXControl in a small letter.
  • The day has to be defined hierarchically. They also should make this recognizable about corresponding indents.
  • As a rule, not cares about the order of the attributes of a day. Where it for once depends on the order anyway, you describe below explicitly.
  • Comment are noted down in the form <!- This is a comment —>.
  • E.g. you can have a look at xml files (therefore also the DMX DEVICEs files) in open form with the Internet Explorer.


So it was already this - we have a look at a simple example.


Example: dimmed spotlight

Every device should get an apt icon to receive an adapted representation in stage representation. This icon will be find in the subdirectory Images (Root:\Programme\DMXControl\Devices\Images).


 Important Hint The icons afterwards still can be changed in DMXControl. (In the context menu of the graphical view).


The preceding line numbers of the following XML example file cannot be inserted; they serve only the description of the example:

1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <device image="light.gif" initsequence=“set 0 128“ >
3   <channels>
4     <function channel="0" minvalue="0" maxvalue="255" name="Intensity" fade="yes" />
5   </channels>
6   <form width="177" height="85">
7     <deviceimage top="0" left="0" />
8     <devicename top="0" left="40" />
9     <deviceadress top="16" left="40" />
10    <slider channel="0" startvalue="0" endvalue="255" top="40" left="0" height="41" width="176" default="0" />
11  </form>
12 </device>


Row   1 the Parser will informed about the used XML version.
Row   2 the global description of the new type of device defines inclusive reference to the icon to be put and one ( initialization of the device the optional initsequence was demonstrated here, is but at a headlight only conditionally appropriately. The dimmer channel is (50%) ) put on DMX value 128 at the initialization here.
Row   3 the DMX channels of the device are defined between line 3 and 5.
Row   4 the channel description of the first channel is. This is always the channel numbers at zero important begin, i. e. the first channel is channel="0". In addition, other parameters as well as the channel name are still put here.
Row   6 the lines 6-9 describe the form, that is this one, to graphic coordinates in the context menu for the device picture, names and start address in the unity „Pixel“.
Row 10 here the operating devices follow a slider with his graphic coordinates and the assignment to the channel in question with her qualities, in this example now. Operating devices like radio badges also could, drop down or badges are declared for other types of device here.


Picture 3: Dimmer-DDF
Picture 3: Dimmer-DDF


Three button become Pinup button, Move button, Close button will be generatedly per default generatedly on the top right side (see figure 3).

Create a DDF

Before you make a new DDF, please have a look on our webside in the device library whether a suitable or similar already give it to definitions for your device. To make a new DDF, you modify an existing DDF of a similar device best. This goes text been based change considerably faster than with the DDF Creator just with this. If you have completed your work, you simply put the xml file in the subdirectory in the DMXControl list „DEVICEs“himself has in your DMX installation as of and store the corresponding gif picture (in the format 32 x32 pixels, the transparency fashion proves itself) in the subdirectory „images“in this „DEVICE“List-. The device should be visible at the next start of DMXControl so.


Syntax overview

Every description contains four main parts (see figure 4):

  • Description of global qualities device (in the example dimmed spotlight line 1-2)
  • Description of the individual DMX channels channels (in the example dimmed spotlight line 3-5)
  • Description of the graphic context menu form (in the example dimmed spotlight line 6-11)
  • Prozedure code (not contained, optionally in the example)


Picture 4: Basic structure of a DDF
Picture 4: Basic structure of a DDF


All form elements must on the will provide DDF form with graphic coordinates to the positioning. The elements „Label“ and „Line“ are passive and serve only the design of the surface. The remaining active elements of the form (also control element mentioned, e.g. on/off) can be used for the active control of the DMX device.


Graphical elements

The figure 5 shows a survey of all supported graphic elements. An assignment to the required syntax elements is carried out in the explanation texts.


Picture 5: Graphic elements
Picture 5: Graphic elements


The following figure 6 illustrates the meaning of the graphic coordinates of the control elements:


Picture 6: Graphic coordinates of the control elements
Picture 6: Graphic coordinates of the control elements


Functional elements

The active control elements interact in 3 possible concepts with DMXControl or the device in which exactly one concept is selected at the definition of a concrete control element:


Konzept Beschreibung Beispiel
1 Channel/Value concept The control element is assigned via the channel attribute to a concrete channel. Concrete values or ranges of values which are put at the activity of the control element are defined in the control element. - option list
  caption="Star sky" value="165"

- Value range of the slider
  startvalue="0" endvalue="255"
2 Sequences An instruction consequence which is executed when operating is defined in the control element as a string. clicksequence=
“set 1 75; set 2 100“
3 Action/Procedures A separately defined procedure contains more complex program instructions. The procedure is operate assigned via the action attribute and at everybody the control element executed. action="SetGobo"


This which Channel attribute and the action attribute can want to use alternatively in the control elements particularly means.


 Important Hint For many applications the first two concepts are sufficient.


Like the complexity and cardinality of the 3 concepts grows, the running time requirements also increase. The simplest variant on the solution of a task should therefore always be chosen. Also at the channel description an action attribute can be used. This means that the procedure is called at every change of the channel value. In figure 7 an example is shown how different control elements can interact with the channels. „So like the complexity and channel_n“address and can over the 3 mentioned above concepts be put. The current value, obliged to it for a control element are, are addressed more than one name freely eligible for office (reference) assigned to the control element here „control_n“bezeichnet. Im following example is for three control elements „Actionses“and additional „Reference names“assigned. And therefore should, as a rule these Actionses be able to do one or put several Channel values „set name“being described. Furthermore there is one „action“ assigned to the channel_3. This is intended to read and to inform about to the control elements the current channel values „assigned to the channel_3. Scheduled, this one are Get name this for this“get since she must read current channel values.


Picture 7: Interaction of control elements
Picture 7: Interaction of control elements



 Important Hint The markings of the buttons don't have a meaning here.


Syntax

This chapter describes the syntax of the device and form configuration files of DMXControl.


Generic attributs

 Important Hint Attributes often recurring are described to it globally once for the shortening with the same meaning after the following tables here.


Reference Attribute Hierachie and properties Notice Example
GP1 value Assigned DMX value byte 0, 128, 255
GP2 caption Descriptive enumeration value.
Explanatory name for an attitude.
string Dimmer,
Strobe,
usw.
GP3 top Relative x-coordinate of the
element of the left upper corner
integer top=“150“
GP4 left Relative x-coordinate of the
element of the left upper corner.
integer left=“100“
GP5 width Width of the element integer width=“80“
GP6 height Height of the element integer height=“30“


 Important Hint All coordinate details (top, left, width, height) are indicated in pixel.


Device description

Tag Attribute Hierachie and properties Notice Example
<device> Level 1
image Icon filename. string,
Filename.gif
Moon.gif
initsequence Sets initial values for the individual DMX channels of the device Optional use e.g. for scanner/moving head's start position set 0 15;
set 7 128;
<information> Level 2
Supplementary comment.
<name> Level 3
Arbitrary text.
Custom Scanner
<vendor> Level 3
Arbitrary text
(manufacturer).
optional Showtec
<deviceidentifier> Level 3
Arbitrary text
(manufacturer identifier.
optional TG-3
<author> Level 3
Arbitrary text
(originator).
optional
<comment> Level 3
Arbitrary text
(comment).
optional
<help> Level 2
Help text (ASCII).
optional

Channel description

Tag Attribute Hierachie and properties Notice Example
<channels> Level 2
For every DMX channel is one
<function>”-part to define
<function> Level 3
Subtag from “<channels>
channel Internal DMX channel number
channel no. must always of 0
climbing without interruption be
defined for the individual channels
integer
minvalue Minimal DMX value integer
maxvalue Maximal DMX value integer
name Descripting name
for the channel.
string Intensity
fade Channel fading string yes,no
type Channel typ
Important for the internal
data handling
string dimmer, r,g,b,
pan, panfine,
tilt, tiltfine,
color, gobo
action Call of a procedure at
change of the channel value
string
optional
<virtual> Level 3
Subtag from “<channels>
<channel> Level 4
Subtag from “<virtual>
channel Internal DMX channel number
The three rgb channels assigned to the virtual dimmer
integer


 Important Hint The channel type (type) also should allocate channel for everybody

become provided that this channel to the type matches. E.g. it doesn't make sense to describe every channel as a dimmer.


dimmer reserved for channels these regulate the intensity
r,g,b reserve for channels of RGB LED equipment, r for the red channel, g for the green channel, b for the blue channel. On the one hand, r, g, b are for the type it HAL needs in DMXControl. This also means, this in the graphical view the colors of the spotlights be shown.
One can one racks use this in the program configuration under « graphical view » and then at « symbol » « representation of the colors instead of graphic ».
On the other hand, the type also for the one into the 2.12 new one LED's run light generator required becomes.
a,w reserve for channels of (RGB)A as and (RGB)W LED devices, a for the amber channel, W for the white channel. The type a and w aren't supported by DMXControl yet the device, however, is appropriately since amber or white channel make a bigger and bigger contribution to the market and therefore perhaps are supported by DMXControl soon, too with additional.
pan, panfine reserve for the Pan channels of scanners, moving heads or similar equipment. How pan is and panfine assigned to the channel for the rough control the channel for the fine control at 16 bits of device.
tilt, tiltfine as in the case of pan and panfine but for the tilt axis.
color, gobo The appropriate Farb and Goborad channels can be assigned to (importantly to color & gobo lists)
c, m, y reserviert für Kanäle von CMY-Geräten, c für den Cyan Kanal, m für den magenta Kanal und y für den gelben Kanal.
Die types c, m, y werden noch nicht von DMXControl unterstützt sind aber sinnvoll.

reserved for CMY devices, c for the cyan channel, m for the magenta channel, y for the yellow channel. The type c, m, y aren't supported by DMXControl make sense, however, yet.

other all other channels don't need a type description


 Important Hint The ones for RGB devices reserved type's are important the HAL (Hardware Abstraction Layer) since version 2. 11 in which then be able to the adjusted colors of the spotlight, be represented in the graphical view too. Also for version 2.12, here they also are needed for the RGB running light generator.


Menue description

Tag Attribute Hierachie and properties Notice Example
<form> Level 2
Subtag from “<device>
width
height
See generic attribute
GP5; GP6
integer
<deviceimage> 'Level 3
Subtag from “<form>“;
Absolute position of
the shown picture
top
left
width
height
See generic attribute
GP3 bis GP6
integer
<devicename> 'Level 3
Subtag from “<form>“;
Absolute position of
the shown name
top
left
width
height
See generic attribute
GP3 bis GP6
integer
<deviceaddress> 'Level 3
Subtag von “<form>“;
Absolute position of
the shown base address
top
left
width
height
See generic attribute
GP3 bis GP6
integer

Control elements

Position control
Tag Attribute Hierachie and properties Notice Example
DMXC2 Manual DDF position field cartesian.png  DMXC2 Manual DDF position field polar.png
<position> Level 3
Subtag from “<form>“;
Creates a positioning
field for positioning from
scanners or moving heads.
By a click on the button down on the right in the DDF you can switch between a cartesian and polar positioning.
top
left
width
height
See generic attribute
GP3 bis GP6
integer


 Important Hint The position pointer can be placed by initsequenz


Slider
Tag Attribute Hierachie and properties Notice Example
DMXC2 manual DDF slider.png
<slider> Level 3
Subtag from “<form>“;
Creates a slider
top
left
width
height
See generic attribute
GP3 bis GP6
integer
channel assigned channel
alternative for action
integer
optional
startvalue Value range of the
Slider (lower value)
integer startvalue="0"
endvalue Value range of the
Slider (uper value)
integer endvalue="255"
tickfreq Scaling, distance of the
scale subdivision
integer tickfreq="32"
smallchange Change rate e.g. at the
up down keys
integer
(VB-properties)
smallchange="20"
largechange Change rate e.g. at the
mouse click (not draged)
integer
(VB-properties)
largechange="50"
name Referenz name for procedure
code (variable name)
string
optional
StrobeSpeed
action Call of a procedure at
change at the Slider
alternative channel
string
optional
SetSpeed
Dropdown
Tag Attribute Hierachie and properties Notice Example
DMXC2 manual DDF dropdown.png
<dropdown> Level 3
Subtag from“<form>“;
Creates a dropdown menu.
top
left
width
See generic attribute
GP3 bis GP5
integer
channel Assigned channel
alternative for action
integer
optional
name Referenz name for procedure
code (variable name)
string
optional
Gobo
action Call of a procedure at
change of a dropdown
entries, alternative for channel
string
optional
SetGobo
<item> Level 4
Subtag from “<dropdown>
caption Explanatory name string Clear
value DMX value for caption integer value="0"
minvalue
maxvalue
Value range for caption for
the diplayed of the dropdown entry.
integer minvalue="10"
maxvalue="26"
color Show a square with the assigned color before caption. hex color="#ff0000"
Color Red
<colorlist> Level 4
Subtag from “<dropdown>
All entries of the in color list assigned to the device insert.
optional a substitute/
addition for
Item
<gobolist> Level 4
Subtag from“<dropdown>
All entries of the in gobo list assigned to the device insert.
optional a substitute/
addition for
Item
Options
Tag Attribute Hierachie and properties Notice Example
DMXC2 manual DDF options.png
<options> Level 3
Subtag from “<form>“;
Creates a radio button field
top
left
See generic attribute
GP3 & GP4
integer
channel Assigned channel alternative foraction integer
optional
action Call of a procedure at
change of a radio buttons,
alternative for channel
optional SetGoboSpeed
name Referenz name for procedure
code (variable name)
string
optional
GoboSpeed
<option> Level 4
Subtag from “<options>
caption See generic attribute
GP2
string off
value DMX value for caption integer 0
top
left
See generic attribute
GP3 & GP4, relativ position
for positioning from “<options>
integer left="0"
top="0"
On/Off-Button
Tag Attribute Hierachie and properties Notice Example
DMXC2 Manual DDF onoff.png
<onoff> Level 3
Subtag from “<form>“;
Creates a button as switch
top
left
width
height
See generic attribute
GP3 bis GP6
integer
channel Assigned channel alternative for action integer
optional
action Call of a procedure at
pushing the buttons
alternative for channel
string
optional
SetLampOnOff
name Referenz name for procedure code (variable name) string
optional
LampOnOff
caption Explanatory name string On/Off
color Hex RGB color value of the button hex color="#00ff00"
color green
onvalue DMX value for button ON integer onvalue="150"
offvalue DMX value for button OFF integer offvalue="0"
onsequence Execute a Sequence, by switching to ON string "set 0 230;
set 1 25"
offsequence Execute a Sequence, by switching to OFF string "set 0 0;
set 1 0"
Command-Button
Tag Attribute Hierachie and properties Notice Example
DMXC2 manual DDF command.png
<command> Level 3
Subtag for “<form>“;
Creates a button as push button.
top
left
width
height
See generic attribute
GP3 bis GP6
integer
action Call of a procedure at pushing the button. string
optional
SetReset
name Referenz name for procedure code (variable name) string
optional
Reset
caption Explanatory name string Reset
color Hex RGB color value of the button string color="#0000ff"
color blue
clicksequence Activity to be started at the button click is specified in the attribute string "save 0;
set 0 230;
hold 5500;
restore 0"
downsequence Activity to be started at push down the button is specified in the attribute string "save 0;
set 0 230;
hold 5500;
restore 0"
upsequence Activity to be started at relase the button is specified in the attribute string "save 0;
set 0 230;
hold 5500;
restore 0"
Colorpicker
Tag Attribute Hierachie and properties Notice Example
DMXC2 manual DDF colorpicker.png
<colorpicker> Level 3
Subtag from “<form>“;
Creates a colorpicker.
top
left
width
height
See generic attribute
GP3 bis GP6
integer
channel1 Assignment to 1. channel
red oder cyan,
alternative for action
integer
optional
channel2 Assignment to 2. channel
green or magenta,
alternative for action
integer
optional
channel3 Assignment to 3. channel
blue oder yellow,
alternative for action
integer
optional
name Referenz name for procedure code (variable name) string
optional
ColRGB
action Call of a procedure at
changing a color,
alternative for channel1-3
string
optional
SetColRGB
mode Choice of the two modes
RGB or CMY
string mode=“cmy“
layout Choice of two
different layouts from the
Colorpickers
integer layout="1"

Beispiel:

<colorpicker mode="rgb" channel1="0" channel2="1" channel3="2" layout="2" top="40"
left="0" height="75" width="177"/>


 Important Hint Please keep the mouse button pushed down if you want to change the setting in the color bar over the drop down menu. A direct input of the numeric value is also possible.

Become the color values in procedures about name:colorchannel provided with references ({ColRGB:1}; {ColRGB:2}; {ColRGB:3})


Passive design elements

Tag Attribute Hierachie and properties Notice Example
DMXC2 Manual DDF line.png
<line> Level 3
Subtag from “<form>“;
Design element;
Creates a line.
x1; y1 Start coordinate of the line integer
x2; y2 End coordinate of the line integer
DMXC2 Manual DDF label.png
<label> Level 3
Subtag from “<form>“;
Design element;
additional description of
an operating device.
top
left
width
height
See generic attribute
GP3 bis GP6
integer
caption Text to be shown string CMY Mischung

Example:

Bild 8: DDF Giotto Spot 400


 Advanced information You find this DDF in the device libary (at the moment not online) on the DMXControl Website.


Help

In fig. 9 shows an example of a help menu, help menus are optional. It is recommended to announce the DMX occupancy of the device here. The help description is carried out in the ASCII format. Please increase the clarity by formatting with tabulator signs or underlinings. The help can one by click on the question mark button (next to the Pin badge) and be turned off.

miniatur|center|600px|Bild 9: Hilfemenü eines DDF's

Sequences

Operation Meaning Example
save >channel< Storing the current channel value of the DMX channel intermediately >channel< "save 0; set 0 230; hold 5500; restore 0"
set >channel< >value< Set the channel >channel< to value
>value<
"save 0; set 0 230; hold 5500; restore 0"
hold >time< Timer (wait >time< in ms) "save 0; set 0 230; hold 5500; restore 0"
restore >channel< Move the value of the DMX channel stored intermediately >channel< back again. "save 0; set 0 230; hold 5500; restore 0"

Procedurs (advanced programming options)

The device and form configuration of DMXControl also permits the programming of algorithmic changes of the DMX signals which are executed automatically with the operation of control elements like onoff button, dropdown menu or slider.

So you can set conditions and formulae the values which are assigned to the control elements about logical. E.g. the procedures serve to be able to treat multiple occupations of a channel (e.g. gobo rotation lies on the same channel as the gobo selection) so that the value can be calculated differently depending on rotational speed.

These procedures also permit you the programming of dependences of the channels or operating devices of a device, any colors e.g. you connect certain colors with gobos in a firm or algorithmic assignment or you organize certain speeds.

Also can at devices with two color wheels, the colors then select more than one drop down or predefined colors have drop down at RGB or CMY devices assigned to one for themselves so.


General principles

The procedures become this one as an action attribute <function> tags (channels) or the control elements e.g. <onoff>, <slider> or <dropdown> assigned. With operation of corresponding control elements the code of the procedure is interpreted and executed automatically. The action attribute is against this into assigned, a channel the <function> tag she is executed so at every change of the belonging channel value. Using the procedures „References“on the values of the control elements which are declared by the Name attribute within the form definition of the control elements e.g.


<dropdown top="16" left="207" width="113" name="color_color" action="SetColor">


This means: The procedure SetColor is executed with operation of the drop down menu and the value of the drop down menu is submitted to the called procedure SetColor as a variable color_color.

Furthermore implicit references as a default assignment to the channels exist. E.g. that way is channel_2 with the channel (function) with channel=2 binded, also the action GetColor assigned.


<function channel="2" minvalue="0" maxvalue="255" name="Color" fade="no" 
action="GetColor" colorchannel="yes"/>


Till now, variables in the real meaning as freely verifiable loft values aren't defined.

Basic syntax elements and conventions

While the references are marked by her name ("color_color"), the current value is addressed by curly brackets of the assigned control element ("{color_color}").

To simplify the interpretation of the procedure code by a Parser, some conventions you unfortunately must observe although they seem not very user friendly are agreed on in the present program release. For comparison purposes and the following tables on this one always provide a generic language variant to right sides on the easier to learn.

The following signs serve as sync separators:

Operation Meaning
! start with an command
 | separate the individual components
 $ conclude an order

The following arithmetical operations are supported:

Operation Meaning
 + addition
 - subtraction
 * multiplication
 / division
 mod modulo-Operation
(issues the remainder of the
mod division in the form of result)

Every expression must be surrounded by a bracket to be calculated. The following examples illustrate the use of arithmetical operations:

DMXControl code Generic language variant
!set_channel|2|(227+{color_speed})$ channel_2 := 227 + color_speed
!set_channel|3|((({gobos_gobo}-1)*51)+25)$ channel_3 := (gobos_gobo-1)*51+25
!set_control|gobos_speed|((({channel_3}-1) mod 51)-26)$ gobos_speed := ((channel_3 -1) mod 51)-26

The used standard operators have the following semantics:

Operation Meaning
set_control | >cntr< | >val< the control element puts >val< on the value of the expression with the given name >cntr<
set_channel | >ch< | >val< >Val< submits the value to the indicated channel >ch<

The following relational operators can be used:

Operation Alternative notation Meaning
> > - &gt; - |gt| greater
< < - &lt; - |lt| smaller
= = - &eq; - |eq| eaqual

With the help of the comparing operations conditions can be formulated since DMXControl supports the if instruction.

DMXControl code Generic language variant
!if|{channel_3} < 1| if channel_3 < 1 then


 Important Hint The procedure “INITCONTROLS”do you execute when opening the form around which Controls put toward the values which are provided by the current DMX values. Into this, so only "Get" functions should be called! However, it is recommended Initcontrols doesn't have to be defined so that the Controls always show the current condition of the device.


XML syntax of the procedure code

Tag Attribute Hierarchy and properties Meaning Example
<code> Level 2
Subtag from "<device>"
includes all procedures
<procedure> Level 3
Subtag from "<code>"
includes the code of the procedures
name Name of the procedures string SetGobo

An example prozedure

This example shows a procedure that sets the values of the control elements "color_color" and "color_speed" a moving heads in relation to the current DMX-value of channel 2 (color changer). The Mac 250 + has 4 options for the color wheel:


  • Solid color (first If in the example below),
  • Turn clockwise (2. If in the example below),
  • Turn counter clockwise (3 if in the example below), as well as
  • random colors with different speeds (4. If in the example below).


Here, the declarations in the configuration file, the relevant variables are highlighted in bold:


<function channel="2" minvalue="0" maxvalue="255" name="Color" fade="no" 
action="GetColor"/>


“color_color” is the reference to the value of the dropdown menu for selecting a color.


<dropdown top="16" left="207" width="113" name="color_color" action="SetColor">


“color_speed” is the reference to the value of the slider to the speed:


<slider top="16" left="320" height="25" width="65" startvalue="0" endvalue="18" 
tickfreq="9" smallchange="1" largechange="5" name="color_speed" action="SetColor"/>


The procedure split the DMX_Werte of the channel 2 in 4 intervals and performs different assignments. The current value is checked so and the controls are adjusted accordingly.


DMXControl code Generic language variant
<procedure name='GetColor'>
Procedure GetColor( )

!if|{channel_2} &lt; 208| 
  !set_control|color_color|
  {channel_2}$ 
  !set_control|color_speed|0$ 
| 
!if|({channel_2} &gt; 207) and  
({channel_2} &lt; 227)| 
  !set_control|color_color|-1$ 
  !set_control|color_speed|
  (226-{channel_2})$ 
$ 
!if|({channel_2} &gt; 226) and  
({channel_2} &lt; 246)| 
  !set_control|color_color|-2$ 
  !set_control|color_speed|
  ({channel_2}-227)$ 
$ 
!if|({channel_2} &gt; 245) and  
({channel_2} &lt; 256)| 
  !set_control|color_color|-3$ 
  !set_control|color_speed|
  ((255-{channel_2}) * 2)$
$ 
$
begin 
if channel_2 < 208 then
  color_color := channel_2; 

  color_speed := 0; 
(else)  
if (channel_2 > 207)  and  
(channel_2 < 227) then
  color_color := -1; 
  color_speed := 226-channel_2; 

(else)  
if (channel_2 > 226) and  
(channel_2 < 246) then
  color_color := -2; 
  color_speed :=channel_2-227 

(else) 
if (channel_2 > 245) and  
   (channel_2 < 256) then
  color_color := -3; 
  color_speed := (255-channel_2) * 2; 

;
</procedure>
end

Tip(s)

'Minvalue' and 'maxvalue' the control attributes are new in DMXControl 2.12 drop. By setting these attributes also the right double down entry is displayed if the current DMX value of value is different, but still in the range min/max value is.

Links and references

Links

 

Arrow back.png Pack And Go Function
DDFCreator Arrow forw.png
Contents