Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
112 | pmbaty | 1 | /* |
2 | Protector -- a UCI chess engine |
||
3 | |||
4 | Copyright (C) 2009-2010 Raimund Heid (Raimund_Heid@yahoo.com) |
||
5 | |||
6 | This program is free software: you can redistribute it and/or modify |
||
7 | it under the terms of the GNU General Public License as published by |
||
8 | the Free Software Foundation, either version 3 of the License, or |
||
9 | (at your option) any later version. |
||
10 | |||
11 | This program is distributed in the hope that it will be useful, |
||
12 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
||
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||
14 | GNU General Public License for more details. |
||
15 | |||
16 | You should have received a copy of the GNU General Public License |
||
17 | along with this program. If not, see <http://www.gnu.org/licenses/>. |
||
18 | |||
19 | */ |
||
20 | |||
21 | #ifndef _search_h_ |
||
22 | #define _search_h_ |
||
23 | |||
24 | #include "protector.h" |
||
25 | #include "position.h" |
||
26 | #include "movegeneration.h" |
||
27 | |||
28 | /** |
||
29 | * Search the best move in the position specified by 'variation'. |
||
30 | * If acceptable solutions are specified and the search process yields |
||
31 | * an acceptable solution in two consecutive iterations the search |
||
32 | * will be terminated and the last acceptable move will be returned |
||
33 | * as best move. |
||
34 | * |
||
35 | * @param acceptableSolutions the acceptable solution moves (optional) |
||
36 | * |
||
37 | * @return the best move found in the conducted search |
||
38 | */ |
||
39 | Move search(Variation * variation, Movelist * acceptableSolutions); |
||
40 | |||
41 | /** |
||
42 | * Initialize this module. |
||
43 | * |
||
44 | * @return 0 if no errors occurred. |
||
45 | */ |
||
46 | int initializeModuleSearch(void); |
||
47 | |||
48 | /** |
||
49 | * Test this module. |
||
50 | * |
||
51 | * @return 0 if all tests succeed. |
||
52 | */ |
||
53 | int testModuleSearch(void); |
||
54 | |||
55 | #endif |