]> git.sesse.net Git - stockfish/blobdiff - src/position.h
Depth dependant aspiration window delta
[stockfish] / src / position.h
index baf49705db7a6e00034a9ed9f561f267fda9b9cc..34c427d4e21227d6f5903993572f047c2a06a0d3 100644 (file)
@@ -171,22 +171,15 @@ private:
   // Initialization helpers (used while setting up a position)
   void clear();
   void set_castling_right(Color c, Square rfrom);
+  void set_state(StateInfo* si) const;
 
   // Helper functions
-  void do_castling(Square kfrom, Square kto, Square rfrom, Square rto);
   Bitboard check_blockers(Color c, Color kingColor) const;
   void put_piece(Square s, Color c, PieceType pt);
   void remove_piece(Square s, Color c, PieceType pt);
   void move_piece(Square from, Square to, Color c, PieceType pt);
-
-  // Computing hash keys from scratch (for initialization and debugging)
-  Key compute_key() const;
-  Key compute_pawn_key() const;
-  Key compute_material_key() const;
-
-  // Computing incremental evaluation scores and material counts
-  Score compute_psq_score() const;
-  Value compute_non_pawn_material(Color c) const;
+  template<bool Do>
+  void do_castling(Square from, Square& to, Square& rfrom, Square& rto);
 
   // Board and pieces
   Piece board[SQUARE_NB];
@@ -292,7 +285,7 @@ inline Square Position::castling_rook_square(CastlingRight cr) const {
 template<PieceType Pt>
 inline Bitboard Position::attacks_from(Square s) const {
 
-  return  Pt == BISHOP || Pt == ROOK ? attacks_bb<Pt>(s, pieces())
+  return  Pt == BISHOP || Pt == ROOK ? attacks_bb<Pt>(s, byTypeBB[ALL_PIECES])
         : Pt == QUEEN  ? attacks_from<ROOK>(s) | attacks_from<BISHOP>(s)
         : StepAttacksBB[Pt][s];
 }