c't

c't-Projekte - Mailinglisten


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

Re: [ct-bot] behaviour_map_go_destination

Absender: Benjamin Benz
Datum: Di, 20.05.2008 11:28:42
In-reply-to: <48C139945BA47F4DB4DE05DF62CD57AA03B4D1CCC0@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx>
References: <48C139945BA47F4DB4DE05DF62CD57AA03B4D1CCC0@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx>


Hi,

Ich kann nur einen Teil der Fragen beantworten, für den Rest springt Timo hoffentlich ein:

Beim Umbau/Tuning der Map haben wir auch erheblich aufgeräumt, da der Code einen Zustand erreicht hatte, indem sich midestens drei Generationen überlagerten. Im Rahmen dieser Entscfhlackung haben wir folgende Idee verfolgt:

Map.h exportiert nur das absolut notwendige nach außen. Dazu gehört, dass die ganze innere Architektur, insbesondere der Zugriff auf die Fields nicht mehr public ist.

Deshalb ist auch World_to_map() nicht public, weil es außerhalb von map.c nicht nötig sein sollte.

Auch ein Update-Zugriff auf die Karte sollte eigentlich von außen nicht nötig sein. Die Updates erfolgen alle über den Map-Cache.


MfG Benjamin Benz

Menzel, Frank IT-OO4 schrieb:
Hallo,
wollte wieder mal das Verhalten behaviour_map_go_destination mit den nun neuen Map-Routinen verwenden und stelle fest, dass hier gar nichts mehr geht.
Folgendes ist mir in diesem Zusammenhang aufgefallen:


-in map.c gibt es das define OLD_GET_SET, welches defaultmäßig nicht gesetzt ist
In dem o.a. Verhalten benötige ich aber get_field und set_field, die aber nicht in der map.h deklariert sind. Was ist hier der Beweggrund, dies so zu deklarieren bzw. wie können diese Routinen in der map.h deklariert werden um darauf zugreifen zu können (mit dem define als auch ohne) ?


-Weitere Deklarationen fehlender map.c Routinen in  map.h:
World_to_map
Way_free_fields
Update occupied


Diese sind in der map.c als static deklariert. Hier ist mir unklar, was dies genau bewirkt bzw. wie ich diese mit dem static in der map.h deklariere (bekomme ich nur ohne static hin).

Vielleicht sollte generell erst einmal das verhalten rausgenommem werden bis diesen wieder funktioniert. Ich hoffe, ein Redesign hinzubekommen, zumindest wollte ich mich da ranmachen...

Mit freundlichen Grüßen / best regards
Frank Menzel
_______________________________________________
ct-bot-entwickler Mailingliste
ct-bot-entwickler@xxxxxxxxxxxxxxxxx
http://www.heise.de/bin/newsletter/listinfo/ct-bot-entwickler



--
Benjamin Benz
Heise Zeitschriften Verlag
Redaktion c't
eMail: bbe@xxxxxxxx
WWW  : http://www.heise.de

Heise Zeitschriften Verlag GmbH & Co. KG
Registergericht: Amtsgericht Hannover HRA 26709

Persönlich haftende Gesellschafterin:
Heise Zeitschriften Verlag Geschäftsführung GmbH
Registergericht: Amtsgericht Hannover, HRB 60405
Geschäftsführer: Ansgar Heise, Steven P. Steinkraus, Dr. Alfons Schräder