Main   Namespaces   Classes   Hierarchy   Annotated   Files   Compound   Global   Pages  

DfsCommands.hpp

Go to the documentation of this file.
00001 //----------------------------------------------------------------------------
00002 /** @file DfsCommands.hpp
00003  */
00004 //----------------------------------------------------------------------------
00005 
00006 #ifndef SOLVERCOMMANDS_HPP
00007 #define SOLVERCOMMANDS_HPP
00008 
00009 #include "Game.hpp"
00010 #include "HexBoard.hpp"
00011 #include "HexHtpEngine.hpp"
00012 #include "HexEnvironment.hpp"
00013 #include "DfsSolver.hpp"
00014 
00015 _BEGIN_BENZENE_NAMESPACE_
00016 
00017 //----------------------------------------------------------------------------
00018 
00019 /** Commands for building/inspecting virtual connections. */
00020 class DfsCommands
00021 {
00022 public:
00023     DfsCommands(Game& game, HexEnvironment& env, DfsSolver& solver,
00024                 boost::scoped_ptr<DfsHashTable>& tt, 
00025                 boost::scoped_ptr<DfsDB>& db, 
00026                 DfsStates& positions);
00027 
00028     void Register(GtpEngine& engine);
00029 
00030 private:
00031     Game& m_game;
00032 
00033     HexEnvironment& m_env;
00034 
00035     DfsSolver& m_solver;
00036 
00037     boost::scoped_ptr<DfsHashTable>& m_tt;
00038 
00039     boost::scoped_ptr<DfsDB>& m_db;
00040 
00041     DfsStates& m_positions;
00042 
00043     void Register(GtpEngine& engine, const std::string& command,
00044                   GtpCallback<DfsCommands>::Method method);
00045 
00046     void CmdParamSolver(HtpCommand& cmd);
00047     void CmdParamSolverDB(HtpCommand& cmd);
00048     void CmdSolveState(HtpCommand& cmd);
00049     void CmdSolverClearTT(HtpCommand& cmd);
00050     void CmdSolverFindWinning(HtpCommand& cmd);
00051     void CmdDBOpen(HtpCommand& cmd);
00052     void CmdDBClose(HtpCommand& cmd);
00053     void CmdDBStat(HtpCommand& cmd);
00054     void CmdGetState(HtpCommand& cmd);
00055     void CmdGetPV(HtpCommand& cmd);
00056     void CmdHistogram(HtpCommand& cmd);
00057 };
00058 
00059 //----------------------------------------------------------------------------
00060 
00061 _END_BENZENE_NAMESPACE_
00062 
00063 #endif // SOLVERCOMMANDS_HPP


6 Jan 2011 Doxygen 1.6.3