User Tools

Site Tools


xmlscripting-de

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
xmlscripting-de [2019/04/21 00:11] rainerkxmlscripting-de [2019/05/24 17:25] rainerk
Line 10: Line 10:
  
 {{:xmlscripting.png}}\\ {{:xmlscripting.png}}\\
 + \\
 +| Ab //Rev. 15.429// ist der XML-Editor codesensitiv mit Farb-Darstellung von Knoten, Statements, Parametern, Werten, Kommentaren usw.|\\
 + \\ 
  
  \\  \\
Line 380: Line 383:
 </code> </code>
 Anstelle von ''subidx'' kann auch ''subid'' verwendet werden, wenn der Sub-Knoten eine Kennung (ID) hat.\\ Anstelle von ''subidx'' kann auch ''subid'' verwendet werden, wenn der Sub-Knoten eine Kennung (ID) hat.\\
- +
  \\  \\
 +====clock====
 +|< >|
 +| 15401+ |
 +Mit dem "clock get"-Befehl:
 +<code xml>
 +  <clock cmd="get"/> 
 +</code>
 +werden drei Variable aktualisiert.
 +|< >|
 +^ Variablen-Name ^ Wert ^ Text ^
 +| modeltime | Stunde * 3600 + Minute * 60 + Sekunden | hh:mm.ss |
 +| realtime | Stunde * 3600 + Minute * 60 + Sekunden | hh:mm.ss |
 +| systemtick | Anzahl von 10ms seit Rocrail-Server-Start | - |
 +Der systemtick läuft bei 4294967295 (119,3 Stunden) auf 32bit und 18446744073709551615 auf 64bit-Systemen über.\\
  
 + \\
 ===== Format von Bedingungen ===== ===== Format von Bedingungen =====
 +|< >|
 | Wert | Komparator | Wert |\\ | Wert | Komparator | Wert |\\
 Weitere Bedingungen müssen mit einem //Pipe//-Zeichen (senkrechter Strich: | ) ohne zusätzliche Leerzeichen getrennt werden.\\ Weitere Bedingungen müssen mit einem //Pipe//-Zeichen (senkrechter Strich: | ) ohne zusätzliche Leerzeichen getrennt werden.\\
Line 391: Line 410:
 Für mögliche Variable siehe: __**[[:text-gen-de#variablen|Text-Variable]]**__ \\ Für mögliche Variable siehe: __**[[:text-gen-de#variablen|Text-Variable]]**__ \\
 \\ \\
 +|< >|
 ^ System-Variablen ^^ ^ System-Variablen ^^
 | &time | Modell-Zeit in Sekunden | | &time | Modell-Zeit in Sekunden |
  
  \\  \\
 +|< >|
 ^ Komparatoren ^^ ^ Komparatoren ^^
 | = | gleich; Zahlen | | = | gleich; Zahlen |
Line 415: Line 436:
  
 ===== Format von Status/Klassen ===== ===== Format von Status/Klassen =====
 +|< >|
 | Objekt-Typ | | Objekt-Kennung ohne Leerzeichen | | Komparator | | Status-/Klassen-Wert |\\ | Objekt-Typ | | Objekt-Kennung ohne Leerzeichen | | Komparator | | Status-/Klassen-Wert |\\
 Die Werte müssen mit Leerzeichen getrennt werden.\\ Die Werte müssen mit Leerzeichen getrennt werden.\\
Line 423: Line 445:
 :!: Objekt-Kennungen dürfen __keine Leerzeichen__ enthalten! Stattdessen z.B. Unterstriche oder Punkte verwenden.\\ :!: Objekt-Kennungen dürfen __keine Leerzeichen__ enthalten! Stattdessen z.B. Unterstriche oder Punkte verwenden.\\
 \\ \\
 +|< >|
 ^ Komparatoren ^^ ^ Komparatoren ^^
 |  =  | Status: gleich | |  =  | Status: gleich |
Line 429: Line 452:
  
 ==== Status-Objekte ==== ==== Status-Objekte ====
 +|< >|
 ^ Objekt-Name ^ Objekt-Typ ^ Status-Werte ^ Hinweis ^ ^ Objekt-Name ^ Objekt-Typ ^ Status-Werte ^ Hinweis ^
 | Signal | sg | red, green, yellow, white, blank, aspect number | | | Signal | sg | red, green, yellow, white, blank, aspect number | |
Line 445: Line 469:
  
 ==== Klassen-Objekte ==== ==== Klassen-Objekte ====
 +|< >|
 ^ Objekt-Name ^ Objekt-Typ ^ ^ Objekt-Name ^ Objekt-Typ ^
 | Block | bk | | Block | bk |
Line 452: Line 477:
  
 ===== Befehle ===== ===== Befehle =====
 +|< >|
 ^ Objekt-Name ^ Objekt-Typ ^ Befehle ^ Status ^ Hinweise ^ Beispiel ^ ^ Objekt-Name ^ Objekt-Typ ^ Befehle ^ Status ^ Hinweise ^ Beispiel ^
 | Lok | lc | Alle https://rocrail.net/software/rocrail-snapshot/rocrail/wrapper-en.html#lc | | Das Block-Kennungs-Attribut (bkid) kann verwendet werden, um die Lok-Kennung von einem Block zu erhalten. \\ Befehl %%"regularreset"%% ist mit %%"softreset"%% gleich, aber es entfernt auch den zugewiesenen Fahrplan.|  | Lok | lc | Alle https://rocrail.net/software/rocrail-snapshot/rocrail/wrapper-en.html#lc | | Das Block-Kennungs-Attribut (bkid) kann verwendet werden, um die Lok-Kennung von einem Block zu erhalten. \\ Befehl %%"regularreset"%% ist mit %%"softreset"%% gleich, aber es entfernt auch den zugewiesenen Fahrplan.| 
Line 509: Line 535:
 </code> </code>
  \\  \\
 +=====Variablen-Formatierung=====
 +Mit dem Format-Attribut ist es möglich, Variablen-Inhalt auf die gleiche Art zu formatieren, wie ''printf''.\\
 +====Beispiel====
 +<code xml>
 +<xmlscript>
 +  <vr id="var1" value="3" text="Hello"/>
 +  <vr id="var2" value="5" text="RocrailFans"/>
 +  <vr id="var3" format="%s%02d:%04d%s" text="@var1 #var1 #var2 @var2"/>
 +  <trace text="@var3"/>
 +</xmlscript>
 +</code>
 +Ausgabe __mit__ dem Format-Attribut sieht so aus:
 +<code>
 +Hello03:0005RocrailFans
 +</code>
 +Ausgabe __ohne__ das Format-Attribut sieht so aus:
 +<code>
 +Hello 3 5 RocrailFans
 +</code>
  
 +
 +
 + \\
 =====Tipps===== =====Tipps=====
 ====Regelkonformes XML ==== ====Regelkonformes XML ====
 Um das XML-Skript auf Konformität zu überprüfen, kann es mit einem Web-Browser geöffnet werden.\\ Um das XML-Skript auf Konformität zu überprüfen, kann es mit einem Web-Browser geöffnet werden.\\
 Einige Zeichen müssen dafür durch Escape-Codes ersetzt werden: Einige Zeichen müssen dafür durch Escape-Codes ersetzt werden:
 +|< >|
 ^ Zeichen ^ Code ^ ^ Zeichen ^ Code ^
 |  <  | &lt; | |  <  | &lt; |
xmlscripting-de.txt · Last modified: 2024/02/16 01:35 by rainerk