Index
Main
Namespaces
Classes
Hierarchy
Annotated
Files
Compound
Global
Pages
Todo List
Class
GoBlock
Avoid cyclic dependency with
GoBlock
Member
GoBlock::Liberties
() const
slow
Member
GoChainCondition::UsesLibs
() const
make a base class without libs
Member
GoChainCondition::m_type
replace by class
Member
GoGameRecord::CurrentNode
() const
changed from protected to public because of getting the current time left.
Member
GoGameRecord::CurrentNode
()
changed from protected to public because of getting the current time left.
Member
GoGameRecord::GetScore
(int *score) const
: in what units? Return true if there's a score recorded in the tree, otherwise false. Override to return information about the score from a player.
Member
GoGame::PlayHumanMove
(SgMove move, SgBlackWhite player)
AR: to be replaced by HumanPlayer.
Member
GoGameRecord::InitFromRoot
(
SgNode
*root, bool fTakeOwnership)
AR: change comment
Member
GoGameRecord::InitFromRoot
(
SgNode
*root, bool fTakeOwnership)
get handicap from properties, not from board
get komi from properties, not from board
Class
GoRegion
Avoid cyclic dependency with
GoBlock
Member
GoRegion::AllEmptyAreLibs
() const
does not test only for boundary block libs, but all libs.
Member
GoRegion::ComputeIs1Vital
() const
explain the algorithm.
Member
GoRegion::Find2FreeLibs
(const
GoChain
*c1, const
GoChain
*c2, SgPoint *lib1, SgPoint *lib2) const
In future, must respect all other chain conditions active in this region.
Member
GoRegion::FindChains
(const
GoRegionBoard
&ra)
There must be faster ways to do this.
Member
GoRegion::InteriorEmpty
(SgVector< SgPoint > *interiorEmpty, int maxNu) const
does not test only for boundary block libs, but all libs.
Member
GoRegionBoard::GenChains
()
currently this only creates 1 chain for each block. The merging is only done in
GoSafetySolver::GenBlocksRegions()
and must be moved here.
Member
GoRegionBoard::m_computedHealthy
in fully incremental mode, this should be determined locally for each block, not globally.
Member
GoRegionBoard::s_alloc
do it in debug only
Member
GoSearch::CheckDepthLimitReached
() const
Remove. Implement it in the subclasses, because it depends on the move generation there.
Class
GoSortedMoves
make maxNuMoves a template parameter, use instead of GO_SORTED_MOVES_MAX
File
GoBoardCheckPerformance.h
check performance on different kinds of positions. check execute/undo move, full board repetition, etc.
File
GoEyeCount.h
the implementation of seki support is incomplete.
needs unit test cases.
Member
GoEyeStatus
there are more cases, see Landman's paper in Games of no Chance. Will add them later as needed.
Member
IsAliveBlock
needs to check if all points in block are adjacent to defender's stones - to avoid bent 4, 3x2 in corner etc.
Member
IsAlwaysAliveBlock
needs to check if all points in block are adjacent to defender's stones - to avoid bent 4, 3x2 in corner etc.
Member
IsBentFour
rewrite using the pattern symmetry functions
Member
GoEyeUtil::TestNakade
(const
SgPointSet
&points, const
GoBoard
&bd, SgBlackWhite color, bool isFullyEnclosed, bool &isNakade, bool &makeNakade, bool &makeFalse, bool &maybeSeki, bool &sureSeki, SgPoint *vital)
: seki support is primitive only. vital is set iff makeNakade or makeFalse
Member
GoEyeUtil::IsSimpleEye
(const
GoBoard
&bd, SgPoint p, SgBlackWhite c)
Add example to documentation where this method fails
Member
GoRegionFlag
Does not follow naming convention for constants in global namespace; rename to all-uppercase and use prefix GO_
Member
TwoSeparateEyes
To be replaced by incremental region code, which will recognize the eye regions. Right now, test only for special cases, not even Benson. 1. single block 2 eyes 2. simple check for 2 blocks
Namespace
GoBoardWrite
move into its own file
17 Jun 2010
Doxygen
1.4.7