(svn r8707) -Codechange: Turn IsValidStation into a method of Station

This commit is contained in:
celestar
2007-02-13 15:42:52 +00:00
parent 6f68ac46b8
commit 8eab3964b4
6 changed files with 18 additions and 17 deletions

View File

@@ -168,6 +168,7 @@ struct Station {
void MarkTilesDirty() const;
bool TileBelongsToRailStation(TileIndex tile) const;
bool IsBuoy() const;
bool IsValid() const;
protected:
static Station *AllocateRaw(void);
@@ -237,20 +238,12 @@ static inline uint GetNumStations(void)
return GetStationPoolSize();
}
/**
* Check if a station really exists.
*/
static inline bool IsValidStation(const Station *st)
{
return st->xy != 0;
}
static inline bool IsValidStationID(StationID index)
{
return index < GetStationPoolSize() && IsValidStation(GetStation(index));
return index < GetStationPoolSize() && GetStation(index)->IsValid();
}
#define FOR_ALL_STATIONS_FROM(st, start) for (st = GetStation(start); st != NULL; st = (st->index + 1U < GetStationPoolSize()) ? GetStation(st->index + 1U) : NULL) if (IsValidStation(st))
#define FOR_ALL_STATIONS_FROM(st, start) for (st = GetStation(start); st != NULL; st = (st->index + 1U < GetStationPoolSize()) ? GetStation(st->index + 1U) : NULL) if (st->IsValid())
#define FOR_ALL_STATIONS(st) FOR_ALL_STATIONS_FROM(st, 0)