OpenTTD
Data Structures | Functions
yapf_ship.cpp File Reference

Implementation of YAPF for ships. More...

#include "../../stdafx.h"
#include "../../ship.h"
#include "yapf.hpp"
#include "yapf_node_ship.hpp"
#include "../../safeguards.h"

Go to the source code of this file.

Data Structures

class  CYapfFollowShipT< Types >
 Node Follower module of YAPF for ships. More...
class  CYapfCostShipT< Types >
 Cost Provider module of YAPF for ships. More...
struct  CYapfShip_TypesT< Tpf_, Ttrack_follower, Tnode_list >
 Config struct of YAPF for ships. More...
struct  CYapfShip1
struct  CYapfShip2
struct  CYapfShip3

Functions

Track YapfShipChooseTrack (const Ship *v, TileIndex tile, DiagDirection enterdir, TrackBits tracks, bool &path_found)
 Ship controller helper - path finder invoker.
bool YapfShipCheckReverse (const Ship *v)
 Returns true if it is better to reverse the ship before leaving depot using YAPF.

Detailed Description

Implementation of YAPF for ships.

Definition in file yapf_ship.cpp.

Function Documentation

bool YapfShipCheckReverse ( const Ship v)

Returns true if it is better to reverse the ship before leaving depot using YAPF.

Parameters
vthe ship leaving the depot
Returns
true if reversing is better

Definition at line 242 of file yapf_ship.cpp.

References _settings_game, CYapfFollowShipT< Types >::CheckShipReverse(), YAPFSettings::disable_node_optimization, PathfinderSettings::forbid_90_deg, Ship::GetVehicleTrackdir(), GameSettings::pf, ReverseTrackdir(), Vehicle::tile, and PathfinderSettings::yapf.

Track YapfShipChooseTrack ( const Ship v,
TileIndex  tile,
DiagDirection  enterdir,
TrackBits  tracks,
bool &  path_found 
)

Ship controller helper - path finder invoker.

Finds the best path for given ship using YAPF.

Definition at line 225 of file yapf_ship.cpp.

References _settings_game, YAPFSettings::disable_node_optimization, PathfinderSettings::forbid_90_deg, INVALID_TRACK, INVALID_TRACKDIR, GameSettings::pf, TrackdirToTrack(), and PathfinderSettings::yapf.

Referenced by ChooseShipTrack().