]> git.sesse.net Git - stockfish/blobdiff - src/movepick.h
Cache evaluation score in qsearch
[stockfish] / src / movepick.h
index c7b1ddaf58be40533e6e170b8ca6ef1e047b4801..c2619be8baa03602703155e79bb0911dadc16a5c 100644 (file)
@@ -34,6 +34,9 @@
 //// Types
 ////
 
+struct EvalInfo;
+struct SearchStack;
+
 /// MovePicker is a class which is used to pick one legal move at a time from
 /// the current position.  It is initialized with a Position object and a few
 /// moves we have reason to believe are good.  The most important method is
@@ -60,7 +63,7 @@ public:
     PH_STOP
   };
 
-  MovePicker(const Position& p, bool pvnode, Move ttm, Move mk, Move k1, Move k2, Depth d);
+  MovePicker(const Position& p, bool pvnode, Move ttm, const SearchStack& ss, Depth d);
   Move get_next_move();
   Move get_next_move(Lock &lock);
   int number_of_moves() const;
@@ -77,19 +80,17 @@ private:
   void score_qcaptures();
   Move pick_move_from_list();
   int find_best_index();
-  int MovePicker::find_best_index(Bitboard* squares, int values[]);
+  int find_best_index(Bitboard* squares, int values[]);
 
   const Position& pos;
   Move ttMove, mateKiller, killer1, killer2;
   Bitboard pinned, dc;
   MoveStack moves[256], badCaptures[64];
-  Bitboard capSquares;\r
-  int capSqValues[64];
   bool pvNode;
   Depth depth;
   int phaseIndex;
   int numOfMoves, numOfBadCaptures;
-  int movesPicked, badCapturesPicked;
+  int movesPicked;
   bool finished;
 };
 
@@ -104,7 +105,6 @@ private:
 /// a single reply to check.
 
 inline int MovePicker::number_of_moves() const {
-
   return numOfMoves;
 }