X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fendgame.h;h=5b4128b7b6130f7c55ef8cad99b2ec8416090c7d;hp=e40b4050756fee4b2fb8489b1a599ae6004aba43;hb=6608a16a6a6e062921fe318846c2c21e1fbcd729;hpb=b5d5646c840d63710552fdaf2521a054dd3b8a18 diff --git a/src/endgame.h b/src/endgame.h index e40b4050..5b4128b7 100644 --- a/src/endgame.h +++ b/src/endgame.h @@ -64,21 +64,21 @@ struct EndgameBase { typedef EndgameBase Base; - EndgameBase(Color c) : strongerSide(c), weakerSide(opposite_color(c)) {} virtual ~EndgameBase() {} + virtual Color color() const = 0; virtual T apply(const Position&) const = 0; - Color color() const { return strongerSide; } - -protected: - Color strongerSide, weakerSide; }; template struct Endgame : public EndgameBase { - explicit Endgame(Color c): EndgameBase(c) {} + explicit Endgame(Color c) : strongerSide(c), weakerSide(opposite_color(c)) {} + Color color() const { return strongerSide; } T apply(const Position&) const; + +private: + Color strongerSide, weakerSide; };