Tablebases root ranking
[stockfish] / src / syzygy / tbprobe.h
index 7cef6971dde8fb1b0e21309e001ff531ec1b15cb..572265b524419695fd05c6de90ca79b04e4fb5b5 100644 (file)
@@ -1,7 +1,7 @@
 /*
   Stockfish, a UCI chess playing engine derived from Glaurung 2.1
   Copyright (c) 2013 Ronald de Man
-  Copyright (C) 2016 Marco Costalba, Lucas Braesch
+  Copyright (C) 2016-2018 Marco Costalba, Lucas Braesch
 
   Stockfish is free software: you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
 namespace Tablebases {
 
 enum WDLScore {
-    WDLLoss       = -2, // Loss
-    WDLCursedLoss = -1, // Loss, but draw under 50-move rule
-    WDLDraw       =  0, // Draw
-    WDLCursedWin  =  1, // Win, but draw under 50-move rule
-    WDLWin        =  2, // Win
+    WDLLoss        = -2, // Loss
+    WDLBlessedLoss = -1, // Loss, but draw under 50-move rule
+    WDLDraw        =  0, // Draw
+    WDLCursedWin   =  1, // Win, but draw under 50-move rule
+    WDLWin         =  2, // Win
 
     WDLScoreNone  = -1000
 };
@@ -49,17 +49,17 @@ extern int MaxCardinality;
 void init(const std::string& paths);
 WDLScore probe_wdl(Position& pos, ProbeState* result);
 int probe_dtz(Position& pos, ProbeState* result);
-bool root_probe(Position& pos, Search::RootMoves& rootMoves, Value& score);
-bool root_probe_wdl(Position& pos, Search::RootMoves& rootMoves, Value& score);
-void filter_root_moves(Position& pos, Search::RootMoves& rootMoves);
+bool root_probe(Position& pos, Search::RootMoves& rootMoves);
+bool root_probe_wdl(Position& pos, Search::RootMoves& rootMoves);
+void rank_root_moves(Position& pos, Search::RootMoves& rootMoves);
 
 inline std::ostream& operator<<(std::ostream& os, const WDLScore v) {
 
-    os << (v == WDLLoss       ? "Loss" :
-           v == WDLCursedLoss ? "Cursed loss" :
-           v == WDLDraw       ? "Draw" :
-           v == WDLCursedWin  ? "Cursed win" :
-           v == WDLWin        ? "Win" : "None");
+    os << (v == WDLLoss        ? "Loss" :
+           v == WDLBlessedLoss ? "Blessed loss" :
+           v == WDLDraw        ? "Draw" :
+           v == WDLCursedWin   ? "Cursed win" :
+           v == WDLWin         ? "Win" : "None");
 
     return os;
 }