|
OpenTTD
|
Station data structure. More...
#include <station_base.h>
Public Member Functions | |
| RoadStop * | GetPrimaryRoadStop (RoadStopType type) const |
| RoadStop * | GetPrimaryRoadStop (const struct RoadVehicle *v) const |
| Station (TileIndex tile=INVALID_TILE) | |
| ~Station () | |
| Clean up a station by clearing vehicle orders, invalidating windows and removing link stats. More... | |
| void | AddFacility (StationFacility new_facility_bit, TileIndex facil_xy) |
| Called when new facility is built on the station. More... | |
| void | MarkTilesDirty (bool cargo_change) const |
| Marks the tiles of the station as dirty. | |
| void | UpdateVirtCoord () |
| Update the virtual coords needed to draw the station sign. | |
| uint | GetPlatformLength (TileIndex tile, DiagDirection dir) const |
| Determines the REMAINING length of a platform, starting at (and including) the given tile. More... | |
| uint | GetPlatformLength (TileIndex tile) const |
| Obtain the length of a platform. More... | |
| void | RecomputeIndustriesNear () |
| Recomputes Station::industries_near, list of industries possibly accepting cargo in station's catchment radius. | |
| uint | GetCatchmentRadius () const |
| Determines the catchment radius of the station. More... | |
| Rect | GetCatchmentRect () const |
| Determines catchment rectangle of this station. More... | |
| bool | TileBelongsToRailStation (TileIndex tile) const |
| Check whether a specific tile belongs to this station. More... | |
| bool | TileBelongsToAirport (TileIndex tile) const |
| uint32 | GetNewGRFVariable (const ResolverObject &object, byte variable, byte parameter, bool *available) const |
| void | GetTileArea (TileArea *ta, StationType type) const |
| Get the tile area for a given station type. More... | |
Public Member Functions inherited from SpecializedStation< Station, false > | |
| SpecializedStation (TileIndex tile) | |
| Set station type correctly. More... | |
Public Member Functions inherited from BaseStation | |
| BaseStation (TileIndex tile) | |
| Initialize the base station. More... | |
| virtual uint32 | GetNewGRFVariable (const struct ResolverObject &object, byte variable, byte parameter, bool *available) const =0 |
| Helper function to get a NewGRF variable that isn't implemented by the base class. More... | |
| bool | IsInUse () const |
| Check whether the base station currently is in use; in use means that it is not scheduled for deletion and that it still has some facilities left. More... | |
Public Member Functions inherited from Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_station_pool > | |
| void * | operator new (size_t size) |
| Allocates space for new Titem. More... | |
| void * | operator new (size_t size, size_t index) |
| Allocates space for new Titem with given index. More... | |
| void * | operator new (size_t size, void *ptr) |
| Allocates space for new Titem at given memory address. More... | |
| void | operator delete (void *p) |
| Marks Titem as free. More... | |
Static Public Member Functions | |
| static void | RecomputeIndustriesNearForAll () |
| Recomputes Station::industries_near for all stations. | |
Static Public Member Functions inherited from SpecializedStation< Station, false > | |
| static bool | IsExpected (const BaseStation *st) |
| Helper for checking whether the given station is of this type. More... | |
| static bool | IsValidID (size_t index) |
| Tests whether given index is a valid index for station of this type. More... | |
| static Station * | Get (size_t index) |
| Gets station with given index. More... | |
| static Station * | GetIfValid (size_t index) |
| Returns station if the index is a valid index for this station type. More... | |
| static Station * | GetByTile (TileIndex tile) |
| Get the station belonging to a specific tile. More... | |
| static Station * | From (BaseStation *st) |
| Converts a BaseStation to SpecializedStation with type checking. More... | |
| static const Station * | From (const BaseStation *st) |
| Converts a const BaseStation to const SpecializedStation with type checking. More... | |
Static Public Member Functions inherited from BaseStation | |
| static BaseStation * | GetByTile (TileIndex tile) |
| Get the base station belonging to a specific tile. More... | |
| static void | PostDestructor (size_t index) |
| Invalidating of the JoinStation window has to be done after removing item from the pool. More... | |
Static Public Member Functions inherited from Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_station_pool > | |
| static bool | CanAllocateItem (size_t n=1) |
| Helper functions so we can use PoolItem::Function() instead of _poolitem_pool.Function() More... | |
| static bool | CleaningPool () |
| Returns current state of pool cleaning - yes or no. More... | |
| static bool | IsValidID (size_t index) |
| Tests whether given index can be used to get valid (non-NULL) Titem. More... | |
| static Titem * | Get (size_t index) |
| Returns Titem with given index. More... | |
| static Titem * | GetIfValid (size_t index) |
| Returns Titem with given index. More... | |
| static size_t | GetPoolSize () |
| Returns first unused index. More... | |
| static size_t | GetNumItems () |
| Returns number of valid items in the pool. More... | |
| static void | PostDestructor (size_t index) |
| Dummy function called after destructor of each member. More... | |
Data Fields | |
| RoadStop * | bus_stops |
| All the road stops. | |
| TileArea | bus_station |
| Tile area the bus 'station' part covers. | |
| RoadStop * | truck_stops |
| All the truck stops. | |
| TileArea | truck_station |
| Tile area the truck 'station' part covers. | |
| Airport | airport |
| Tile area the airport covers. | |
| TileIndex | dock_tile |
| The location of the dock. | |
| IndustryType | indtype |
| Industry type to get the name from. | |
| StationHadVehicleOfTypeByte | had_vehicle_of_type |
| byte | time_since_load |
| byte | time_since_unload |
| byte | last_vehicle_type |
| std::list< Vehicle * > | loading_vehicles |
| GoodsEntry | goods [NUM_CARGO] |
| Goods at this station. | |
| uint32 | always_accepted |
| Bitmask of always accepted cargo types (by houses, HQs, industry tiles when industry doesn't accept cargo) | |
| IndustryVector | industries_near |
| Cached list of industries near the station that can accept cargo,. More... | |
Data Fields inherited from BaseStation | |
| TileIndex | xy |
| Base tile of the station. | |
| ViewportSign | sign |
| NOSAVE: Dimensions of sign. | |
| byte | delete_ctr |
| Delete counter. If greater than 0 then it is decremented until it reaches 0; the waypoint is then is deleted. | |
| char * | name |
| Custom name. | |
| StringID | string_id |
| Default name (town area) of station. | |
| Town * | town |
| The town this station is associated with. | |
| OwnerByte | owner |
| The owner of this station. | |
| StationFacilityByte | facilities |
| The facilities that this station has. | |
| uint8 | num_specs |
| Number of specs in the speclist. | |
| StationSpecList * | speclist |
| List of station specs of this station. | |
| Date | build_date |
| Date of construction. | |
| uint16 | random_bits |
| Random bits assigned to this station. | |
| byte | waiting_triggers |
| Waiting triggers (NewGRF) for this station. | |
| uint8 | cached_anim_triggers |
| NOSAVE: Combined animation trigger bitmask, used to determine if trigger processing should happen. | |
| uint32 | cached_cargo_triggers |
| NOSAVE: Combined cargo trigger bitmask. | |
| TileArea | train_station |
| Tile area the train 'station' part covers. | |
| StationRect | rect |
| NOSAVE: Station spread out rectangle maintained by StationRect::xxx() functions. | |
Data Fields inherited from Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_station_pool > | |
| Tindex | index |
| Index of this pool item. | |
Additional Inherited Members | |
Static Public Attributes inherited from SpecializedStation< Station, false > | |
| static const StationFacility | EXPECTED_FACIL |
| Specialized type. | |
Station data structure.
Definition at line 446 of file station_base.h.
| Station::~Station | ( | ) |
Clean up a station by clearing vehicle orders, invalidating windows and removing link stats.
Aircraft-Hangar orders need special treatment here, as the hangars are actually part of a station (tiletype is STATION), but the order type is OT_GOTO_DEPOT.
Definition at line 76 of file station.cpp.
References FOR_ALL_AIRCRAFT, Aircraft::IsNormalAircraft(), NUM_CARGO, and Aircraft::targetairport.
| void Station::AddFacility | ( | StationFacility | new_facility_bit, |
| TileIndex | facil_xy | ||
| ) |
Called when new facility is built on the station.
If it is the first facility it initializes also 'xy' and 'random_bits' members
Definition at line 187 of file station.cpp.
References FACIL_NONE.
| uint Station::GetCatchmentRadius | ( | ) | const |
Determines the catchment radius of the station.
Definition at line 271 of file station.cpp.
References _settings_game, CA_BUS, CA_DOCK, CA_NONE, CA_TRAIN, CA_TRUCK, CA_UNMODIFIED, INVALID_TILE, StationSettings::modified_catchment, and GameSettings::station.
Referenced by UpdateStationAcceptance().
| Rect Station::GetCatchmentRect | ( | ) | const |
Determines catchment rectangle of this station.
Definition at line 294 of file station.cpp.
Referenced by TriggerWatchedCargoCallbacks().
|
virtual |
Determines the REMAINING length of a platform, starting at (and including) the given tile.
| tile | the tile from which to start searching. Must be a rail station tile |
| dir | The direction in which to search. |
Implements BaseStation.
Definition at line 252 of file station.cpp.
Referenced by GetTrainStopLocation(), NPFSaveTargetData(), and UpdateLoadUnloadTicks().
|
virtual |
Obtain the length of a platform.
| tile | A tile that contains the platform in question |
Implements BaseStation.
Definition at line 230 of file station.cpp.
|
virtual |
Get the tile area for a given station type.
| ta | tile area to fill. |
| type | the type of the area |
Implements BaseStation.
Definition at line 380 of file station_cmd.cpp.
|
inlinevirtual |
Check whether a specific tile belongs to this station.
| tile | the tile to check |
Implements BaseStation.
Definition at line 494 of file station_base.h.
References GetStationIndex(), IsAirportTile(), and IsRailStationTile().
| IndustryVector Station::industries_near |
Cached list of industries near the station that can accept cargo,.
Definition at line 475 of file station_base.h.
Referenced by AddCargoDelivery(), and DeliverGoodsToIndustry().
1.8.13