OpenTTD Source  20241109-master-g5e4f8db7d6
CYapfFollowRailT< Types > Class Template Reference
Inheritance diagram for CYapfFollowRailT< Types >:
CYapfReserveTrack< Types >

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
 
typedef Node::Key Key
 key to hash tables
 
- Public Types inherited from CYapfReserveTrack< 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 PfFollowNode (Node &old_node)
 Called by YAPF to move from the given node to the next tile. More...
 
char TransportTypeChar () const
 return debug report character to identify the transportation type
 
Trackdir ChooseRailTrack (const Train *v, TileIndex, DiagDirection, TrackBits, bool &path_found, bool reserve_track, PBSTileInfo *target, TileIndex *dest)
 
bool CheckReverseTrain (const Train *v, TileIndex t1, Trackdir td1, TileIndex t2, Trackdir td2, int reverse_penalty)
 
- Public Member Functions inherited from CYapfReserveTrack< Types >
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.
 

Static Public Member Functions

static Trackdir stChooseRailTrack (const Train *v, TileIndex tile, DiagDirection enterdir, TrackBits tracks, bool &path_found, bool reserve_track, PBSTileInfo *target, TileIndex *dest)
 
static bool stCheckReverseTrain (const Train *v, TileIndex t1, Trackdir td1, TileIndex t2, Trackdir td2, int reverse_penalty)
 

Protected Member Functions

TpfYapf ()
 to access inherited path finder
 
- Protected Member Functions inherited from CYapfReserveTrack< Types >
TpfYapf ()
 to access inherited pathfinder
 

Detailed Description

template<class Types>
class CYapfFollowRailT< Types >

Definition at line 376 of file yapf_rail.cpp.

Member Function Documentation

◆ PfFollowNode()

template<class Types >
void CYapfFollowRailT< Types >::PfFollowNode ( Node old_node)
inline

Called by YAPF to move from the given node to the next tile.

For each reachable trackdir on the new tile creates new node, initializes it and adds it to the open list by calling Yapf().AddNewNode(n)

Definition at line 397 of file yapf_rail.cpp.


The documentation for this class was generated from the following file: