c't

c't-Projekte - Mailinglisten


[Voriger (Datum)] [Nächster (Datum)] [Voriger (Thread)] [Nächster (Thread)]
[Nach Datum][Nach Thread]

Re: AW: AW: [ct-bot] Stackimplementation und Verhalten bot_drive_stack

Absender: Timo Sandmann
Datum: Di, 18.12.2007 19:17:32
In-reply-to: <000001c840c2$96865c00$0200a8c0@mexpnew>
References: <000001c840c2$96865c00$0200a8c0@mexpnew>


Hallo,

Am 17.12.2007 um 16:36 schrieb Frank Menzel:
Hallo,
hoffe nun alles beruecksichtigt zu haben.
Den Stack habe ich als Array implementiert und die vorherige dynamische
Version aber drin gelassen. Via Define ist die Array-Version mit 20
Einträgen aktiv.

danke, aber wenn ich den Patch anwende und die Konfiguration so belasse, wie sie im SVN ist, compiliert der Code nicht mehr. Wenn goto_pos() in available_behaviours.h ausgeschaltet wird, muss auch drive_stack() ausgeschaltet werden. Gut das ist ja mit einem zusätzlichen #undef schnell gemacht, aber dann compiliert es wiederum nicht, weil in gui.c das Stack-Display trotzdem noch aktiv ist. Da ist wohl irgendwo etwas bei der #define / #include-Reihenfolge verrutscht. Ich habe leider im Moment keine Zeit, da tiefer nachzuforschen. Änderungen und neue Verhalten sollten natürlich mit allen möglichen Konfigurationsvarianten problemlos funktionieren, aber wenn es nicht mal zur Standardkonfig kompatibel ist, kann ich's nicht ins SVN stellen. Bitte vor dem Patcheinsenden immer prüfen, ob der Code auch für MCU und PC compiliert, sowohl mit Verhalten an als auch mit Verhalten aus.

Und was ist mit den Funktionen "uint8 pop_line(int16 *x1, int16 *y1, int16 *x2, int16 *y2)" und "void push_line(int16 x1, int16 y1, int16 x2, int16 y2)"? Die werden nie benutzt. Falls das übergebliebene Reste sind, bitte löschen. Vom Inhalt her sieht es so aus, als sollten sie für eine vereinfachte Verwendung gedacht sein - dafür würde ich sie aber als inline-Funktionen umbauen, dann stört es auch nicht, wenn sie gar nicht benutzt werden (z.B. weil ein Verhalten deaktiviert ist).

Gruß Timo