Index   Main   Namespaces   Classes   Hierarchy   Annotated   Files   Compound   Global   Pages  

SgEvaluatedMovesArray Class Reference

#include <SgEvaluatedMoves.h>

Inheritance diagram for SgEvaluatedMovesArray:

Inheritance graph
[legend]
List of all members.

Detailed Description

Simple data structure keeps an integer value for each point on a board.

Todo:
better name: SgEvaluatedPoints?

Definition at line 109 of file SgEvaluatedMoves.h.

Public Member Functions

 SgEvaluatedMovesArray (const SgPointSet &relevant, int boardSize=SG_MAX_SIZE)
virtual ~SgEvaluatedMovesArray ()
 SgEvaluatedMovesArray (const SgEvaluatedMovesArray &original)
virtual void AddMove (SgPoint move, int value)
virtual void ReduceMove (SgPoint move, int value)
virtual void Clear ()
void Write () const
virtual SgEvaluatedMovesDuplicate () const
virtual int GetEvaluation (SgPoint p) const
virtual void BestMoves (SgVector< SgPoint > &best, int nuMoves) const
 Compute list of the n best moves.
virtual void AddMoves (const SgPointSet &moves, int value)
virtual void AddMoves (const SgVector< SgPoint > &moves, int value)
SgPoint BestMove ()
int BestValue ()
const SgPointSetRelevant () const
bool IsRelevant (SgPoint p) const
void Disable (SgPoint p)
void Enable (SgPoint p)

Protected Attributes

int m_bestValue
SgVector< SgPointm_moveList
SgPointSet m_relevant

Static Protected Attributes

static const int s_minValue = INT_MIN + 1

Private Member Functions

SgPoint SelectNextBest (SgVector< SgPoint > &bestSoFar) const

Private Attributes

int m_value [SG_MAXPOINT]
int m_boardSize


Constructor & Destructor Documentation

SgEvaluatedMovesArray::SgEvaluatedMovesArray ( const SgPointSet relevant,
int  boardSize = SG_MAX_SIZE 
) [explicit]

Definition at line 61 of file SgEvaluatedMoves.cpp.

References m_value, and SG_MAXPOINT.

Referenced by Duplicate().

virtual SgEvaluatedMovesArray::~SgEvaluatedMovesArray (  )  [virtual]

Definition at line 116 of file SgEvaluatedMoves.h.

SgEvaluatedMovesArray::SgEvaluatedMovesArray ( const SgEvaluatedMovesArray original  ) 

Definition at line 119 of file SgEvaluatedMoves.h.

References m_value, and SG_MAXPOINT.


Member Function Documentation

void SgEvaluatedMovesArray::AddMove ( SgPoint  move,
int  value 
) [virtual]

Reimplemented from SgEvaluatedMoves.

Definition at line 70 of file SgEvaluatedMoves.cpp.

References SgEvaluatedMoves::AddMove(), SgPointUtil::InBoardRange(), SgEvaluatedMoves::m_relevant, and m_value.

void SgEvaluatedMoves::AddMoves ( const SgVector< SgPoint > &  moves,
int  value 
) [virtual, inherited]

Definition at line 39 of file SgEvaluatedMoves.cpp.

References SgEvaluatedMoves::AddMove().

void SgEvaluatedMoves::AddMoves ( const SgPointSet moves,
int  value 
) [virtual, inherited]

Definition at line 33 of file SgEvaluatedMoves.cpp.

References SgEvaluatedMoves::AddMove().

SgPoint SgEvaluatedMoves::BestMove (  )  [inherited]

Definition at line 45 of file SgEvaluatedMoves.cpp.

References SgRandom::Global(), SgRandom::Int(), SgEvaluatedMoves::m_moveList, and SG_PASS.

void SgEvaluatedMovesArray::BestMoves ( SgVector< SgPoint > &  best,
int  nuMoves 
) const [virtual]

Compute list of the n best moves.

Reimplemented from SgEvaluatedMoves.

Definition at line 103 of file SgEvaluatedMoves.cpp.

References SgVector< T >::Clear(), SgVector< T >::PushBack(), and SelectNextBest().

int SgEvaluatedMoves::BestValue (  )  [inherited]

Definition at line 52 of file SgEvaluatedMoves.h.

References SgEvaluatedMoves::m_bestValue.

void SgEvaluatedMovesArray::Clear (  )  [virtual]

Reimplemented from SgEvaluatedMoves.

Definition at line 132 of file SgEvaluatedMoves.cpp.

References m_value, and SG_MAXPOINT.

void SgEvaluatedMoves::Disable ( SgPoint  p  )  [inherited]

Definition at line 67 of file SgEvaluatedMoves.h.

References SgPointSet::Exclude(), and SgEvaluatedMoves::m_relevant.

virtual SgEvaluatedMoves* SgEvaluatedMovesArray::Duplicate (  )  const [virtual]

Reimplemented from SgEvaluatedMoves.

Definition at line 135 of file SgEvaluatedMoves.h.

References SgEvaluatedMovesArray().

void SgEvaluatedMoves::Enable ( SgPoint  p  )  [inherited]

Definition at line 72 of file SgEvaluatedMoves.h.

References SgPointSet::Include(), and SgEvaluatedMoves::m_relevant.

virtual int SgEvaluatedMovesArray::GetEvaluation ( SgPoint  p  )  const [virtual]

Reimplemented from SgEvaluatedMoves.

Definition at line 140 of file SgEvaluatedMoves.h.

References m_value.

bool SgEvaluatedMoves::IsRelevant ( SgPoint  p  )  const [inherited]

Definition at line 62 of file SgEvaluatedMoves.h.

References SgEvaluatedMoves::m_relevant.

void SgEvaluatedMovesArray::ReduceMove ( SgPoint  move,
int  value 
) [virtual]

Definition at line 79 of file SgEvaluatedMoves.cpp.

References SgEvaluatedMoves::AddMove(), SgPointUtil::InBoardRange(), SgEvaluatedMoves::m_relevant, and m_value.

const SgPointSet& SgEvaluatedMoves::Relevant (  )  const [inherited]

Definition at line 57 of file SgEvaluatedMoves.h.

References SgEvaluatedMoves::m_relevant.

SgPoint SgEvaluatedMovesArray::SelectNextBest ( SgVector< SgPoint > &  bestSoFar  )  const [private]

Definition at line 88 of file SgEvaluatedMoves.cpp.

References SgVector< T >::Contains(), m_value, SgEvaluatedMoves::s_minValue, and SG_MAXPOINT.

Referenced by BestMoves().

void SgEvaluatedMovesArray::Write (  )  const

Definition at line 114 of file SgEvaluatedMoves.cpp.

References SgPointUtil::Letter(), m_boardSize, m_value, SgPointUtil::Pt(), and SgDebug().


Member Data Documentation

int SgEvaluatedMoves::m_bestValue [protected, inherited]

Definition at line 94 of file SgEvaluatedMoves.h.

Referenced by SgEvaluatedMoves::AddMove(), SgEvaluatedMoves::BestValue(), SgEvaluatedMoves::Clear(), and SgEvaluatedMoves::GetEvaluation().

int SgEvaluatedMovesArray::m_boardSize [private]

Definition at line 150 of file SgEvaluatedMoves.h.

Referenced by Write().

SgVector<SgPoint> SgEvaluatedMoves::m_moveList [protected, inherited]

Definition at line 96 of file SgEvaluatedMoves.h.

Referenced by SgEvaluatedMoves::AddMove(), SgEvaluatedMoves::BestMove(), SgEvaluatedMoves::BestMoves(), SgEvaluatedMoves::Clear(), and SgEvaluatedMoves::GetEvaluation().

SgPointSet SgEvaluatedMoves::m_relevant [protected, inherited]

Definition at line 98 of file SgEvaluatedMoves.h.

Referenced by AddMove(), SgEvaluatedMoves::AddMove(), SgEvaluatedMoves::Disable(), SgEvaluatedMoves::Enable(), SgEvaluatedMoves::IsRelevant(), ReduceMove(), and SgEvaluatedMoves::Relevant().

int SgEvaluatedMovesArray::m_value[SG_MAXPOINT] [private]

Definition at line 148 of file SgEvaluatedMoves.h.

Referenced by AddMove(), Clear(), GetEvaluation(), ReduceMove(), SelectNextBest(), SgEvaluatedMovesArray(), and Write().

const int SgEvaluatedMoves::s_minValue = INT_MIN + 1 [static, protected, inherited]

Definition at line 101 of file SgEvaluatedMoves.h.

Referenced by SgEvaluatedMoves::Clear(), and SelectNextBest().


The documentation for this class was generated from the following files:


17 Jun 2010 Doxygen 1.4.7