Subversion Repositories Games.Chess Giants

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
99 pmbaty 1
/*
2
    Texel - A UCI chess engine.
3
    Copyright (C) 2013  Peter Ă–sterlund, peterosterlund2@gmail.com
4
 
5
    This program is free software: you can redistribute it and/or modify
6
    it under the terms of the GNU General Public License as published by
7
    the Free Software Foundation, either version 3 of the License, or
8
    (at your option) any later version.
9
 
10
    This program is distributed in the hope that it will be useful,
11
    but WITHOUT ANY WARRANTY; without even the implied warranty of
12
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
    GNU General Public License for more details.
14
 
15
    You should have received a copy of the GNU General Public License
16
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
17
*/
18
 
19
/*
20
 * searchUtil.hpp
21
 *
22
 *  Created on: Jul 15, 2013
23
 *      Author: petero
24
 */
25
 
26
#ifndef SEARCHUTIL_HPP_
27
#define SEARCHUTIL_HPP_
28
 
29
#include "move.hpp"
30
 
31
 
32
class SearchTreeInfo {
33
public:
34
    SearchTreeInfo();
35
 
36
    bool allowNullMove;    // Don't allow two null-moves in a row
37
    Move bestMove;         // Copy of the best found move at this ply
38
    Move currentMove;      // Move currently being searched
39
    int currentMoveNo;     // Index of currentMove in move list
40
    int lmr;               // LMR reduction amount
41
    U64 nodeIdx;           // For tree logging
42
    Move singularMove;     // Non-empty when searching for second best
43
                           // move to determine if best move is singular
44
};
45
 
46
 
47
inline
48
SearchTreeInfo::SearchTreeInfo()
49
    : allowNullMove(true), currentMoveNo(0),
50
      lmr(0), nodeIdx(0) {
51
}
52
 
53
 
54
#endif /* SEARCHUTIL_HPP_ */