OpenTTD
|
Representation of a waypoint. More...
#include <waypoint_base.h>
Public Member Functions | |
Waypoint (TileIndex tile=INVALID_TILE) | |
Create a waypoint at the given tile. | |
void | UpdateVirtCoord () |
Update the virtual coords needed to draw the waypoint sign. | |
bool | TileBelongsToRailStation (TileIndex tile) const |
Check whether a specific tile belongs to this station. | |
uint32 | GetNewGRFVariable (const struct ResolverObject &object, byte variable, byte parameter, bool *available) const |
Helper function to get a NewGRF variable that isn't implemented by the base class. | |
void | GetTileArea (TileArea *ta, StationType type) const |
Get the tile area for a given station type. | |
uint | GetPlatformLength (TileIndex tile, DiagDirection dir) const |
Determines the REMAINING length of a platform, starting at (and including) the given tile. | |
uint | GetPlatformLength (TileIndex tile) const |
Obtain the length of a platform. | |
bool | IsSingleTile () const |
Is this a single tile waypoint? | |
bool | IsOfType (const Waypoint *wp) const |
Is the "type" of waypoint the same as the given waypoint, i.e. | |
![]() | |
SpecializedStation (TileIndex tile) | |
Set station type correctly. | |
![]() | |
BaseStation (TileIndex tile) | |
Initialize the base station. | |
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. | |
![]() | |
void * | operator new (size_t size) |
Allocates space for new Titem. | |
void * | operator new (size_t size, size_t index) |
Allocates space for new Titem with given index. | |
void * | operator new (size_t size, void *ptr) |
Allocates space for new Titem at given memory address. | |
void | operator delete (void *p) |
Marks Titem as free. |
Data Fields | |
uint16 | town_cn |
The N-1th waypoint for this town (consecutive number) |
Additional Inherited Members | |
![]() | |
static bool | IsExpected (const BaseStation *st) |
Helper for checking whether the given station is of this type. | |
static bool | IsValidID (size_t index) |
Tests whether given index is a valid index for station of this type. | |
static Waypoint * | Get (size_t index) |
Gets station with given index. | |
static Waypoint * | GetIfValid (size_t index) |
Returns station if the index is a valid index for this station type. | |
static Waypoint * | GetByTile (TileIndex tile) |
Get the station belonging to a specific tile. | |
static Waypoint * | From (BaseStation *st) |
Converts a BaseStation to SpecializedStation with type checking. | |
static const Waypoint * | From (const BaseStation *st) |
Converts a const BaseStation to const SpecializedStation with type checking. | |
![]() | |
static const StationFacility | EXPECTED_FACIL |
Specialized type. |
Representation of a waypoint.
Definition at line 18 of file waypoint_base.h.
|
inline |
Create a waypoint at the given tile.
tile | The location of the waypoint. |
Definition at line 25 of file waypoint_base.h.
|
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 |
Implements BaseStation.
Definition at line 462 of file newgrf_station.cpp.
References DEBUG, GB(), and HVOT_WAYPOINT.
|
inlinevirtual |
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 39 of file waypoint_base.h.
|
inlinevirtual |
Obtain the length of a platform.
tile | A tile that contains the platform in question |
Implements BaseStation.
Definition at line 44 of file waypoint_base.h.
|
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 35 of file waypoint.cpp.
References OrthogonalTileArea::h, OrthogonalTileArea::tile, BaseStation::train_station, OrthogonalTileArea::w, and BaseStation::xy.
|
inline |
Is the "type" of waypoint the same as the given waypoint, i.e.
are both a rail waypoint or are both a buoy?
wp | The waypoint to compare to. |
Definition at line 64 of file waypoint_base.h.
References BaseStation::string_id.
|
inline |
Is this a single tile waypoint?
Definition at line 53 of file waypoint_base.h.
References FACIL_TRAIN, BaseStation::facilities, OrthogonalTileArea::h, BaseStation::train_station, and OrthogonalTileArea::w.
|
inlinevirtual |
Check whether a specific tile belongs to this station.
tile | the tile to check |
Implements BaseStation.
Definition at line 30 of file waypoint_base.h.
References GetStationIndex(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_station_pool >::index, and IsRailWaypointTile().