KUDr@3900: /* $Id$ */ KUDr@3900: KUDr@3900: #ifndef YAPF_COSTBASE_HPP KUDr@3900: #define YAPF_COSTBASE_HPP KUDr@3900: KUDr@3900: struct CYapfCostBase { KUDr@3900: static const TrackdirBits c_upwards_slopes[16]; KUDr@3900: KUDr@3900: FORCEINLINE static bool stSlopeCost(TileIndex tile, Trackdir td) KUDr@3900: { KUDr@3900: if (IsDiagonalTrackdir(td)) { KUDr@3900: uint tile_slope = GetTileSlope(tile, NULL) & 0x0F; KUDr@3900: if ((c_upwards_slopes[tile_slope] & TrackdirToTrackdirBits(td)) != 0) { KUDr@3900: return true; KUDr@3900: } KUDr@3900: } KUDr@3900: return false; KUDr@3900: } KUDr@3900: }; KUDr@3900: KUDr@3900: struct CostRailSettings { KUDr@3900: // look-ahead signal penalty KUDr@3900: }; KUDr@3900: KUDr@3900: KUDr@3900: #endif /* YAPF_COSTBASE_HPP */