(svn r1979) Const correctness

This commit is contained in:
tron 2005-03-09 21:54:52 +00:00
parent 9bd079d425
commit e5121e70d0
5 changed files with 18 additions and 21 deletions

View File

@ -275,13 +275,11 @@ void SetCustomEngineSprites(byte engine, byte cargo, struct SpriteGroup *group)
_engine_custom_sprites[engine][cargo] = *group; _engine_custom_sprites[engine][cargo] = *group;
} }
typedef struct RealSpriteGroup *(*resolve_callback)(struct SpriteGroup *spritegroup, typedef struct RealSpriteGroup *(*resolve_callback)(
struct Vehicle *veh, struct SpriteGroup *spritegroup, const Vehicle *veh, void *callback); /* XXX data pointer used as function pointer */
void *callback); /* XXX data pointer used as function pointer */
static struct RealSpriteGroup * static struct RealSpriteGroup* ResolveVehicleSpriteGroup(
ResolveVehicleSpriteGroup(struct SpriteGroup *spritegroup, struct Vehicle *veh, struct SpriteGroup *spritegroup, const Vehicle *veh, resolve_callback callback)
resolve_callback callback)
{ {
//debug("spgt %d", spritegroup->type); //debug("spgt %d", spritegroup->type);
switch (spritegroup->type) { switch (spritegroup->type) {
@ -460,7 +458,7 @@ ResolveVehicleSpriteGroup(struct SpriteGroup *spritegroup, struct Vehicle *veh,
} }
} }
static struct SpriteGroup *GetVehicleSpriteGroup(byte engine, Vehicle *v) static struct SpriteGroup *GetVehicleSpriteGroup(byte engine, const Vehicle *v)
{ {
struct SpriteGroup *group; struct SpriteGroup *group;
uint16 overriding_engine = -1; uint16 overriding_engine = -1;
@ -483,7 +481,7 @@ static struct SpriteGroup *GetVehicleSpriteGroup(byte engine, Vehicle *v)
return group; return group;
} }
int GetCustomEngineSprite(byte engine, Vehicle *v, byte direction) int GetCustomEngineSprite(byte engine, const Vehicle *v, byte direction)
{ {
struct SpriteGroup *group; struct SpriteGroup *group;
struct RealSpriteGroup *rsg; struct RealSpriteGroup *rsg;

View File

@ -99,7 +99,7 @@ extern byte _engine_original_sprites[256];
void SetWagonOverrideSprites(byte engine, struct SpriteGroup *group, byte *train_id, int trains); void SetWagonOverrideSprites(byte engine, struct SpriteGroup *group, byte *train_id, int trains);
void SetCustomEngineSprites(byte engine, byte cargo, struct SpriteGroup *group); void SetCustomEngineSprites(byte engine, byte cargo, struct SpriteGroup *group);
// loaded is in percents, overriding_engine 0xffff is none // loaded is in percents, overriding_engine 0xffff is none
int GetCustomEngineSprite(byte engine, Vehicle *v, byte direction); int GetCustomEngineSprite(byte engine, const Vehicle *v, byte direction);
#define GetCustomVehicleSprite(v, direction) GetCustomEngineSprite(v->engine_type, v, direction) #define GetCustomVehicleSprite(v, direction) GetCustomEngineSprite(v->engine_type, v, direction)
#define GetCustomVehicleIcon(et, direction) GetCustomEngineSprite(et, NULL, direction) #define GetCustomVehicleIcon(et, direction) GetCustomEngineSprite(et, NULL, direction)

View File

@ -281,7 +281,7 @@ void UpdateTrainAcceleration(Vehicle *v)
v->acceleration = clamp(power / weight * 4, 1, 255); v->acceleration = clamp(power / weight * 4, 1, 255);
} }
int GetTrainImage(Vehicle *v, byte direction) int GetTrainImage(const Vehicle *v, byte direction)
{ {
int img = v->spritenum; int img = v->spritenum;
int base; int base;

View File

@ -365,29 +365,28 @@ Vehicle *GetLastVehicleInChain(Vehicle *v)
return v; return v;
} }
Vehicle *GetPrevVehicleInChain(Vehicle *v) Vehicle *GetPrevVehicleInChain(const Vehicle *v)
{ {
Vehicle *org = v; const Vehicle *org = v;
FOR_ALL_VEHICLES(v) { FOR_ALL_VEHICLES(v) {
if (v->type == VEH_Train && org == v->next) if (v->type == VEH_Train && org == v->next)
return v; return (Vehicle*)v;
} }
return NULL; return NULL;
} }
Vehicle *GetFirstVehicleInChain(Vehicle *v) Vehicle *GetFirstVehicleInChain(const Vehicle *v)
{ {
Vehicle *u;
while (true) { while (true) {
u = v; const Vehicle* u = v;
v = GetPrevVehicleInChain(v); v = GetPrevVehicleInChain(v);
/* If there is no such vehicle, /* If there is no such vehicle,
'v' == NULL and so 'u' is the first vehicle in chain */ 'v' == NULL and so 'u' is the first vehicle in chain */
if (v == NULL) if (v == NULL)
return u; return (Vehicle*)u;
} }
} }

View File

@ -262,8 +262,8 @@ void UpdateVehiclePosHash(Vehicle *v, int x, int y);
void VehiclePositionChanged(Vehicle *v); void VehiclePositionChanged(Vehicle *v);
void AfterLoadVehicles(void); void AfterLoadVehicles(void);
Vehicle *GetLastVehicleInChain(Vehicle *v); Vehicle *GetLastVehicleInChain(Vehicle *v);
Vehicle *GetPrevVehicleInChain(Vehicle *v); Vehicle *GetPrevVehicleInChain(const Vehicle *v);
Vehicle *GetFirstVehicleInChain(Vehicle *v); Vehicle *GetFirstVehicleInChain(const Vehicle *v);
int CountVehiclesInChain(Vehicle *v); int CountVehiclesInChain(Vehicle *v);
void DeleteVehicle(Vehicle *v); void DeleteVehicle(Vehicle *v);
void DeleteVehicleChain(Vehicle *v); void DeleteVehicleChain(Vehicle *v);
@ -285,7 +285,7 @@ void TrainEnterDepot(Vehicle *v, uint tile);
void AddRearEngineToMultiheadedTrain(Vehicle *v, Vehicle *u, bool building) ; void AddRearEngineToMultiheadedTrain(Vehicle *v, Vehicle *u, bool building) ;
/* train_cmd.h */ /* train_cmd.h */
int GetTrainImage(Vehicle *v, byte direction); int GetTrainImage(const Vehicle *v, byte direction);
int GetAircraftImage(Vehicle *v, byte direction); int GetAircraftImage(Vehicle *v, byte direction);
int GetRoadVehImage(Vehicle *v, byte direction); int GetRoadVehImage(Vehicle *v, byte direction);
int GetShipImage(Vehicle *v, byte direction); int GetShipImage(Vehicle *v, byte direction);