qrailway 0.9
Öffentliche Slots | Öffentliche Methoden | Private Methoden | Private Attribute

cFensterLok Klassenreferenz

Einstellungsfenster um Zuege aufsetzen, veraendern und entfernen zu koennen. Mehr ...

#include <cFensterLok.h>

Aufstellung aller Elemente

Öffentliche Slots

void SlotPunktMoved (int sigg, int x, int y)
 Registriert Bewegung eines Geschwindigkeitspunktes.
void SlotNeueLokAuswahl (int CBid)
 Eine neue Lok (in der Combo-Box an Stelle CBid) wird ausgewaehlt und soll dargestellt werden.
void SlotNeueTrainAuswahl (int CBid)
 Eine neuer Zug (in der Combo-Box an Stelle CBid) wird ausgewaehlt und soll dargestellt werden.
void SlotLokLoeschen ()
 Entfernt eine Lok von der Anlage/und der Datenbank.
void SlotButtonCancel ()
 Aenderungen am aktuellen Datensatz zuruecknehmen.
void SlotButtonOk ()
 Fenster schliessen, evtl. Button umbenennen.
void SlotButtonGeschwindigkeitsmessung ()
 Automatische Geschwindigkeitsmessung starten.
void SlotButtonGeschwindigkeitsmessungAbbrechen ()
 Automatische Geschwindigkeitsmessung abbrechen.
void SlotGeschwindigkeitsmeldung (int messid, int gesamtmess, int reglertempo, int kmhtempo, int rich)
 Slot fuer Statusmeldungen bzgl. der Geschwindigkeitsmessung.
void SlotUpdate (int trainidtmp)
 Verarbeitet eine Aenderung des Zugs mit der ID trainidtmp (d.h. Listen werden erneuert und evtl. Werte aus der Datenbank nachgeladen.
void SlotLokAufsetzen (void)
 Oeffnet ein Fenster zum Aufsetzen des Zugs (falls sie noch nicht auf der Anlage steht)
void SlotLokAufsetzenSchliessen (void)
 Wird aufgerufen, wenn das Aufsetzen-Fenster geschlossen wird.
void SlotLokRunternehmen (void)
 Fragt, ob der aktuelle Zug von der Anlage genommen werden soll.
void SlotLokAnzeigen (void)
 Zeigt die ausgewaehlte Lok an.

Öffentliche Methoden

 cFensterLok (QWidget *parent, cIntelligenz *Intelligenztmp, int trainid=0)
 Initialisiert das Fenster und startet mit Zug trainid. Ist trainid=0, so wird der alphabetisch erste Zug verwendet.
 ~cFensterLok ()
 Entfernt das Fenster.
void AndererDatensatz (int trainidtmp)
 Wechselt Darstellung auf den Zug mit der Nummer trainid.
int befuelleComboLok (int trainidtmp)
 Befuellt die ComboBox fuer die Zugauswahl. Sollte trainidtmp gefunden werden, so wird trainidtmp zurueckgeliefert. Falls nicht, so wird die id vom ersten Eintrag der ComboBox zurueckgeliefert.

Private Methoden

void cDebug (int prioritaet, const QString &meldung)
 Gibt die Meldung "meldung" in eine der Klasse zugeordnete Logdatei aus. Dabei werden Meldungen mit der Prioritaet prioritaet 0 auch auf dem Bildschirm als Warnung ausgegeben. Meldungen mit Prioritaet >=2 (bzw. >=1) werden in aller Regel nicht in die Log-Datei ausgegeben, lassen sich aber durch Modifikation der Funktion cDebug zur Ausgabe hinzufuegen. Der Klasse ist die Log-Datei log.cFensterLok zugeordnet.

Private Attribute

QColor farbeVorwaerts
 Farbe fuer Geschwindigkeitsprofile (werden aus Konfig-Datei geladen: measure/farbeVorwaerts)
QColor farbeRueckwaerts
 Farbe fuer Geschwindigkeitsprofile (werden aus Konfig-Datei geladen: measure/farbeRueckwaerts)
QPixmap * PixmapLokbildklein
 Kleines Bild bei der Lokauswahl.
QString ArtNummer
 Artikelnummer.
QString traintext
 Beschreibung.
Q3Canvas * canvas
 Canvas fuer Geschwindigkeitseinstellung.
cKoordinatensystemGeschwindigkeitcanvasviewer
 CanvasView fuer Darstellung des Canvas.
int trainid
 Aktuell dargestellter Zug.
int firsttrainid
cIntelligenzIntelligenz
 Pointer auf die Fahrsteuerungsroutinen-Klasse.
int speedslow
 Langsame Mikrokontrollereinstellung speedslow entspricht kmhslow Kilometern pro Stunde.
int kmhslow
 Langsame Mikrokontrollereinstellung speedslow entspricht kmhslow Kilometern pro Stunde.
int speedmod
 Mittlere Mikrokontrollereinstellung speedmod entspricht kmhmod Kilometern pro Stunde.
int kmhmod
 Mittlere Mikrokontrollereinstellung speedmod entspricht kmhmod Kilometern pro Stunde.
int speedfast
 Schnelle Mikrokontrollereinstellung speedfast entspricht kmhfast Kilometern pro Stunde.
int kmhfast
 Schnelle Mikrokontrollereinstellung speedfast entspricht kmhfast Kilometern pro Stunde.
int speedmin
 Minimalgeschwindigkeit.
int speedmax
 Maximalgeschwindigkeit.
cFensterLokAufsetzenLokAufsetzen
 Zeiger auf das Aufsetzen-Fenster.
bool ComboLokUpdate
 relevante Aenderung, damit ComboLok neu befuellt wird?
cKoordinatensystemPunktGeschwindigkeitsPunkt [10]
 Regelbare Geschwindigkeitspunkte.
cKoordinatensystemPunktMesspunkt [40]
 Beobachtete Messpunkte.
Q3CanvasLine * GeschwindigkeitsLinie [8]
 Linien.
QPixmap PixmapLabelLokbildscaled
 Bild der Lok.

Ausführliche Beschreibung

Einstellungsfenster um Zuege aufsetzen, veraendern und entfernen zu koennen.

Diese Klasse stellt das Fenster dar, in dem man die Einstellungen fuer einen Zug vornehmen kann. Z.B. Zugart, Zugname, Geschwindigkeitsdefinitionen, neue Zuege, ...


Tab Zug: In der Listbox kann der Zug ausgewählt werden, dessen Eigenschaften bearbeitet werden soll. Darunter wird die Bezeichnung und die Zuglänge erfasst. Die Einstellung der Zugtyps hat Auswirkungen auf das Verhalten der Bahnhöfe bzw. der Befehlszuweisung. Mit den Buttons "Übernehmen" bzw. "Rückgängig" kann man Änderungen speichern bzw. verwerfen. Durch Klick auf "In Betrieb" kann der Zug auf der Anlage platziert werden (es öffnet sich das Fenster cFensterLokAufsetzen). Ein Zug, der auf der Anlage steht, kann durch Klick auf "Im Regal" wieder von der Anlage genommen werden. Der Button "Zug entfernen" löscht den Zug aus der Datenbank.

Tab Abbildung: Auf diesem Tab kann die Lok ausgewählt werden. Als Basis dienen die Tabelle locomotives und die zu den angegebenen Bilddateinamen gehörigen Bilder.

Tab Dynamik: Mit der Dynamik wird die Reglerstufe, d.h. die Hardware-seitige Geschwindigkeit, die mittels Impulsbreitensteuerung zwischen 0 und 63 liegt, mit der innerhalb des Programms verwendeten Geschwindigkeit (in km/h) verknüpft. Die grüne Kurve gibt dabei die Verknüpfung für Vorwärtsfahrt an, die blaue Kurve für Rückwärtsfahrt. Die Punkte lassen sich mit der Maus verschieben. Bei der automatischen Geschwindigkeitsmessung werden als Hilfestellung zusätzliche Punkte hinzugefügt. Auf der x-Achse wird dabei die eingestellte Reglergeschwindigkeit dargestellt, auf der y-Achse die aus der für die Messung benötigten Zeit und der Länge der Messstrecke zurückgerechneten Geschwindigkeit in km/h.

Tab Geschw.Messung: Sofern der Zug auf dem Startpunkt der Messstrecke steht, kann mit Klick auf "Starten" die Messung gestartet werden. Der Zug wird sich im Anschluss vor- und rückwärts auf der Messstrecke bewegen, die Zeit zwischen der Überfahrt der Reedkontakte wird dabei gemessen. Falls die Checkbox "rückwärts vorsichtig prüfen" gecheckt ist, wird die Geschwindigkeit bei Rückwärtsfahrt gecapped, so dass der Zug nicht entgleist.

Tab Bemerkung: Hier können Informationen zu Wagen, dem letzten Reinigungsdatum und sonstige Bemerkungen erfasst werden.

Definiert in Zeile 153 der Datei cFensterLok.h.


Beschreibung der Konstruktoren und Destruktoren

cFensterLok::cFensterLok ( QWidget *  parent,
cIntelligenz Intelligenztmp,
int  trainid = 0 
)

Initialisiert das Fenster und startet mit Zug trainid. Ist trainid=0, so wird der alphabetisch erste Zug verwendet.

cFensterLok::~cFensterLok ( )

Entfernt das Fenster.


Dokumentation der Elementfunktionen

void cFensterLok::AndererDatensatz ( int  trainidtmp)

Wechselt Darstellung auf den Zug mit der Nummer trainid.

int cFensterLok::befuelleComboLok ( int  trainidtmp)

Befuellt die ComboBox fuer die Zugauswahl. Sollte trainidtmp gefunden werden, so wird trainidtmp zurueckgeliefert. Falls nicht, so wird die id vom ersten Eintrag der ComboBox zurueckgeliefert.

void cFensterLok::cDebug ( int  prioritaet,
const QString &  meldung 
) [private]

Gibt die Meldung "meldung" in eine der Klasse zugeordnete Logdatei aus. Dabei werden Meldungen mit der Prioritaet prioritaet 0 auch auf dem Bildschirm als Warnung ausgegeben. Meldungen mit Prioritaet >=2 (bzw. >=1) werden in aller Regel nicht in die Log-Datei ausgegeben, lassen sich aber durch Modifikation der Funktion cDebug zur Ausgabe hinzufuegen. Der Klasse ist die Log-Datei log.cFensterLok zugeordnet.

void cFensterLok::SlotButtonCancel ( ) [slot]

Aenderungen am aktuellen Datensatz zuruecknehmen.

void cFensterLok::SlotButtonGeschwindigkeitsmessung ( ) [slot]

Automatische Geschwindigkeitsmessung starten.

void cFensterLok::SlotButtonGeschwindigkeitsmessungAbbrechen ( ) [slot]

Automatische Geschwindigkeitsmessung abbrechen.

void cFensterLok::SlotButtonOk ( ) [slot]

Fenster schliessen, evtl. Button umbenennen.

void cFensterLok::SlotGeschwindigkeitsmeldung ( int  messid,
int  gesamtmess,
int  reglertempo,
int  kmhtempo,
int  rich 
) [slot]

Slot fuer Statusmeldungen bzgl. der Geschwindigkeitsmessung.

void cFensterLok::SlotLokAnzeigen ( void  ) [slot]

Zeigt die ausgewaehlte Lok an.

void cFensterLok::SlotLokAufsetzen ( void  ) [slot]

Oeffnet ein Fenster zum Aufsetzen des Zugs (falls sie noch nicht auf der Anlage steht)

void cFensterLok::SlotLokAufsetzenSchliessen ( void  ) [slot]

Wird aufgerufen, wenn das Aufsetzen-Fenster geschlossen wird.

void cFensterLok::SlotLokLoeschen ( ) [slot]

Entfernt eine Lok von der Anlage/und der Datenbank.

void cFensterLok::SlotLokRunternehmen ( void  ) [slot]

Fragt, ob der aktuelle Zug von der Anlage genommen werden soll.

void cFensterLok::SlotNeueLokAuswahl ( int  CBid) [slot]

Eine neue Lok (in der Combo-Box an Stelle CBid) wird ausgewaehlt und soll dargestellt werden.

void cFensterLok::SlotNeueTrainAuswahl ( int  CBid) [slot]

Eine neuer Zug (in der Combo-Box an Stelle CBid) wird ausgewaehlt und soll dargestellt werden.

void cFensterLok::SlotPunktMoved ( int  sigg,
int  x,
int  y 
) [slot]

Registriert Bewegung eines Geschwindigkeitspunktes.

void cFensterLok::SlotUpdate ( int  trainidtmp) [slot]

Verarbeitet eine Aenderung des Zugs mit der ID trainidtmp (d.h. Listen werden erneuert und evtl. Werte aus der Datenbank nachgeladen.


Dokumentation der Datenelemente

QString cFensterLok::ArtNummer [private]

Artikelnummer.

Definiert in Zeile 206 der Datei cFensterLok.h.

Q3Canvas* cFensterLok::canvas [private]

Canvas fuer Geschwindigkeitseinstellung.

Definiert in Zeile 210 der Datei cFensterLok.h.

CanvasView fuer Darstellung des Canvas.

Definiert in Zeile 212 der Datei cFensterLok.h.

relevante Aenderung, damit ComboLok neu befuellt wird?

Definiert in Zeile 236 der Datei cFensterLok.h.

Farbe fuer Geschwindigkeitsprofile (werden aus Konfig-Datei geladen: measure/farbeRueckwaerts)

Definiert in Zeile 202 der Datei cFensterLok.h.

QColor cFensterLok::farbeVorwaerts [private]

Farbe fuer Geschwindigkeitsprofile (werden aus Konfig-Datei geladen: measure/farbeVorwaerts)

Definiert in Zeile 200 der Datei cFensterLok.h.

Definiert in Zeile 214 der Datei cFensterLok.h.

Q3CanvasLine* cFensterLok::GeschwindigkeitsLinie[8] [private]

Linien.

Definiert in Zeile 242 der Datei cFensterLok.h.

Regelbare Geschwindigkeitspunkte.

Definiert in Zeile 238 der Datei cFensterLok.h.

Pointer auf die Fahrsteuerungsroutinen-Klasse.

Definiert in Zeile 216 der Datei cFensterLok.h.

int cFensterLok::kmhfast [private]

Schnelle Mikrokontrollereinstellung speedfast entspricht kmhfast Kilometern pro Stunde.

Definiert in Zeile 228 der Datei cFensterLok.h.

int cFensterLok::kmhmod [private]

Mittlere Mikrokontrollereinstellung speedmod entspricht kmhmod Kilometern pro Stunde.

Definiert in Zeile 224 der Datei cFensterLok.h.

int cFensterLok::kmhslow [private]

Langsame Mikrokontrollereinstellung speedslow entspricht kmhslow Kilometern pro Stunde.

Definiert in Zeile 220 der Datei cFensterLok.h.

Zeiger auf das Aufsetzen-Fenster.

Definiert in Zeile 234 der Datei cFensterLok.h.

Beobachtete Messpunkte.

Definiert in Zeile 240 der Datei cFensterLok.h.

Bild der Lok.

Definiert in Zeile 244 der Datei cFensterLok.h.

QPixmap* cFensterLok::PixmapLokbildklein [private]

Kleines Bild bei der Lokauswahl.

Definiert in Zeile 204 der Datei cFensterLok.h.

int cFensterLok::speedfast [private]

Schnelle Mikrokontrollereinstellung speedfast entspricht kmhfast Kilometern pro Stunde.

Definiert in Zeile 226 der Datei cFensterLok.h.

int cFensterLok::speedmax [private]

Maximalgeschwindigkeit.

Definiert in Zeile 232 der Datei cFensterLok.h.

int cFensterLok::speedmin [private]

Minimalgeschwindigkeit.

Definiert in Zeile 230 der Datei cFensterLok.h.

int cFensterLok::speedmod [private]

Mittlere Mikrokontrollereinstellung speedmod entspricht kmhmod Kilometern pro Stunde.

Definiert in Zeile 222 der Datei cFensterLok.h.

int cFensterLok::speedslow [private]

Langsame Mikrokontrollereinstellung speedslow entspricht kmhslow Kilometern pro Stunde.

Definiert in Zeile 218 der Datei cFensterLok.h.

int cFensterLok::trainid [private]

Aktuell dargestellter Zug.

Definiert in Zeile 214 der Datei cFensterLok.h.

QString cFensterLok::traintext [private]

Beschreibung.

Definiert in Zeile 208 der Datei cFensterLok.h.


Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Datei: