00001
00002
00003 #ifndef _QUIESCENCEWINDOW_H
00004 #define _QUIESCENCEWINDOW_H
00005 #include "osl/search/searchWindow.h"
00006 #include "osl/search/fixedEval.h"
00007 #include <utility>
00008 namespace osl
00009 {
00010 namespace search
00011 {
00012 template <class Window> struct QuiescenceWindow;
00013
00014 template <> struct QuiescenceWindow<NullWindow>
00015 {
00016 template <class Eval>
00017 static const std::pair<int,int>
00018 make(Player P, NullWindow window, Eval ev);
00019 };
00020
00021 template <> struct QuiescenceWindow<AlphaBetaWindow>
00022 {
00023 template <class Eval>
00024 static const std::pair<int,int>
00025 make(Player , const AlphaBetaWindow& window, Eval )
00026 {
00027 return std::make_pair(window.alpha(), window.beta());
00028 }
00029 };
00030
00031 }
00032 }
00033
00034 #endif
00035
00036
00037
00038