Simple move generators. More...
#include <SpMoveGenerator.h>
Public Member Functions | |
SpMoveGenerator (const GoBoard &board) | |
virtual | ~SpMoveGenerator () |
virtual void | GenerateMoves (SgEvaluatedMoves &eval, SgBlackWhite toPlay) |
virtual int | EvaluateMove (SgPoint p)=0 |
Execute move if necessary, and then score. | |
Protected Member Functions | |
SpMoveGenerator (const SpMoveGenerator &) | |
Not implemented. | |
SpMoveGenerator & | operator= (const SpMoveGenerator &) |
Not implemented. | |
Protected Attributes | |
const GoBoard & | m_board |
Reference to go board on which to play. |
Simple move generators.
Either static or 1-ply lookahead
Definition at line 17 of file SpMoveGenerator.h.
SpMoveGenerator::SpMoveGenerator | ( | const GoBoard & | board | ) | [explicit] |
Definition at line 20 of file SpMoveGenerator.h.
virtual SpMoveGenerator::~SpMoveGenerator | ( | ) | [virtual] |
Definition at line 24 of file SpMoveGenerator.h.
SpMoveGenerator::SpMoveGenerator | ( | const SpMoveGenerator & | ) | [protected] |
Not implemented.
virtual int SpMoveGenerator::EvaluateMove | ( | SgPoint | p | ) | [pure virtual] |
Execute move if necessary, and then score.
Implemented in SpStaticMoveGenerator, and Sp1PlyMoveGenerator.
Referenced by GenerateMoves(), and SpSimplePlayer::MoveValue().
void SpMoveGenerator::GenerateMoves | ( | SgEvaluatedMoves & | eval, | |
SgBlackWhite | toPlay | |||
) | [virtual] |
Reimplemented in SpDumbTacticalMoveGenerator, and SpLadderMoveGenerator.
Definition at line 18 of file SpMoveGenerator.cpp.
References SgEvaluatedMoves::AddMove(), GoModBoard::Board(), EvaluateMove(), m_board, SgEvaluatedMoves::Relevant(), and GoBoard::SetToPlay().
Referenced by SpSimplePlayer::GenMove().
SpMoveGenerator& SpMoveGenerator::operator= | ( | const SpMoveGenerator & | ) | [protected] |
Not implemented.
const GoBoard& SpMoveGenerator::m_board [protected] |
Reference to go board on which to play.
Definition at line 33 of file SpMoveGenerator.h.
Referenced by SpSafeMoveGenerator::Evaluate(), SpMinLibMoveGenerator::Evaluate(), SpMaxEyeMoveGenerator::Evaluate(), SpInfluenceMoveGenerator::Evaluate(), SpGreedyMoveGenerator::Evaluate(), SpCaptureMoveGenerator::Evaluate(), SpAverageMoveGenerator::Evaluate(), SpStaticMoveGenerator::EvaluateMove(), Sp1PlyMoveGenerator::EvaluateMove(), SpDumbTacticalMoveGenerator::GenerateAttackMoves(), SpDumbTacticalMoveGenerator::GenerateDefendMoves(), GenerateMoves(), SpLadderMoveGenerator::GenerateMoves(), SpDumbTacticalMoveGenerator::GenerateMoves(), SpMaxEyeMoveGenerator::Heuristic(), SpMinLibMoveGenerator::LibertyMinimum(), SpRandomMoveGenerator::Score(), and SpLibertyMoveGenerator::Score().