|
OpenTTD Source
1.10.0-RC1
|
Base class for all station-ish types. More...
#include <base_station_base.h>
Public Member Functions | |
| BaseStation (TileIndex tile) | |
| Initialize the base station. More... | |
| virtual bool | TileBelongsToRailStation (TileIndex tile) const =0 |
| Check whether a specific tile belongs to this 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... | |
| virtual void | UpdateVirtCoord ()=0 |
| Update the coordinated of the sign (as shown in the viewport). | |
| const char * | GetCachedName () const |
| virtual void | MoveSign (TileIndex new_xy) |
| virtual void | GetTileArea (TileArea *ta, StationType type) const =0 |
| Get the tile area for a given station type. More... | |
| virtual uint | GetPlatformLength (TileIndex tile) const =0 |
| Obtain the length of a platform. More... | |
| virtual uint | GetPlatformLength (TileIndex tile, DiagDirection dir) const =0 |
| Determines the REMAINING length of a platform, starting at (and including) the given tile. 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 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-nullptr) 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... | |
| static Pool::IterateWrapper< Titem > | Iterate (size_t from=0) |
| Returns an iterable ensemble of all valid Titem. More... | |
Data Fields | |
| TileIndex | xy |
| Base tile of the station. | |
| TrackedViewportSign | 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. | |
| std::string | cached_name |
| NOSAVE: Cache of the resolved name of the station, if not using a custom name. | |
| Town * | town |
| The town this station is associated with. | |
| Owner | owner |
| The owner of this station. | |
| StationFacility | 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. | |
| CargoTypes | 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. | |
Private Member Functions | |
| void | FillCachedName () const |
Additional Inherited Members | |
Public Types inherited from Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_station_pool > | |
| typedef struct Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero > | Pool |
| Type of the pool this item is going to be part of. | |
Base class for all station-ish types.
Definition at line 52 of file base_station_base.h.
|
inline |
Initialize the base station.
| tile | The location of the station sign |
Definition at line 82 of file base_station_base.h.
|
inlinestatic |
Get the base station belonging to a specific tile.
| tile | The tile to get the base station from. |
Definition at line 155 of file base_station_base.h.
References Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_station_pool >::Get(), and GetStationIndex().
|
pure virtual |
Helper function to get a NewGRF variable that isn't implemented by the base class.
| object | the resolver object related to this query |
| variable | that is queried |
| parameter | parameter for that variable |
| available | will return false if ever the variable asked for does not exist |
Implemented in Waypoint.
|
pure virtual |
|
pure virtual |
|
pure virtual |
Get the tile area for a given station type.
| ta | tile area to fill. |
| type | the type of the area |
Implemented in Station, and Waypoint.
Referenced by CalcClosestStationTile().
|
inline |
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.
Definition at line 166 of file base_station_base.h.
References FACIL_WAYPOINT.
Referenced by DeleteStationIfEmpty(), WaypointWindow::GetCenterTile(), GetClosestDeletedStation(), WaypointWindow::OnInvalidateData(), StationHandleBigTick(), and UpdateStationAcceptance().
|
static |
Invalidating of the JoinStation window has to be done after removing item from the pool.
| index | index of deleted item |
Definition at line 171 of file station.cpp.
References RoadVehicle::compatible_roadtypes, Vehicle::HasArticulatedPart(), HasTileAnyRoadType(), InvalidateWindowData(), RoadVehicle::IsBus(), IsStandardRoadStopTile(), RoadStop::next, ROADSTOP_BUS, ROADSTOP_TRUCK, WC_SELECT_STATION, and RoadStop::xy.
|
pure virtual |