/*
Stockfish, a UCI chess playing engine derived from Glaurung 2.1
Copyright (C) 2004-2008 Tord Romstad (Glaurung author)
- Copyright (C) 2008-2013 Marco Costalba, Joona Kiiski, Tord Romstad
+ Copyright (C) 2008-2014 Marco Costalba, Joona Kiiski, Tord Romstad
Stockfish is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
KRKN, // KR vs KN
KQKP, // KQ vs KP
KQKR, // KQ vs KR
- KBBKN, // KBB vs KN
- KmmKm, // K and two minors vs K and one or two minors
// Scaling functions
SCALE_FUNS,
- KBPsK, // KB+pawns vs K
- KQKRPs, // KQ vs KR+pawns
+ KBPsK, // KB and pawns vs K
+ KQKRPs, // KQ vs KR and pawns
KRPKR, // KRP vs KR
KRPKB, // KRP vs KB
KRPPKRP, // KRPP vs KRP
- KPsK, // King and pawns vs king
+ KPsK, // K and pawns vs K
KBPKB, // KBP vs KB
KBPPKB, // KBPP vs KB
KBPKN, // KBP vs KN
struct EndgameBase {
virtual ~EndgameBase() {}
- virtual Color color() const = 0;
+ virtual Color strong_side() const = 0;
virtual T operator()(const Position&) const = 0;
};
struct Endgame : public EndgameBase<T> {
explicit Endgame(Color c) : strongSide(c), weakSide(~c) {}
- Color color() const { return strongSide; }
+ Color strong_side() const { return strongSide; }
T operator()(const Position&) const;
private: