OpenTTD Source 20241224-master-gee860a5c8e
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.
 
- 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 Typedef Documentation

◆ Key

template<class Types >
typedef Node::Key CYapfDestinationTileOrStationRailT< Types >::Key

key to hash tables

Definition at line 118 of file yapf_destrail.hpp.

◆ Node

template<class Types >
typedef Types::NodeList::Item CYapfDestinationTileOrStationRailT< Types >::Node

this will be our node type

Definition at line 117 of file yapf_destrail.hpp.

◆ Tpf

template<class Types >
typedef Types::Tpf CYapfDestinationTileOrStationRailT< Types >::Tpf

the pathfinder class (derived from THIS class)

Definition at line 116 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.

◆ PfDetectDestination() [1/2]

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

◆ PfDetectDestination() [2/2]

template<class Types >
bool CYapfDestinationTileOrStationRailT< Types >::PfDetectDestination ( TileIndex  tile,
Trackdir  td 
)
inline

Called by YAPF to detect if node ends in the desired destination.

Definition at line 176 of file yapf_destrail.hpp.

References GetRailStationTrack(), GetStationIndex(), HasStationTileRail(), HasTrackdir(), IsRailDepotTile(), and TrackdirToTrack().

◆ SetDestination()

template<class Types >
void CYapfDestinationTileOrStationRailT< Types >::SetDestination ( const Train v)
inline

Definition at line 133 of file yapf_destrail.hpp.

◆ Yapf()

template<class Types >
Tpf & CYapfDestinationTileOrStationRailT< Types >::Yapf ( )
inlineprotected

to access inherited path finder

Definition at line 127 of file yapf_destrail.hpp.

Field Documentation

◆ any_depot

template<class Types >
bool CYapfDestinationTileOrStationRailT< Types >::any_depot
protected

Definition at line 124 of file yapf_destrail.hpp.

◆ dest_station_id

template<class Types >
StationID CYapfDestinationTileOrStationRailT< Types >::dest_station_id
protected

Definition at line 123 of file yapf_destrail.hpp.

◆ dest_tile

template<class Types >
TileIndex CYapfDestinationTileOrStationRailT< Types >::dest_tile
protected

Definition at line 121 of file yapf_destrail.hpp.

◆ dest_trackdirs

template<class Types >
TrackdirBits CYapfDestinationTileOrStationRailT< Types >::dest_trackdirs
protected

Definition at line 122 of file yapf_destrail.hpp.


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