Main   Namespaces   Classes   Hierarchy   Annotated   Files   Compound   Global   Pages  

Todo List

File BenzeneBitset.hpp
Uses a lot of gcc builtins. Make this more portable?

Page BenzeneTest
Add more documentation about BenzeneTest!

Member BookBuilder::CreateWorkers ()
Use concept checking to verify this method exists.

Member BookUtil::BestMove (const Book &book, const HexState &state, unsigned minCount, float countWeight)
Does not consider SWAP_PIECES if it is available. Returns INVALID_POINT if not in book or if node's count is less than minCount.

Member ChangeLog::clear ()
vector::clear() takes linear time. Is this a problem?

Member ChangeLog::topAction () const
how to write this method using the 'inline' syntax? I keep getting compile errors.

Member ConstBoard::m_all_index
remove?

File DfsSolver.cpp
Finish converting over to using HexStates.

Member DfsSolver::HandleProof (const PointSequence &variation, bool winning_state, DfsSolutionSet &solution)
HANDLE BEST MOVES PROPERLY! This can only happen if the mustplay goes empty in an internal state that wasn't determined initially, or in a decomp state where the fillin causes a terminal state.

Member EndgameUtils::MovesToConsider (const HexBoard &brd, HexColor color)

MOVE THIS OUT OF HERE!

Class Game
Store time-info in history, so that undoing moves fixes the time remaining.

Member Group::Size () const
Cache group size for speed?

Class Groups
If a HexPosition class is ever created, store the HexPosition for which these groups were computed.

Member Groups::GroupIndex (HexPoint point, HexColorSet colorset) const
Take this out? Only used in Resistance.

Member Groups::GroupIndex (HexPoint point, HexColor color) const
Take this out? Only used in Resistance.

Class HandCodedPattern
Want hand-coded vulnerable patterns, not just dominated

Class HandicapPlayer
CLEANUP!

Class HexBoard
Document me!

Member HexBoard::HandleVCDecomposition (HexColor color_to_move, bool use_changelog)
Check for a vc win/loss here instead of just solid chains.

Member HexEnvironment::NewGame (int width, int height)
Make board resizable? Until then, make sure all HexBoard parameters are copied here!

File HexUctPolicy.cpp
Pattern statistics are collected for each thread. Add functionality to combine the stats from each thread before displaying them. Only do this if pattern statistics are actually required, obviously.

Member HexUctPolicy::InitializeForSearch ()
Pass initialial tree and initialize off of that?

Member HexUctSharedData::root_last_move_played
Remove and use game_sequence to get this info?

Member ICEngine::BackupOpponentDead (HexColor color, const StoneBoard &board, PatternState &pastate, InferiorCells &out) const

Link to the "ice-backup-opp-dead" option, or link it's documentation here.

Add if already vulnerable?

Member ICEngine::ComputeDeadCaptured (Groups &board, PatternState &pastate, InferiorCells &inf, HexColorSet colors_to_capture) const
This can be optimized quite a bit.

Member ICEngine::FindMutualFillin () const
Document mutual fillin.

Member ICEngine::FindPermanentlyInferior () const
Document permanently inferior cells.

Member ICEngine::FindPresimplicialPairs () const
Document what presimplicial pairs are!

Member ICEngine::FindThreeSidedDeadRegions () const
Document three sided dead regions.

Member ICEngine::IterativeDeadRegions () const
Link to fillin algo documentation!

Member ICEngine::UseHandCodedPatterns () const
Document hand coded patterns.

File InferiorCells.cpp

Handle a sink in the dominated component graph being partially outside the mustplay -- in this case, no representative of the sink need be chosen (they are all losing).

Member InferiorCells::Dominated () const
ensure m_dominated is disjoint from all others.

Member InferiorCells::FindPresimplicialPairs () const
Handle vulnerable cycles larger than length 2? If they occur, they are extrememly rare, so it is probably not worth it.

Group Methods defined on cells and edges.
Why did we agree on this? :)

Page MoHex
Add more documentation about MoHex!

Member MoHexPlayer::PerformPreSearch (HexBoard &brd, HexColor color, bitset_t &consider, float maxTime, PointSequence &winningSequence)
Is it true that MoHex will resist in the strongest way possible?

Member PatternState::MatchOnBoard (const bitset_t &consider, const HashedPatternSet &patset, MatchMode mode, std::vector< PatternHits > &hits) const
Can we switch hits to be a map instead of a vector? Will a map be too slow?

File PatternStateTest.cpp

Test a black pattern.

Test that the obtuse corner is both black and white.

Test PatternHits::moves2() functionality.

Test that an arbitrary carrier (more than 1 cell) is correct when returned in PatternHits::moves{1/2}().

Test that incremental updates work the same as complete updates.

Member ProofUtil::InitialProofForOpponent (const HexBoard &brd, HexColor toPlay)
Argh, document this better.

Member RESIGN

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

Member Resistance::Score (HexPoint cell, HexColor color) const
How to handle bad cells?

Member Resistance::Score (HexPoint cell) const
How to handle bad cells?

Member SearchedState::ReplaceWith (const SearchedState &other) const
check for better bounds/scores?

Member StoneBoard::GetBoardIDString () const
Moves this out of here?

Member StoneBoard::SetColor (HexColor color, const bitset_t &bs)
Should we make this support EMPTY color too?

Member SWAP_PIECES

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

since this is not really a point on a board, should we create a HexMove class and put this there?

Namespace SwapCheck

This functionality should be in the book.

Member VariationInfo::ReplaceWith (const VariationInfo &other) const
check for better bounds/scores?

Member VCBuilderParam::use_greedy_union
DOCUMENT GREEDY UNION!

File VCListTest.cpp

Write tests for the following methods:

Member VCSet::m_vc [VC::NUM_TYPES][BITSETSIZE][BITSETSIZE]
use actual boardsize instead of BITSETSIZE?

Member VCUtils::GetMustplay (const HexBoard &brd, HexColor color)
Document what the mustplay is!

Member VulnerableKiller::operator== (const VulnerableKiller &other) const
This ignores the carrier. This means only the first (killer, carrier) pair is stored for each killer. We may want to keep only the smallest carrier, or all of them.

Member VulPreCheck::KillLastMove (HexBoard &brd, const Game &game_state, HexColor color)
Make this both colors (ie, dead) once PatternState supports stones of both colors.

Page Wolve
Add more documentation about Wolve!

Class WolveSearch
Switch to SgSearch instead of HexAbSearch?


6 Jan 2011 Doxygen 1.6.3