From d417827516505e27319ae4ab630161e404cc1a58 Mon Sep 17 00:00:00 2001 From: truelight Date: Sat, 26 Aug 2006 19:14:02 +0000 Subject: (svn r6151) -Codechange: DeleteStation/DeleteRoadStop removes a station/RoadStop from the pool -Codechange: DestroyStation/DestroyRoadStop is called by DeleteStation/DeleteRoadStop to remove all things where a station/RoadStop depends on. Last 2 changes to prepare for new pool system. Not pretty now, will be soon. --- station.h | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'station.h') diff --git a/station.h b/station.h index 36b7334e5..3c6bab008 100644 --- a/station.h +++ b/station.h @@ -184,6 +184,14 @@ static inline bool IsValidStationID(StationID index) return index < GetStationPoolSize() && IsValidStation(GetStation(index)); } +void DestroyStation(Station *st); + +static inline void DeleteStation(Station *st) +{ + DestroyStation(st); + st->xy = 0; +} + #define FOR_ALL_STATIONS_FROM(st, start) for (st = GetStation(start); st != NULL; st = (st->index + 1 < GetStationPoolSize()) ? GetStation(st->index + 1) : NULL) if (IsValidStation(st)) #define FOR_ALL_STATIONS(st) FOR_ALL_STATIONS_FROM(st, 0) @@ -216,6 +224,14 @@ static inline bool IsValidRoadStop(const RoadStop *rs) return rs->used; } +void DestroyRoadStop(RoadStop* rs); + +static inline void DeleteRoadStop(RoadStop *rs) +{ + DestroyRoadStop(rs); + rs->used = false; +} + #define FOR_ALL_ROADSTOPS_FROM(rs, start) for (rs = GetRoadStop(start); rs != NULL; rs = (rs->index + 1 < GetRoadStopPoolSize()) ? GetRoadStop(rs->index + 1) : NULL) if (IsValidRoadStop(rs)) #define FOR_ALL_ROADSTOPS(rs) FOR_ALL_ROADSTOPS_FROM(rs, 0) -- cgit v1.2.3-70-g09d2