CYapfFollowRoadT< Types > Class Template Reference

Inheritance diagram for CYapfFollowRoadT< Types >:
CYapfT< CYapfRoad_TypesT< CYapfRoad1, CRoadNodeListTrackDir, CYapfDestinationTileRoadT > > CYapfT< CYapfRoad_TypesT< CYapfRoad2, CRoadNodeListExitDir, CYapfDestinationTileRoadT > > CYapfT< CYapfRoad_TypesT< CYapfRoadAnyDepot1, CRoadNodeListTrackDir, CYapfDestinationAnyDepotRoadT > > CYapfT< CYapfRoad_TypesT< CYapfRoadAnyDepot2, CRoadNodeListExitDir, CYapfDestinationAnyDepotRoadT > > CYapfRoad1 CYapfRoad2 CYapfRoadAnyDepot1 CYapfRoadAnyDepot2

Public 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

void PfFollowNode (Node &old_node)
 Called by YAPF to move from the given node to the next tile.
FORCEINLINE char TransportTypeChar () const
 return debug report character to identify the transportation type
FORCEINLINE Trackdir ChooseRoadTrack (const RoadVehicle *v, TileIndex tile, DiagDirection enterdir, bool &path_found)
FORCEINLINE uint DistanceToTile (const RoadVehicle *v, TileIndex dst_tile)
FORCEINLINE bool SetOriginFromVehiclePos (const RoadVehicle *v)
 Return true if the valid origin (tile/trackdir) was set from the current vehicle position.
FORCEINLINE bool FindNearestDepot (const RoadVehicle *v, TileIndex tile, Trackdir td, int max_distance, TileIndex *depot_tile)

Static Public Member Functions

static Trackdir stChooseRoadTrack (const RoadVehicle *v, TileIndex tile, DiagDirection enterdir, bool &path_found)
static uint stDistanceToTile (const RoadVehicle *v, TileIndex tile)
static bool stFindNearestDepot (const RoadVehicle *v, TileIndex tile, Trackdir td, int max_distance, TileIndex *depot_tile)

Protected Member Functions

FORCEINLINE TpfYapf ()
 to access inherited path finder

Detailed Description

template<class Types>
class CYapfFollowRoadT< Types >

Definition at line 298 of file yapf_road.cpp.


Member Function Documentation

template<class Types >
void CYapfFollowRoadT< Types >::PfFollowNode ( Node old_node  )  [inline]

Called by YAPF to move from the given node to the next tile.

For each reachable trackdir on the new tile creates new node, initializes it and adds it to the open list by calling Yapf().AddNewNode(n)

Definition at line 320 of file yapf_road.cpp.

References CYapfFollowRoadT< Types >::Yapf().

template<class Types >
FORCEINLINE bool CYapfFollowRoadT< Types >::SetOriginFromVehiclePos ( const RoadVehicle v  )  [inline]

Return true if the valid origin (tile/trackdir) was set from the current vehicle position.

Definition at line 417 of file yapf_road.cpp.

References GetTileTrackStatus(), RoadVehicle::GetVehicleTrackdir(), Vehicle::tile, TrackdirToTrackdirBits(), TrackStatusToTrackdirBits(), TRANSPORT_ROAD, and CYapfFollowRoadT< Types >::Yapf().


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

Generated on Fri Dec 31 17:16:25 2010 for OpenTTD by  doxygen 1.6.1