===== Cockpit.ResetZwischenzeit ===== ==== Einleitung ==== Dieser Befehl setzt die Zwischenzeiten für alle Slots/IDs auf ''0''. \\ ==== Syntax ==== ^ Befehl | Cockpit.ResetZwischenzeit | ^ Funktion| Alle Zwischenzeiten für alle Slots/IDs auf ''0'' setzen | ^ Typ | | ==== Codebeispiel ===== Das folgende Beispiel ist recht umfangreich ausgefallen. Es arbeitet mit Cockpit-XP IR-Sensoren und Zwischenzeitmessungen, die auf zwei USB-Boxen verteilt sind. Sektor 1 liegt auf USB-Box Nummer 2 (Liste im Gerätemanager), die Sektoren 2+3 (Start/Ziel) sind auf USB-Box Nummer 1 konfiguriert. Jeder Eingang benötigt zusätzlich die Funktion ''Ereignis erzeugen: Fahrzeug'', da sonst das //''DigInputEvent''// Ereignis im AddOn nicht ausgelöst wird. { Pascal Script Engine } { Event: DigInputEvent } { Parameter: Cockpit.Slot=, Cockpit.Station=, Cockpit.Parameter= } const USBBoxNr1 = 1; USBBoxNr2 = 2; var slot : Integer; eingangNr : Integer; sektorzeit : Integer; zwischenzeit : Integer; rundenzeit : Integer; msg : String; begin // Ereignis an USB-Box 1 erkannt if Cockpit.Parameter = USBBoxNr1 then begin // Nummer des Eingangs, der aktiviert wurde eingangNr := Cockpit.Station; // Slot speichern und einstellen slot := Cockpit.Slot; Cockpit.Slot := slot; // je nach Eingangsnummer Messpunkt einstellen // und Sektor-/Zwischenzeit erfassen case eingangNr of 1..4 : // Eingänge 1-4 = Sektor 3 begin Cockpit.Station := 3; sektorzeit := Cockpit.Sektorzeit; zwischenzeit := Cockpit.Zwischenzeit; rundenzeit := Cockpit.Rundenzeit; end; 5..8 : // Eingänge 5-8 = Sektor 2 begin Cockpit.Station := 2; sektorzeit := Cockpit.Sektorzeit; zwischenzeit := Cockpit.Zwischenzeit; end; end; // Meldung zusammenstellen msg := msg + Chr(13) + Chr(10); msg := msg + 'Sektor [' + IntToStr(Cockpit.Station) + ']: '; msg := msg + cpIntToStr3(sektorzeit) + 's'; msg := msg + Chr(13) + Chr(10); msg := msg + 'Zwischenzeit: ' + cpIntToStr3(zwischenzeit) + 's'; // Rundenzeit nur bei Sektor 3 einblenden if Cockpit.Station = 3 then begin msg := msg + Chr(13) + Chr(10); msg := msg + 'Rundenzeit: ' + cpIntToStr3(rundenzeit) + 's'; end; // Meldung anzeigen cpShowMessage(msg); end; // END if - USB-Box 1 // Ereignis an USB-Box 2 erkannt if Cockpit.Parameter = USBBoxNr2 then begin // Nummer des Eingangs, der aktiviert wurde eingangNr := Cockpit.Station; // Slot speichern und einstellen slot := Cockpit.Slot; Cockpit.Slot := slot; // je nach Eingangsnummer Messpunkt einstellen // und Sektor-/Zwischenzeit erfassen case eingangNr of 1..4 : // Eingänge 1-4 = Sektor 1 begin Cockpit.Station := 1; sektorzeit := Cockpit.Sektorzeit; zwischenzeit := Cockpit.Zwischenzeit; end; end; // Meldung zusammenstellen msg := msg + Chr(13) + Chr(10); msg := msg + 'Sektor [' + IntToStr(Cockpit.Station) + ']: '; msg := msg + cpIntToStr3(sektorzeit) + 's'; msg := msg + Chr(13) + Chr(10); msg := msg + 'Zwischenzeit: ' + cpIntToStr3(zwischenzeit) + 's'; msg := msg + Chr(13) + Chr(10); // Meldung anzeigen cpShowMessage(msg); // Zwischenzeit zurücksetzen Cockpit.ResetZwischenzeit := True; // Meldung erweitern msg := msg + Chr(13) + Chr(10); msg := msg + 'Reset Zwischenzeit durchgeführt'; msg := msg + Chr(13) + Chr(10); // Meldung erweitern msg := msg + Chr(13) + Chr(10); msg := msg + 'Sektor [' + IntToStr(Cockpit.Station) + ']: '; msg := msg + cpIntToStr3(Cockpit.Sektorzeit) + 's'; msg := msg + Chr(13) + Chr(10); msg := msg + 'Zwischenzeit: ' + cpIntToStr3(Cockpit.Zwischenzeit) + 's'; // Meldung anzeigen cpShowMessage(msg); end; // END if - USB-Box 2 end. Zu sehen ist jeweils eine Meldung der Zwischenzeitsensoren. Bei Sektor 1 wird zusätzlich kurz gewartet und dann die Zwischenzeiten zurückgesetzt. Im Anschluss ergibt sich eine weitere Meldung, die den aktuellen Wert von [[cockpit-xp:addon:befehlsreferenz:cockpit.sektorzeit|Cockpit.Sektorzeit]] und [[cockpit-xp:addon:befehlsreferenz:cockpit.zwischenzeit|Cockpit.Zwischenzeit]] anzeigt. Schön zu sehen, dass sich der Reset-Befehl //__NUR__// auf die Zwischenzeit auswirkt. Die Sektorzeit bleibt erhalten. \\ {{ :cockpit-xp:addon:befehlsreferenz:cpwiki-cockpit-reset-zwischenzeit-1a.png?nolink |}} {{:cockpit-xp:addon:befehlsreferenz:cpwiki-cockpit-resetzwischenzeit-1.png?nolink|}}{{:cockpit-xp:addon:befehlsreferenz:cpwiki-cockpit-resetzwischenzeit-2.png?nolink|}}{{:cockpit-xp:addon:befehlsreferenz:cpwiki-cockpit-resetzwischenzeit-3.png?nolink|}} \\ ---- [[cockpit-xp:start|Start]] - [[cockpit-xp:faq|FAQ]] - [[cockpit-xp:glossar|Glossar]] - [[cockpit-xp:sitemap|Sitemap]] - [[cockpit-xp:impressum|Impressum]]