OpenTTD
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
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::Titem 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 m_destTile
TrackdirBits m_destTrackdirs
StationID m_dest_station_id
- Protected Attributes inherited from CYapfDestinationRailBase
RailTypes m_compatible_railtypes

Detailed Description

template<class Types>
class CYapfDestinationTileOrStationRailT< Types >

Definition at line 113 of file yapf_destrail.hpp.

Member Function Documentation

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::m_estimate

Definition at line 184 of file yapf_destrail.hpp.

References abs(), min(), 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: