Datei | Funktion bzw. genauere Lageangabe | Beschreibung | Bemerkung |
---|---|---|---|
m_topo.cpp | TTopographySetParam::Dlg_OnCommand Case Zweig cm_RotateMotor |
Der hier vorgesehene Fall tritt niemals ein. Es ist zwar ein Rotationsknopf neben der Motorauswahl-Box vorgesehen, der diesen Case-Fall auslösen würde, dieser wird aber nicht im Programm angezeigt. | Rotationsknopf ist vielleicht als Programmerweiterung vorgesehen. |
m_steerg.cpp | Funktion TSteeering::Visualising | Die Variablen: b_id_Angle, b_id_PeakIntensity, b_id_Intensity und b_id_HalfWidth werden hier mit Werten belegt, aber es kommt nirgendwo zu einer Nutzung dieser Variablen. | Kann gestrichen werden, dabei müssen aber Seiteneffekte auf die Aufrufstellen von TSteering::Visualising beachtet werden, da sich die Parameteranzahl ändern würde. |
m_topo.cpp | TTopographyExecute::Dlg_OnInit | nMotor wird hier als Wert der aktive Motor zugewiesen, zuvor wurde jedoch der aktive Motor auf nMotor gesetzt. | Kann eigentlich gestrichen werden. |
m_topo.cpp | TTopographyExecute::Dlg_OnCommand | Unter cm_SwitchControl werden sowohl das Starten der Messung, als auch daß Ende betrachtet. Die Unterscheidung erfolgt anhand der Zustandsvariable bControlActive | Anstelle der Unterscheidung anhand einer Zustandsvariablen, sollten hier besser zwei verschiedene Messages gewählt werden, die dann eine getrennte Behandlung der Ereignisse Start und Ende der Messung ermöglichen. |
m_steerg.cpp | Funktion TCmd::StartMove | Hier wird 20 Millisekunden lang gewartet. Es ist nicht klar warum. | Vielleicht muß nach Motorbewegungen gewartet werden? Falls es sich tatsächlich um eine Wartezeit aufgrund der Motorbewegung handelt, sollte diese direkt in der Motorfunktion angegeben werden. |
m_steerg.cpp | Klasse TControlFlankCmd Konstruktor | Im Konstruktor werden zur Wertspeicherung der Intensität und der Distanz Felder mit der Größe vier angelegt. Bei den Berrechnungen werden jedoch nur die ersten zwei Feldwerte betrachtet. | Die Größe der Felder sollte auf zwei verkleinert werden, um eineseits keinen unnötigen Speicheraufwand zu haben, und zum anderen das Programmverständnis zu erleichtern. |
m_steerg.cpp | Funktion TControlFlankCmd::ControlStep | Im Fall 3 ist die Aktion auskommentiert -> hier hat wohl etwas nicht richtig funktioniert. Die Berechnungen zur Feststellung der Bewegungsrichtung werden nicht weiter verwendet | Wenn dieser Fall nicht betrachtet werden soll, ist der Code für Fall 3 komplett zu streichen. Ansonsten muß diese Stelle überprüft werden und die nötige Aktion entsprechend implementiert werden. |
m_topo.cpp Funktion | TTopographyExecute::LeaveDialog | Es wird mit KillTimer der Timer TimerIdInformation (399) gestoppt. Leider konnte ich nicht feststellen, wo dieser Timer gestartet wurde. Es ist unklar, in welchem Zusammenhang dieser Timer zur Topographie steht. | Mit entsprechenden Beobachtungstools ( Systemüberwachung) müßte überprüft werden, ob dieser Timer für das Ausführen der Topographie eine Rolle spielt. |
Ini-File (develop.ini) | Topographie Abschnitt | Folgende Angaben im Topographie Abschnitt werden niemals eingelesen:
|
Wo kommen diese Werte her? Wurde nur vergessen, sie einzulesen, oder stammen sie von einem Benutzer / einer Benutzerin? |
m_steerg.cpp | TGotoIntensityCmd Konstruktor | Für die Intensität und die Distanz wird jeweils ein Feld der Größe drei angelegt. Es werden im weiteren Verlauf aber nur zwei Felder benötigt. | Um Speicherplatz zu sparen und die Programmverstädlichkeit zu erhöhen, sollte die Anzahl der Felder auf zwei verringert werden. |