rubidium@8785: /* $Id$ */ rubidium@8785: rubidium@8785: /** @file station_func.h Functions related to stations. */ rubidium@8785: rubidium@8785: #ifndef STATION_FUNC_H rubidium@8785: #define STATION_FUNC_H rubidium@8785: rubidium@8785: #include "station_type.h" rubidium@8785: #include "sprite.h" rubidium@10235: #include "oldpool.h" rubidium@8787: #include "rail_type.h" rubidium@8785: #include "road_type.h" rubidium@8785: #include "tile_type.h" rubidium@8785: #include "cargo_type.h" rubidium@8785: #include "vehicle_type.h" rubidium@8785: #include rubidium@8785: rubidium@10207: void ModifyStationRatingAround(TileIndex tile, Owner owner, int amount, uint radius); rubidium@8785: rubidium@8785: /** A set of stations (\c const \c Station* ) */ rubidium@10235: typedef std::set > StationSet; rubidium@8785: frosch@10353: StationSet FindStationsAroundTiles(TileIndex tile, int w_prod, int h_prod); rubidium@8785: rubidium@8785: void ShowStationViewWindow(StationID station); rubidium@8785: void UpdateAllStationVirtCoord(); rubidium@8785: rubidium@8785: void AfterLoadStations(); rubidium@8785: void GetProductionAroundTiles(AcceptedCargo produced, TileIndex tile, int w, int h, int rad); rubidium@8785: void GetAcceptanceAroundTiles(AcceptedCargo accepts, TileIndex tile, int w, int h, int rad); rubidium@8785: rubidium@8785: const DrawTileSprites *GetStationTileLayout(StationType st, byte gfx); rubidium@8785: void StationPickerDrawSprite(int x, int y, StationType st, RailType railtype, RoadType roadtype, int image); rubidium@8785: rubidium@10207: bool HasStationInUse(StationID station, CompanyID company); rubidium@8785: rubidium@8785: RoadStop * GetRoadStopByTile(TileIndex tile, RoadStopType type); rubidium@8785: uint GetNumRoadStops(const Station* st, RoadStopType type); rubidium@8785: RoadStop * AllocateRoadStop(); rubidium@8785: rubidium@8785: void ClearSlot(Vehicle *v); rubidium@8785: rubidium@8785: void DeleteOilRig(TileIndex t); rubidium@8785: rubidium@8787: /* Check if a rail station tile is traversable. */ rubidium@8787: bool IsStationTileBlocked(TileIndex tile); rubidium@8787: rubidium@8787: /* Check if a rail station tile is electrifiable. */ rubidium@8787: bool IsStationTileElectrifiable(TileIndex tile); rubidium@8787: belugas@9334: void UpdateAirportsNoise(); rubidium@8787: rubidium@8785: #endif /* STATION_FUNC_H */