OpenTTD Source 20241224-master-gf74b0cf984
|
Structure contains cached list of stations nearby. More...
#include <station_type.h>
Public Member Functions | |
StationFinder (const TileArea &area) | |
Constructs StationFinder. | |
const StationList & | GetStations () |
Run a tile loop to find stations around a tile, on demand. | |
Private Attributes | |
StationList | stations |
List of stations nearby. | |
Private Attributes inherited from OrthogonalTileArea | |
TileIndex | tile |
The base tile of the area. | |
uint16_t | w |
The width of the area. | |
uint16_t | h |
The height of the area. | |
Additional Inherited Members | |
Private Member Functions inherited from OrthogonalTileArea | |
OrthogonalTileArea (TileIndex tile=INVALID_TILE, uint16_t w=0, uint16_t h=0) | |
Construct this tile area with some set values. | |
OrthogonalTileArea (TileIndex start, TileIndex end) | |
Construct this tile area based on two points. | |
void | Add (TileIndex to_add) |
Add a single tile to a tile area; enlarge if needed. | |
void | Clear () |
Clears the 'tile area', i.e. | |
bool | Intersects (const OrthogonalTileArea &ta) const |
Does this tile area intersect with another? | |
bool | Contains (TileIndex tile) const |
Does this tile area contain a tile? | |
OrthogonalTileArea & | Expand (int rad) |
Expand a tile area by rad tiles in each direction, keeping within map bounds. | |
void | ClampToMap () |
Clamp the tile area to map borders. | |
TileIndex | GetCenterTile () const |
Get the center tile. | |
OrthogonalTileIterator | begin () const |
Returns an iterator to the beginning of the tile area. | |
OrthogonalTileIterator | end () const |
Returns an iterator to the end of the tile area. | |
Structure contains cached list of stations nearby.
The list is created upon first call to GetStations()
Definition at line 100 of file station_type.h.
|
inline |
Constructs StationFinder.
area | the area to search from |
Definition at line 107 of file station_type.h.
const StationList & StationFinder::GetStations | ( | ) |
Run a tile loop to find stations around a tile, on demand.
Cache the result for further requests
Definition at line 4354 of file station_cmd.cpp.
References ForAllStationsAroundTiles(), OrthogonalTileArea::h, INVALID_TILE, IsTileType(), MP_HOUSE, stations, and OrthogonalTileArea::w.
Referenced by HouseScopeResolver::GetVariable(), and TownGenerateCargo().
|
private |
List of stations nearby.
Definition at line 101 of file station_type.h.
Referenced by GetStations().