X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fpawns.h;h=684697acb1738846226910bafb5a3f79813ece39;hp=bfd30898ea705c9400fe2ac0ea54ad5f72a87dfc;hb=548bae80bd1f04526667ddeeaf8f5f065c53b096;hpb=e49b21eacb291e8a909afacf3cd2440541be53aa diff --git a/src/pawns.h b/src/pawns.h index bfd30898..684697ac 100644 --- a/src/pawns.h +++ b/src/pawns.h @@ -47,8 +47,7 @@ class PawnInfo { public: PawnInfo() { clear(); } - Value mg_value() const; - Value eg_value() const; + Score pawns_value() const; Value kingside_storm_value(Color c) const; Value queenside_storm_value(Color c) const; Bitboard pawn_attacks(Color c) const; @@ -65,7 +64,7 @@ private: Key key; Bitboard passedPawns; Bitboard pawnAttacks[2]; - int16_t mgValue, egValue; + Score value; int16_t ksStormValue[2], qsStormValue[2]; uint8_t halfOpenFiles[2]; Square kingSquares[2]; @@ -85,6 +84,9 @@ public: PawnInfo* get_pawn_info(const Position& pos); private: + template + Score evaluate_pawns(const Position& pos, Bitboard ourPawns, Bitboard theirPawns, PawnInfo* pi); + unsigned size; PawnInfo* entries; }; @@ -94,12 +96,8 @@ private: //// Inline functions //// -inline Value PawnInfo::mg_value() const { - return Value(mgValue); -} - -inline Value PawnInfo::eg_value() const { - return Value(egValue); +inline Score PawnInfo::pawns_value() const { + return value; } inline Bitboard PawnInfo::passed_pawns() const {