diff --git a/src/pathfinder/yapf/yapf_base.hpp b/src/pathfinder/yapf/yapf_base.hpp index 0c49d16ca5..c5a45c026c 100644 --- a/src/pathfinder/yapf/yapf_base.hpp +++ b/src/pathfinder/yapf/yapf_base.hpp @@ -12,6 +12,8 @@ #include "../../debug.h" #include "../../settings_type.h" +#include "../../misc/dbg_helpers.h" +#include "yapf_type.hpp" /** * CYapfBaseT - A-star type path finder base class. diff --git a/src/pathfinder/yapf/yapf_cache.h b/src/pathfinder/yapf/yapf_cache.h index a66cbc9e25..e0234b2c5d 100644 --- a/src/pathfinder/yapf/yapf_cache.h +++ b/src/pathfinder/yapf/yapf_cache.h @@ -10,6 +10,7 @@ #ifndef YAPF_CACHE_H #define YAPF_CACHE_H +#include "../../tile_type.h" #include "../../track_type.h" /** diff --git a/src/pathfinder/yapf/yapf_common.hpp b/src/pathfinder/yapf/yapf_common.hpp index 3a136e995a..7d12f12f34 100644 --- a/src/pathfinder/yapf/yapf_common.hpp +++ b/src/pathfinder/yapf/yapf_common.hpp @@ -10,6 +10,13 @@ #ifndef YAPF_COMMON_HPP #define YAPF_COMMON_HPP +#include "../../core/bitmath_func.hpp" +#include "../../direction_type.h" +#include "../../map_func.h" +#include "../../tile_type.h" +#include "../../track_type.h" +#include "../pathfinder_type.h" + /** YAPF origin provider base class - used when origin is one tile / multiple trackdirs */ template class CYapfOriginTileT diff --git a/src/pathfinder/yapf/yapf_costbase.hpp b/src/pathfinder/yapf/yapf_costbase.hpp index 8da9257d91..66579e01b6 100644 --- a/src/pathfinder/yapf/yapf_costbase.hpp +++ b/src/pathfinder/yapf/yapf_costbase.hpp @@ -10,6 +10,12 @@ #ifndef YAPF_COSTBASE_HPP #define YAPF_COSTBASE_HPP +#include "../../bridge_map.h" +#include "../../tile_type.h" +#include "../../track_func.h" +#include "../../track_type.h" +#include "../../tunnelbridge_map.h" + /** Base implementation for cost accounting. */ struct CYapfCostBase { /** diff --git a/src/pathfinder/yapf/yapf_costcache.hpp b/src/pathfinder/yapf/yapf_costcache.hpp index 5b7c0c0c65..2d1f468121 100644 --- a/src/pathfinder/yapf/yapf_costcache.hpp +++ b/src/pathfinder/yapf/yapf_costcache.hpp @@ -11,6 +11,9 @@ #define YAPF_COSTCACHE_HPP #include "../../timer/timer_game_calendar.h" +#include "../../misc/hashtable.hpp" +#include "../../tile_type.h" +#include "../../track_type.h" /** * CYapfSegmentCostCacheNoneT - the formal only yapf cost cache provider that implements diff --git a/src/pathfinder/yapf/yapf_costrail.hpp b/src/pathfinder/yapf/yapf_costrail.hpp index 4f9523bdbe..9caafbbf02 100644 --- a/src/pathfinder/yapf/yapf_costrail.hpp +++ b/src/pathfinder/yapf/yapf_costrail.hpp @@ -12,6 +12,10 @@ #include "../../pbs.h" +#include "../follow_track.hpp" +#include "../pathfinder_type.h" +#include "yapf_type.hpp" +#include "yapf_costbase.hpp" template class CYapfCostRailT : public CYapfCostBase { diff --git a/src/pathfinder/yapf/yapf_destrail.hpp b/src/pathfinder/yapf/yapf_destrail.hpp index f39a8a2c4b..0fb4d39ba2 100644 --- a/src/pathfinder/yapf/yapf_destrail.hpp +++ b/src/pathfinder/yapf/yapf_destrail.hpp @@ -10,6 +10,10 @@ #ifndef YAPF_DESTRAIL_HPP #define YAPF_DESTRAIL_HPP +#include "../../train.h" +#include "../pathfinder_func.h" +#include "../pathfinder_type.h" + class CYapfDestinationRailBase { protected: RailTypes m_compatible_railtypes; diff --git a/src/pathfinder/yapf/yapf_node.hpp b/src/pathfinder/yapf/yapf_node.hpp index 82c212708b..c21cd37d61 100644 --- a/src/pathfinder/yapf/yapf_node.hpp +++ b/src/pathfinder/yapf/yapf_node.hpp @@ -10,6 +10,9 @@ #ifndef YAPF_NODE_HPP #define YAPF_NODE_HPP +#include "../../track_func.h" +#include "../../misc/dbg_helpers.h" + /** Yapf Node Key that evaluates hash from (and compares) tile & exit dir. */ struct CYapfNodeKeyExitDir { TileIndex m_tile; diff --git a/src/pathfinder/yapf/yapf_node_rail.hpp b/src/pathfinder/yapf/yapf_node_rail.hpp index 7309fa02d2..0313f15945 100644 --- a/src/pathfinder/yapf/yapf_node_rail.hpp +++ b/src/pathfinder/yapf/yapf_node_rail.hpp @@ -10,6 +10,12 @@ #ifndef YAPF_NODE_RAIL_HPP #define YAPF_NODE_RAIL_HPP +#include "../../misc/dbg_helpers.h" +#include "../../train.h" +#include "nodelist.hpp" +#include "yapf_node.hpp" +#include "yapf_type.hpp" + /** key for cached segment cost for rail YAPF */ struct CYapfRailSegmentKey { diff --git a/src/pathfinder/yapf/yapf_node_road.hpp b/src/pathfinder/yapf/yapf_node_road.hpp index cf5fda95c9..18469cbf44 100644 --- a/src/pathfinder/yapf/yapf_node_road.hpp +++ b/src/pathfinder/yapf/yapf_node_road.hpp @@ -10,6 +10,11 @@ #ifndef YAPF_NODE_ROAD_HPP #define YAPF_NODE_ROAD_HPP +#include "../../tile_type.h" +#include "../../track_type.h" +#include "nodelist.hpp" +#include "yapf_node.hpp" + /** Yapf Node for road YAPF */ template struct CYapfRoadNodeT : CYapfNodeT > { diff --git a/src/pathfinder/yapf/yapf_node_ship.hpp b/src/pathfinder/yapf/yapf_node_ship.hpp index 63e21987a3..09ca11ee71 100644 --- a/src/pathfinder/yapf/yapf_node_ship.hpp +++ b/src/pathfinder/yapf/yapf_node_ship.hpp @@ -10,6 +10,11 @@ #ifndef YAPF_NODE_SHIP_HPP #define YAPF_NODE_SHIP_HPP +#include "../../tile_type.h" +#include "../../track_type.h" +#include "nodelist.hpp" +#include "yapf_node.hpp" + /** Yapf Node for ships */ template struct CYapfShipNodeT : CYapfNodeT > { diff --git a/src/pathfinder/yapf/yapf_type.hpp b/src/pathfinder/yapf/yapf_type.hpp index 4f301b0fb7..327b904664 100644 --- a/src/pathfinder/yapf/yapf_type.hpp +++ b/src/pathfinder/yapf/yapf_type.hpp @@ -13,6 +13,9 @@ #include #include +#include "../../core/enum_type.hpp" +#include "../../misc/dbg_helpers.h" + /* Enum used in PfCalcCost() to see why was the segment closed. */ enum EndSegmentReason { /* The following reasons can be saved into cached segment */