OpenTTD Source: CYapfDestinationTileOrStationRailT< Types > Class Template Reference

OpenTTD Source 15.0-beta1

Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
CYapfDestinationTileOrStationRailT< Types > Class Template Reference
Inheritance diagram for CYapfDestinationTileOrStationRailT< Types >:

## 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
Tpf & | Yapf ()
| 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

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

Definition at line 170 of file yapf_destrail.hpp.

References CYapfDestinationTileOrStationRailT< Types >::PfDetectDestination().

Referenced by CYapfDestinationTileOrStationRailT< Types >::PfCalcEstimate(), and CYapfDestinationTileOrStationRailT< Types >::PfDetectDestination().

## ◆ 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:

- src/pathfinder/yapf/yapf_destrail.hpp