OpenTTD Source
1.11.0-beta2
|
#include "../../track_type.h"
#include "../../direction_type.h"
#include "../../vehicle_type.h"
#include "../pathfinder_type.h"
Go to the source code of this file.
Functions | |
FindDepotData | NPFRoadVehicleFindNearestDepot (const RoadVehicle *v, int max_penalty) |
Used when user sends road vehicle to the nearest depot or if road vehicle needs servicing using NPF. More... | |
Trackdir | NPFRoadVehicleChooseTrack (const RoadVehicle *v, TileIndex tile, DiagDirection enterdir, bool &path_found) |
Finds the best path for given road vehicle using NPF. More... | |
Track | NPFShipChooseTrack (const Ship *v, bool &path_found) |
Finds the best path for given ship using NPF. More... | |
bool | NPFShipCheckReverse (const Ship *v) |
Returns true if it is better to reverse the ship before leaving depot using NPF. More... | |
FindDepotData | NPFTrainFindNearestDepot (const Train *v, int max_penalty) |
Used when user sends train to the nearest depot or if train needs servicing using NPF. More... | |
bool | NPFTrainFindNearestSafeTile (const Train *v, TileIndex tile, Trackdir td, bool override_railtype) |
Try to extend the reserved path of a train to the nearest safe tile using NPF. More... | |
bool | NPFTrainCheckReverse (const Train *v) |
Returns true if it is better to reverse the train before leaving station using NPF. More... | |
Track | NPFTrainChooseTrack (const Train *v, bool &path_found, bool reserve_track, struct PBSTileInfo *target) |
Finds the best path for given train using NPF. More... | |
Functions to access the new pathfinder.
Definition in file npf_func.h.
Trackdir NPFRoadVehicleChooseTrack | ( | const RoadVehicle * | v, |
TileIndex | tile, | ||
DiagDirection | enterdir, | ||
bool & | path_found | ||
) |
Finds the best path for given road vehicle using NPF.
v | the RV that needs to find a path |
tile | the tile to find the path from (should be next tile the RV is about to enter) |
enterdir | diagonal direction which the RV will enter this new tile from |
path_found | [out] Whether a path has been found (true) or has been guessed (false) |
FindDepotData NPFRoadVehicleFindNearestDepot | ( | const RoadVehicle * | v, |
int | max_penalty | ||
) |
Used when user sends road vehicle to the nearest depot or if road vehicle needs servicing using NPF.
v | vehicle that needs to go to some depot |
max_penalty | max distance (in pathfinder penalty) from the current vehicle position (used also as optimization - the pathfinder can stop path finding if max_penalty was reached and no depot was seen) |
Definition at line 1158 of file npf.cpp.
References RoadVehicle::compatible_roadtypes, RoadVehicle::GetVehicleTrackdir(), Vehicle::owner, RAILTYPES_NONE, and TRANSPORT_ROAD.
bool NPFShipCheckReverse | ( | const Ship * | v | ) |
Finds the best path for given ship using NPF.
v | the ship that needs to find a path |
path_found | [out] Whether a path has been found (true) or has been guessed (false) |
Definition at line 1197 of file npf.cpp.
References Ship::GetVehicleTrackdir(), and INVALID_TRACKDIR.
Referenced by ChooseShipTrack().
bool NPFTrainCheckReverse | ( | const Train * | v | ) |
Returns true if it is better to reverse the train before leaving station using NPF.
v | the train leaving the station |
Definition at line 1281 of file npf.cpp.
References SpecializedVehicle< T, Type >::Last().
Track NPFTrainChooseTrack | ( | const Train * | v, |
bool & | path_found, | ||
bool | reserve_track, | ||
struct PBSTileInfo * | target | ||
) |
Finds the best path for given train using NPF.
v | the train that needs to find a path |
path_found | [out] Whether a path has been found (true) or has been guessed (false) |
reserve_track | indicates whether YAPF should try to reserve the found path |
target | [out] the target tile of the reservation, free is set to true if path was reserved |
Definition at line 1300 of file npf.cpp.
Referenced by DoTrainPathfind().
FindDepotData NPFTrainFindNearestDepot | ( | const Train * | v, |
int | max_penalty | ||
) |
Used when user sends train to the nearest depot or if train needs servicing using NPF.
v | train that needs to go to some depot |
max_penalty | max max_penalty (in pathfinder penalty) from the current train position (used also as optimization - the pathfinder can stop path finding if max_penalty was reached and no depot was seen) |
Definition at line 1238 of file npf.cpp.
References Train::GetVehicleTrackdir(), INVALID_TRACKDIR, SpecializedVehicle< T, Type >::Last(), Vehicle::owner, NPFFindStationOrTileData::reserve_path, ReverseTrackdir(), ROADTYPES_NONE, TRANSPORT_RAIL, and NPFFindStationOrTileData::v.
Referenced by FindClosestTrainDepot().
bool NPFTrainFindNearestSafeTile | ( | const Train * | v, |
TileIndex | tile, | ||
Trackdir | td, | ||
bool | override_railtype | ||
) |
Try to extend the reserved path of a train to the nearest safe tile using NPF.
v | The train that needs to find a safe tile. |
tile | Last tile of the current reserved path. |
td | Last trackdir of the current reserved path. |
override_railtype | Should all physically compatible railtypes be searched, even if the vehicle can't run on them on its own? |
Definition at line 1260 of file npf.cpp.
References RailtypeInfo::compatible_railtypes, GetRailTypeInfo(), Vehicle::owner, NPFFindStationOrTileData::reserve_path, ROADTYPES_NONE, TRANSPORT_RAIL, BaseVehicle::type, NPFFindStationOrTileData::v, and VEH_TRAIN.
Referenced by TryReserveSafeTrack().