Makro Operationsende Erkennung und Folgeabläufe steuern/nl: Unterschied zwischen den Versionen

Aus RailRoad&Co.-Wiki
Zur Navigation springenZur Suche springen
Albert Hartveld (Diskussion | Beiträge)
Die Seite wurde neu angelegt: „In TC-berichten werd herhaaldelijk de wens geuit dat de gebruiker graag zou willen weten wanneer een macro klaar is met het uitvoeren van zijn bewerkingen, zodat hij vervolgens verdere acties kan starten.“
Albert Hartveld (Diskussion | Beiträge)
Die Seite wurde neu angelegt: „In tegenstelling tot een macro in normale programmeertalen: * wordt na beëindiging van een macro in TrainController de actie NA de macro-oproep aan het einde NIET voortgezet, * MAAR eindigt de macro ZONDER terug te keren naar de plaats waar deze werd opgeroepen!“
Zeile 16: Zeile 16:
In TC-berichten werd herhaaldelijk de wens geuit dat de gebruiker graag zou willen weten wanneer een macro klaar is met het uitvoeren van zijn bewerkingen, zodat hij vervolgens verdere acties kan starten.
In TC-berichten werd herhaaldelijk de wens geuit dat de gebruiker graag zou willen weten wanneer een macro klaar is met het uitvoeren van zijn bewerkingen, zodat hij vervolgens verdere acties kan starten.


<div lang="de" dir="ltr" class="mw-content-ltr">
In tegenstelling tot een macro in normale programmeertalen:
Im Gegensatz zu einem Makro in normalen Programmiersprachen wird:
* wordt na beëindiging van een macro in TrainController de actie NA de macro-oproep aan het einde NIET voortgezet,  
* nach Beendigung eines Makros in TrainController '''NICHT''' die Aktion NACH dem Makro-Aufruf bei seinem Ende fortgesetzt,  
* MAAR eindigt de macro ZONDER terug te keren naar de plaats waar deze werd opgeroepen!
* SONDERN das Makro endet '''OHNE''' "Rückkehr" zur aufrufenden Stelle!
</div>


:[[Datei:MakroOperationsfolge.png|MakroOperationsfolge.png]]
:[[Datei:MakroOperationsfolge.png|MakroOperationsfolge.png]]

Version vom 18. September 2025, 12:10 Uhr

Verwendung
thumbs


Macro in TrainController

Wat is een macro?

Een macro is een reeks operatie instructies, die vanuit verschillende andere operaties kunnen worden opgeroepen en daarom slechts één keer hoeven te worden aangemaakt.

Einde macro

In TC-berichten werd herhaaldelijk de wens geuit dat de gebruiker graag zou willen weten wanneer een macro klaar is met het uitvoeren van zijn bewerkingen, zodat hij vervolgens verdere acties kan starten.

In tegenstelling tot een macro in normale programmeertalen:

  • wordt na beëindiging van een macro in TrainController de actie NA de macro-oproep aan het einde NIET voortgezet,
  • MAAR eindigt de macro ZONDER terug te keren naar de plaats waar deze werd opgeroepen!
MakroOperationsfolge.png

Abb: Makro Operationsfolge

Folgen nach dem Makroaufruf in TrainController weitere Operationen, so werden diese DIREKT nach dem Aufruf fortgesetzt, sie werden also "zeitlich parallel" abgearbeitet.

Ende erkennen

Dieses Dokument beschreibt den Einsatz von Makros im TC Programm ganz allgemein und stellt verschiedene Wege vor wie das Ende eines Makro - "Programmablaufs" erkannt werden kann und wie sich daran weitere Abläufe (Operationen) in TC Objekten anschließen lassen.

Abb: Operation Z am Makroende

Es wird bewußt KEINE Wartezeit verwendet, damit sich die Abläufe "nahtlos" aneinanderreihen --- ohne die mit der Wartezeit verbundenen zeitlich bekannten Problematiken.

Es sei jetzt schon darauf hingewiesen, daß der Leser nicht seinen spezifischen Fall behandelt sieht. Er muß sich aus dem "Grundsätzlichen“ die Lösung zu seinem Fall ableiten.

Dokument herunterladen

Das folgende Dokument zeigt Möglichkeiten auf, wie sich ein Makro - Ablaufende erkennen läßt und wie man ein Verhalten erstellen kann, was an das Verhalten in "normalen Programmiersprachen" anknüpft sowie Abläufe in anderen TC Objekten initiert.

Das Dokument wurde von Jens Mohr zur Verfügung gestellt und kann unter dem Titel als PDF: "TC-Makro_Operationsende_Erkennung-WiKi.pdf" aufgerufen werden.


-- Jens Mohr 16:24, 28. Sep. 2016‎ († 2023)
bearbeitet: Uslex (Diskussion) 09:08, 18. Feb. 2022 (CET), Uslex (Diskussion) 13:23, 31. Jul. 2023 (UTC), Uslex (Diskussion) 10:22, 24. Aug. 2024 (CEST)