| OpenTTD
    | 
 
  
 | Public Types | |
| typedef Types::Tpf | Tpf | 
| the pathfinder class (derived from THIS class) | |
| typedef Types::TrackFollower | TrackFollower | 
| typedef Types::NodeList::Titem | Node | 
| this will be our node type | |
| Public Member Functions | |
| void | SetReservationTarget (Node *node, TileIndex tile, Trackdir td) | 
| Set the target to where the reservation should be extended. | |
| void | FindSafePositionOnNode (Node *node) | 
| Check the node for a possible reservation target. | |
| bool | TryReservePath (PBSTileInfo *target, TileIndex origin) | 
| Try to reserve the path till the reservation target. | |
| Protected Member Functions | |
| Tpf & | Yapf () | 
| to access inherited pathfinder | |
| Private Member Functions | |
| bool | FindSafePositionProc (TileIndex tile, Trackdir td) | 
| bool | ReserveRailStationPlatform (TileIndex &tile, DiagDirection dir) | 
| Reserve a railway platform. | |
| bool | ReserveSingleTrack (TileIndex tile, Trackdir td) | 
| Try to reserve a single track/platform. | |
| bool | UnreserveSingleTrack (TileIndex tile, Trackdir td) | 
| Unreserve a single track/platform. | |
| Private Attributes | |
| TileIndex | m_res_dest | 
| The reservation target tile. | |
| Trackdir | m_res_dest_td | 
| The reservation target trackdir. | |
| Node * | m_res_node | 
| The reservation target node. | |
| TileIndex | m_res_fail_tile | 
| The tile where the reservation failed. | |
| Trackdir | m_res_fail_td | 
| The trackdir where the reservation failed. | |
| TileIndex | m_origin_tile | 
| Tile our reservation will originate from. | |
Definition at line 40 of file yapf_rail.cpp.
| 
 | inline | 
Check the node for a possible reservation target.
Definition at line 137 of file yapf_rail.cpp.
References CYapfReserveTrack< Types >::m_res_node, and CYapfReserveTrack< Types >::Yapf().
| 
 | inlineprivate | 
Reserve a railway platform.
Tile contains the failed tile on abort.
Definition at line 73 of file yapf_rail.cpp.
References HasStationReservation(), IsCompatibleTrainStationTile(), CYapfReserveTrack< Types >::m_origin_tile, MarkTileDirtyByTile(), SetRailStationReservation(), SRT_PATH_RESERVATION, TILE_ADD, TileOffsByDiagDir(), and TriggerStationRandomisation().
Referenced by CYapfReserveTrack< Types >::ReserveSingleTrack().
| 
 | inlineprivate | 
Try to reserve a single track/platform.
Definition at line 91 of file yapf_rail.cpp.
References IsRailStationTile(), CYapfReserveTrack< Types >::m_res_dest, CYapfReserveTrack< Types >::m_res_dest_td, CYapfReserveTrack< Types >::m_res_fail_td, CYapfReserveTrack< Types >::m_res_fail_tile, CYapfReserveTrack< Types >::ReserveRailStationPlatform(), ReverseTrackdir(), TrackdirToExitdir(), TrackdirToTrack(), and TryReserveRailTrack().
| 
 | inline | 
Set the target to where the reservation should be extended.
Definition at line 129 of file yapf_rail.cpp.
References CYapfReserveTrack< Types >::m_res_dest, CYapfReserveTrack< Types >::m_res_dest_td, and CYapfReserveTrack< Types >::m_res_node.
| 
 | inline | 
Try to reserve the path till the reservation target.
Definition at line 150 of file yapf_rail.cpp.
References INVALID_TILE, INVALID_TRACK, IsWaitingPositionFree(), CYapfReserveTrack< Types >::m_origin_tile, CYapfReserveTrack< Types >::m_res_dest, CYapfReserveTrack< Types >::m_res_dest_td, CYapfReserveTrack< Types >::m_res_fail_tile, CYapfReserveTrack< Types >::m_res_node, PBSTileInfo::okay, PBSTileInfo::tile, PBSTileInfo::trackdir, CYapfReserveTrack< Types >::Yapf(), and YapfNotifyTrackLayoutChange().
| 
 | inlineprivate | 
Unreserve a single track/platform.
Stops when the previous failer is reached.
Definition at line 112 of file yapf_rail.cpp.
References IsCompatibleTrainStationTile(), IsRailStationTile(), CYapfReserveTrack< Types >::m_res_dest, CYapfReserveTrack< Types >::m_res_dest_td, CYapfReserveTrack< Types >::m_res_fail_td, CYapfReserveTrack< Types >::m_res_fail_tile, ReverseTrackdir(), SetRailStationReservation(), TILE_ADD, TileOffsByDiagDir(), TrackdirToExitdir(), TrackdirToTrack(), and UnreserveRailTrack().
 1.8.1.2
 1.8.1.2