Makro Operationsende Erkennung und Folgeabläufe steuern: Unterschied zwischen den Versionen
Uslex (Diskussion | Beiträge) KKeine Bearbeitungszusammenfassung |
Uslex (Diskussion | Beiträge) K Jens Mohr († 2023) |
||
(2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 40: | Zeile 40: | ||
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 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 "[[Medium:TC-Makro_Operationsende_Erkennung-WiKi.pdf|TC-Makro_Operationsende_Erkennung-WiKi.pdf]]" aufgerufen werden. | Das Dokument wurde von Jens Mohr zur Verfügung gestellt und kann unter dem Titel als PDF: "[[Medium:TC-Makro_Operationsende_Erkennung-WiKi.pdf|TC-Makro_Operationsende_Erkennung-WiKi.pdf]]" aufgerufen werden. | ||
Zeile 49: | Zeile 49: | ||
:-- Jens Mohr 16:24, 28. Sep. 2016 | :-- Jens Mohr 16:24, 28. Sep. 2016 († 2023) | ||
:bearbeitet: [[Benutzer:Uslex|Uslex]] ([[Benutzer Diskussion:Uslex|Diskussion]]) 09:08, 18. Feb. 2022 (CET) | :bearbeitet: [[Benutzer:Uslex|Uslex]] ([[Benutzer Diskussion:Uslex|Diskussion]]) 09:08, 18. Feb. 2022 (CET), [[Benutzer:Uslex|Uslex]] ([[Benutzer Diskussion:Uslex|Diskussion]]) 13:23, 31. Jul. 2023 (UTC), [[Benutzer:Uslex|Uslex]] ([[Benutzer Diskussion:Uslex|Diskussion]]) 10:22, 24. Aug. 2024 (CEST) | ||
[[Kategorie: Software]] | [[Kategorie: Software]] | ||
[[Kategorie: TrainController]] | [[Kategorie: TrainController]] | ||
[[Kategorie: Makros]] | [[Kategorie: Makros]] |
Aktuelle Version vom 24. August 2024, 09:22 Uhr
Makro in TrainController
Was ist ein Makro?
Ein Makro ist eine Folge von Operationsanweisungen, die aus unterschiedlichen anderen Operationen heraus aufgerufen werden können und deshalb nur einmal zu erstellen sind.
Makro Ende
In TC Beiträgen wurde immer wieder der Wunsch geäußert, daß der Nutzer gerne wüßte wann ein Makro mit der Abarbeitung seiner Operationen endet, um dann anschließend weitere Aktionen starten zu können.
Im Gegensatz zu einem Makro in normalen Programmiersprachen wird:
- nach Beendigung eines Makros in TrainController NICHT die Aktion NACH dem Makro-Aufruf bei seinem Ende fortgesetzt,
- SONDERN das Makro endet OHNE "Rückkehr" zur aufrufenden Stelle!
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.
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.
Weblinks
- Anleitung: TC-Makro_Operationsende_Erkennung-WiKi.pdf
- -- 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)