Implement Search
This commit is contained in:
@@ -3,23 +3,33 @@
|
||||
|
||||
#include "Move.hpp"
|
||||
#include "Piece.hpp"
|
||||
#include "Board.hpp"
|
||||
|
||||
#include <iosfwd>
|
||||
#include <cstddef>
|
||||
#include <vector>
|
||||
|
||||
class PrincipalVariation {
|
||||
public:
|
||||
|
||||
using MoveIter = Move*;
|
||||
using MoveIter = std::vector<Move>::const_iterator;
|
||||
|
||||
PrincipalVariation() = default;
|
||||
PrincipalVariation(const std::vector<Move> &v, bool isMate);
|
||||
PrincipalVariation(const std::vector<Move> &v, Board &board);
|
||||
bool isMate() const;
|
||||
int score() const;
|
||||
|
||||
std::size_t length() const;
|
||||
MoveIter begin() const;
|
||||
MoveIter end() const;
|
||||
|
||||
private:
|
||||
std::vector<Move> mMoves;
|
||||
bool mIsMate = false;
|
||||
int mScore = 0;
|
||||
};
|
||||
|
||||
std::ostream& operator<<(std::ostream& os, const PrincipalVariation& pv);
|
||||
std::ostream &operator<<(std::ostream &os, const PrincipalVariation &pv);
|
||||
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user