-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmovepick.hpp
More file actions
18 lines (18 loc) · 799 Bytes
/
movepick.hpp
File metadata and controls
18 lines (18 loc) · 799 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#pragma once
#include "chess.hpp"
#include "eval.hpp"
namespace movepick
{
// Static Exchange Evaluation - evaluates material exchange on a square
int SEE(chess::Board &, chess::Move);
// Updates killer moves table for move ordering
void updateKillerMoves(chess::Move, int);
// Updates history heuristic table for move ordering
void updateHistoryHeuristic(chess::Move, int);
// Orders moves for regular search (with TT move, killers at given ply)
void orderMoves(chess::Board &, chess::Movelist &, chess::Move, chess::Move, int);
// Orders moves for quiescence search (captures/promotions)
void qOrderMoves(chess::Board &, chess::Movelist &);
// Killer moves table: [ply][slot] for move ordering heuristic
extern chess::Move killerMoves[MAX_PLY][2];
}