X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fposition.h;h=8342df3c1efa067dea1f688fdb42d719d33c68f6;hp=2361132fac4e5596cbb08ca369c7fd7364c0d614;hb=fa1e3427bdf7f6347326015a381014564e8fb337;hpb=e06a117d5e78ec4edc051f2b161d36559f784d37 diff --git a/src/position.h b/src/position.h index 2361132f..8342df3c 100644 --- a/src/position.h +++ b/src/position.h @@ -134,9 +134,11 @@ public: void undo_move(Move m); void do_null_move(StateInfo& newSt); void undo_null_move(); + void increment_nodes(); + void increment_tbHits(); // Static Exchange Evaluation - bool see_ge(Move m, Value value) const; + bool see_ge(Move m, Value threshold = VALUE_ZERO) const; // Accessing hash keys Key key() const; @@ -151,6 +153,7 @@ public: bool is_chess960() const; Thread* this_thread() const; uint64_t nodes_searched() const; + uint64_t tb_hits() const; bool is_draw(int ply) const; int rule50_count() const; Score psq_score() const; @@ -158,7 +161,7 @@ public: Value non_pawn_material() const; // Position consistency check, for debugging - bool pos_is_ok(int* failedStep = nullptr) const; + bool pos_is_ok() const; void flip(); private: @@ -185,6 +188,7 @@ private: Square castlingRookSquare[CASTLING_RIGHT_NB]; Bitboard castlingPath[CASTLING_RIGHT_NB]; uint64_t nodes; + uint64_t tbHits; int gamePly; Color sideToMove; Thread* thisThread; @@ -353,6 +357,18 @@ inline uint64_t Position::nodes_searched() const { return nodes; } +inline void Position::increment_nodes() { + nodes++; +} + +inline uint64_t Position::tb_hits() const { + return tbHits; +} + +inline void Position::increment_tbHits() { + tbHits++; +} + inline bool Position::opposite_bishops() const { return pieceCount[W_BISHOP] == 1 && pieceCount[B_BISHOP] == 1