struct EvalInfo {
- EvalInfo() { futilityMargin[0] = futilityMargin[1] = Value(0); }
+ EvalInfo() { kingDanger[0] = kingDanger[1] = VALUE_ZERO; }
// Middle game and endgame evaluations
Score value;
// 2 to kingAdjacentZoneAttacksCount[BLACK].
int kingAdjacentZoneAttacksCount[2];
- // mateThreat[color] is a move for the given side which gives a direct mate.
- Move mateThreat[2];
-
- // Middle game and endgame mobility scores
- Score mobility;
-
- // Extra futility margin. This is added to the standard futility margin
- // in the quiescence search. One for each color.
- Value futilityMargin[2];
+ // Value of the danger for the king of the given color
+ Value kingDanger[2];
};
//// Prototypes
////
-extern Value evaluate(const Position& pos, EvalInfo& ei, int threadID);
+extern Value evaluate(const Position& pos, EvalInfo& ei);
extern void init_eval(int threads);
extern void quit_eval();
extern void read_weights(Color sideToMove);