Module - Fahrtansicht: Entwickler
Informationen über die Software-Umsetzung der Fartansicht.
Übersicht
TODO: Wie ist das Modul aufgebaut? Wie kann man es erweitern?
Zustände
Die Zustände jeder Zone lassen sich in folgendem Diagramm darstellen:

Die Schadensdetail-Button (Ursache & Stärke des Minderertrags) werden von allen Zonen geteilt verwendet. Alle anderen Buttons (“Anfang”, “Stop”, Spurauswahl) sind für jede Zone einzeln vorhanden.
Spracheingabe
Bei der Spracheingabe wird folgende formale Grammatik erlaubt (angegeben in EBNF):
Programm = "abbrechen" | ZonenStart | ZonenEnde | ZonenTypisierung;
ZonenStart = "start", SpurenAufzählung;
ZonenEnde = "stop", SpurenAufzählung;
ZonenTypisierung = ( ZonenTypisierung1 | ZonenTypisierung2 | ZonenTypisierung3 | ZonenTypisierung4 ), [ "stop" ];
ZonenTypisierung1 = SpurenAufzählung, ZonenAngabe;
ZonenTypisierung2 = ZonenAngabe, SpurenAufzählung;
ZonenTypisierung3 = MinderertragsUrsache, ZonenAngabe, MinderertragsTyp;
ZonenTypisierung4 = MinderertragsTyp, ZonenAngabe, MinderertragsUrsache;
ZonenAngabe = ( ( MinderertragsUrsache, MinderertragsTyp ) | ( MinderertragsTyp, MinderertragsUrsache) | MinderertragsUrsache | MinderertragsTyp );
MinderertragsUrsache = "hang" | "nass" | "nässe" | "maus" | "wild" | "lehm" | "sand" | "kuppe" | "ton" | "verdichtung" | "wende";
MinderertragsTyp = "gering" | "mittel" | "hoch";
SpurenAufzählung = [ "zone" ], SpurenAufzählungTeil, { SpurenAufzählungTeil };
SpurenAufzählungTeil = "spur" | ( SpurBezeichnung, { SpurBezeichnung } );
SpurBezeichnung = "eins" | "zwei" | "drei" | "vier" | "fünf" | "sechs";
Zuletzt geändert 13.02.2025: added to fm1 (707c632e9)