OpenTTD Source  20241121-master-g67a0fccfad
CYapfDestinationTileOrStationRailT< Types > Class Template Reference
Inheritance diagram for CYapfDestinationTileOrStationRailT< Types >:
CYapfDestinationRailBase

Public Types

typedef Types::Tpf Tpf
 the pathfinder class (derived from THIS class)
 
typedef Types::NodeList::Item Node
 this will be our node type
 
typedef Node::Key Key
 key to hash tables
 

Public Member Functions

void SetDestination (const Train *v)
 
bool PfDetectDestination (Node &n)
 Called by YAPF to detect if node ends in the desired destination.
 
bool PfDetectDestination (TileIndex tile, Trackdir td)
 Called by YAPF to detect if node ends in the desired destination.
 
bool PfCalcEstimate (Node &n)
 Called by YAPF to calculate cost estimate. More...
 
- Public Member Functions inherited from CYapfDestinationRailBase
void SetDestination (const Train *v, bool override_rail_type=false)
 
bool IsCompatibleRailType (RailType rt)
 
RailTypes GetCompatibleRailTypes () const
 

Protected Member Functions

TpfYapf ()
 to access inherited path finder
 

Protected Attributes

TileIndex dest_tile
 
TrackdirBits dest_trackdirs
 
StationID dest_station_id
 
bool any_depot
 
- Protected Attributes inherited from CYapfDestinationRailBase
RailTypes compatible_railtypes
 

Detailed Description

template<class Types>
class CYapfDestinationTileOrStationRailT< Types >

Definition at line 114 of file yapf_destrail.hpp.

Member Function Documentation

◆ PfCalcEstimate()

template<class Types >
bool CYapfDestinationTileOrStationRailT< Types >::PfCalcEstimate ( Node n)
inline

Called by YAPF to calculate cost estimate.

Calculates distance to the destination adds it to the actual cost from origin and stores the sum to the Node::estimate

Definition at line 195 of file yapf_destrail.hpp.

References abs(), CYapfDestinationTileOrStationRailT< Types >::PfDetectDestination(), TileX(), TileY(), TrackdirToExitdir(), YAPF_TILE_CORNER_LENGTH, and YAPF_TILE_LENGTH.


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