OpenTTD: CYapfAnySafeTileRail1 Struct Reference

OpenTTD

- Main Page
- Related Pages
- Modules
- Namespaces
- Data Structures
- Files

- Data Structures
- Class Hierarchy
- Data Fields

CYapfAnySafeTileRail1 Struct Reference
Inheritance diagram for CYapfAnySafeTileRail1:

## Additional Inherited Members
Public Types inherited from CYapfBaseT< Types >
typedef Types::Tpf | Tpf
| the pathfinder class (derived from THIS class)
typedef Types::TrackFollower | TrackFollower
typedef Types::NodeList | NodeList
| our node list
typedef Types::VehicleType | VehicleType
| the type of vehicle
typedef NodeList::Titem | Node
| this will be our node type
typedef Node::Key | Key
| key to hash tables
Public Types inherited from CYapfCostRailT< 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
typedef Node::CachedData | CachedData
Public Types inherited from CYapfSegmentCostCacheGlobalT< Types >
typedef CYapfSegmentCostCacheLocalT < Types > | Tlocal
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
typedef Node::CachedData | CachedData
typedef CachedData::Key | CacheKey
typedef CSegmentCostCacheT < CachedData > | Cache
Public Types inherited from CYapfOriginTileTwoWayT< 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 Types inherited from CYapfDestinationAnySafeTileRailT< 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
typedef Types::TrackFollower | TrackFollower
| TrackFollower. Need to typedef for gcc 2.95.
Public Types inherited from CYapfFollowAnySafeTileRailT< 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 Member Functions inherited from CYapfBaseT< Types >
| CYapfBaseT ()
| default constructor
| ~CYapfBaseT ()
| default destructor
const YAPFSettings & | PfGetSettings () const
| return current settings (can be custom - company based - but later)
bool | FindPath (const VehicleType *v)
| Main pathfinder routine:
Node * | GetBestNode ()
| If path was found return the best node that has reached the destination.
Node & | CreateNewNode ()
| Calls NodeList::CreateNewNode() - allocates new node that can be filled and used as argument for AddStartupNode() or AddNewNode()
void | AddStartupNode (Node &n)
| Add new node (created by CreateNewNode and filled with data) into open list.
void | AddMultipleNodes (Node *parent, const TrackFollower &tf)
| add multiple nodes - direct children of the given node
void | PruneIntermediateNodeBranch ()
| In some cases an intermediate node branch should be pruned.
void | AddNewNode (Node &n, const TrackFollower &tf)
| AddNewNode() - called by Tderived::PfFollowNode() for each child node.
const VehicleType * | GetVehicle () const
void | DumpBase (DumpTarget &dmp) const
Public Member Functions inherited from CYapfCostRailT< Types >
int | SlopeCost (TileIndex tile, Trackdir td)
int | CurveCost (Trackdir td1, Trackdir td2)
int | SwitchCost (TileIndex tile1, TileIndex tile2, DiagDirection exitdir)
int | OneTileCost (TileIndex &tile, Trackdir trackdir)
| Return one tile cost (base cost + level crossing penalty).
bool | IsAnyStationTileReserved (TileIndex tile, Trackdir trackdir, int skipped)
| Check for a reserved station platform.
int | ReservationCost (Node &n, TileIndex tile, Trackdir trackdir, int skipped)
| The cost for reserved tiles, including skipped ones.
int | SignalCost (Node &n, TileIndex tile, Trackdir trackdir)
int | PlatformLengthPenalty (int platform_length)
void | SetMaxCost (int max_cost)
bool | PfCalcCost (Node &n, const TrackFollower *tf)
| Called by YAPF to calculate the cost from the origin to the given node.
bool | CanUseGlobalCache (Node &n) const
void | ConnectNodeToCachedData (Node &n, CachedData &ci)
void | DisableCache (bool disable)
Public Member Functions inherited from CYapfSegmentCostCacheGlobalT< Types >
bool | PfNodeCacheFetch (Node &n)
| Called by YAPF to attach cached or local segment cost data to the given node.
void | PfNodeCacheFlush (Node &n)
| Called by YAPF to flush the cached segment cost data back into cache storage.
Public Member Functions inherited from CYapfOriginTileTwoWayT< Types >
void | SetOrigin (TileIndex tile, Trackdir td, TileIndex tiler=INVALID_TILE, Trackdir tdr=INVALID_TRACKDIR, int reverse_penalty=0, bool treat_first_red_two_way_signal_as_eol=true)
| set origin (tiles, trackdirs, etc.)
void | PfSetStartupNodes ()
| Called when YAPF needs to place origin nodes into open list.
bool | TreatFirstRedTwoWaySignalAsEOL ()
| return true if first two-way signal should be treated as dead end
Public Member Functions inherited from CYapfDestinationAnySafeTileRailT< Types >
Tpf & | Yapf ()
| to access inherited path finder
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 CYapfFollowAnySafeTileRailT< Types >
void | PfFollowNode (Node &old_node)
| Called by YAPF to move from the given node to the next tile.
char | TransportTypeChar () const
| Return debug report character to identify the transportation type.
bool | FindNearestSafeTile (const Train *v, TileIndex t1, Trackdir td, bool override_railtype, bool dont_reserve)
Static Public Member Functions inherited from CYapfCostBase
static bool | stSlopeCost (TileIndex tile, Trackdir td)
| Does the given track direction on the given tile yield an uphill penalty?
Static Public Member Functions inherited from CYapfFollowAnySafeTileRailT< Types >
static bool | stFindNearestSafeTile (const Train *v, TileIndex t1, Trackdir td, bool override_railtype)
Data Fields inherited from CYapfBaseT< Types >
NodeList | m_nodes
| node list multi-container
CPerformanceTimer | m_perf_cost
| stats - total CPU time of this run
CPerformanceTimer | m_perf_slope_cost
| stats - slope calculation CPU time
CPerformanceTimer | m_perf_ts_cost
| stats - GetTrackStatus() CPU time
CPerformanceTimer | m_perf_other_cost
| stats - other CPU time
int | m_num_steps
| this is there for debugging purposes (hope it doesn't hurt)
Data Fields inherited from CYapfCostRailT< Types >
bool | m_stopped_on_first_two_way_signal
Protected Member Functions inherited from CYapfBaseT< Types >
Tpf & | Yapf ()
| to access inherited path finder
Protected Member Functions inherited from CYapfCostRailT< Types >
Tpf & | Yapf ()
| to access inherited path finder
Protected Member Functions inherited from CYapfSegmentCostCacheGlobalT< Types >
Tpf & | Yapf ()
| to access inherited path finder
Protected Member Functions inherited from CYapfOriginTileTwoWayT< Types >
Tpf & | Yapf ()
| to access inherited path finder
Protected Member Functions inherited from CYapfFollowAnySafeTileRailT< Types >
Tpf & | Yapf ()
| to access inherited path finder
Static Protected Member Functions inherited from CYapfSegmentCostCacheGlobalT< Types >
static Cache & | stGetGlobalCache ()
Protected Attributes inherited from CYapfBaseT< Types >
Node * | m_pBestDestNode
| pointer to the destination node found at last round
Node * | m_pBestIntermediateNode
| here should be node closest to the destination if path not found
const YAPFSettings * | m_settings
| current settings (_settings_game.yapf)
int | m_max_search_nodes
| maximum number of nodes we are allowed to visit before we give up
const VehicleType * | m_veh
| vehicle that we are trying to drive
int | m_stats_cost_calcs
| stats - how many node's costs were calculated
int | m_stats_cache_hits
| stats - how many node's costs were reused from cache
Protected Attributes inherited from CYapfCostRailT< Types >
int | m_max_cost
CBlobT< int > | m_sig_look_ahead_costs
bool | m_disable_cache
Protected Attributes inherited from CYapfSegmentCostCacheGlobalT< Types >
Cache & | m_global_cache
Protected Attributes inherited from CYapfOriginTileTwoWayT< Types >
TileIndex | m_orgTile
| first origin tile
Trackdir | m_orgTd
| first origin trackdir
TileIndex | m_revTile
| second (reversed) origin tile
Trackdir | m_revTd
| second (reversed) origin trackdir
int | m_reverse_penalty
| penalty to be added for using the reversed origin
bool | m_treat_first_red_two_way_signal_as_eol
| in some cases (leaving station) we need to handle first two-way signal differently
Protected Attributes inherited from CYapfDestinationRailBase
RailTypes | m_compatible_railtypes
Static Protected Attributes inherited from CYapfCostRailT< Types >
static const int | s_max_segment_cost = 10000

## Detailed Description

Definition at line 537 of file yapf_rail.cpp.

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

- src/pathfinder/yapf/yapf_rail.cpp