Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Napoleon - evaluation.h

evaluation.h

Caricato da: Crybot
Scarica il programma completo

  1. #ifndef EVALUATION_H
  2. #define EVALUATION_H
  3. #include "defines.h"
  4. namespace Napoleon
  5. {
  6.     class Board;
  7.     class Piece;
  8.     class Evaluation
  9.     {
  10.     public:
  11.         static int Evaluate(Board&);
  12.         static int EvaluatePiece(Piece, Square, Board&);
  13.         static int CalculatePST(Piece, Square, Board&);
  14.  
  15.     private:
  16.         template<Byte>
  17.         static int evaluateMobility(Board&, BitBoard);
  18.  
  19.         static int pawnSquareValue[64];
  20.         static int knightSquareValue[64];
  21.         static int bishopSquareValue[64];
  22.         static int rookSquareValue[64];
  23.         static int queenSquareValue[64];
  24.         static int kingMiddleGame[64];
  25.                 static int kingEndGame[64];
  26.  
  27.         static int multiPawnP[8]; // penalization for doubled, tripled... pawns
  28.  
  29.     };
  30.  
  31. }
  32.  
  33. #endif // EVALUATION_H