X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fthread.h;h=cc490639ed4f4c8bb23a400166a840fa10a9ec86;hp=13615c2c92daca51714ff5456491926b2b95fa8c;hb=103b368ab7f5fd696e0c6925917344d15a3c2d9c;hpb=0f7cbaca75124d88136d356cf7b082207b572b3c diff --git a/src/thread.h b/src/thread.h index 13615c2c..cc490639 100644 --- a/src/thread.h +++ b/src/thread.h @@ -1,7 +1,7 @@ /* Stockfish, a UCI chess playing engine derived from Glaurung 2.1 Copyright (C) 2004-2008 Tord Romstad (Glaurung author) - Copyright (C) 2008-2010 Marco Costalba, Joona Kiiski, Tord Romstad + Copyright (C) 2008-2012 Marco Costalba, Joona Kiiski, Tord Romstad Stockfish is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -21,6 +21,7 @@ #define THREAD_H_INCLUDED #include +#include #include "lock.h" #include "material.h" @@ -46,7 +47,7 @@ struct SplitPoint { // Const pointers to shared data MovePicker* mp; - SearchStack* ss; + Search::Stack* ss; // Shared data Lock lock; @@ -118,11 +119,12 @@ public: bool split_point_finished(SplitPoint* sp) const; void set_timer(int msec); void wait_for_stop_or_ponderhit(); + void stop_thinking(); void start_thinking(const Position& pos, const Search::LimitsType& limits, - const std::vector& searchMoves, bool asyncMode); + const std::set& = std::set(), bool async = false); template - Value split(Position& pos, SearchStack* ss, Value alpha, Value beta, Value bestValue, + Value split(Position& pos, Search::Stack* ss, Value alpha, Value beta, Value bestValue, Depth depth, Move threatMove, int moveCount, MovePicker* mp, int nodeType); private: friend struct Thread;