00001
00002
00003 #ifndef GAME_PLAYING_HISTORYTOTABLE_H
00004 #define GAME_PLAYING_HISTORYTOTABLE_H
00005 namespace osl
00006 {
00007 class Move;
00008 namespace hash
00009 {
00010 class HashKey;
00011 }
00012 namespace search
00013 {
00014 class SimpleHashTable;
00015 }
00016 namespace game_playing
00017 {
00018 class GameState;
00019 struct HistoryToTable
00020 {
00022 static const int LIMIT;
00026 static void adjustDominance(const hash::HashKey& key,
00027 search::SimpleHashTable& table,
00028 int black_win, int white_win,
00029 const Move& good_move);
00033 static void adjustTable(const GameState&,
00034 search::SimpleHashTable& table,
00035 int black_win, int draw, int white_win);
00036 };
00037 }
00038 }
00039
00040 #endif
00041
00042
00043
00044