#ifndef EVAL_H
#define EVAL_H
#include "position.h"
// global properties (declared in .cpp)
extern int queenWeight;
extern int rookWeight;
extern int bishopWeight;
extern int knightWeight;
extern int pawnWeight;
extern int kingMobilityFactor;
extern int queenMobilityFactor;
extern int rookMobilityFactor;
extern int bishopMobilityFactor;
extern int knightMobilityFactor;
extern int pawnMobilityFactor;
extern int pawnStructureFactor;
// functions
Value EvaluateBoard(Position& b);
Value EvaluateBoard(Position& b, Color turn);
Value EvaluateBoard(Position& b, Color turn, int depth);
Value EvaluateStaticScore(Position& p);
Value EvaluateMobilityScore(Position& p);
Value EvaluatePawnHandicapScore(Position& p);
#endif