All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Classes | Public Member Functions | Private Member Functions | Private Attributes | List of all members
osl::checkmate::ProofTreeDepthDfpn Class Reference

詰までの手数を数える. More...

#include <proofTreeDepthDfpn.h>

Classes

struct  Table
 深さを記憶するテーブル. More...
 

Public Member Functions

 ProofTreeDepthDfpn (const DfpnTable &table)
 
 ~ProofTreeDepthDfpn ()
 
int depth (const HashKey &key, const state::NumEffectState &state, bool is_or_node) const
 
void retrievePV (const state::NumEffectState &state, bool is_or_node, vector< Move > &pv) const
 

Private Member Functions

int orNode (const HashKey &key, Move &best_move, int height=0) const
 
int andNode (const HashKey &key, Move &best_move, int height=0) const
 

Private Attributes

boost::scoped_ptr< Tabletable
 

Detailed Description

詰までの手数を数える.

詰将棋ルーチン次第で,無駄合なども含まれるため 人間の感覚と一致するとは限らない.

Definition at line 24 of file proofTreeDepthDfpn.h.

Constructor & Destructor Documentation

osl::checkmate::ProofTreeDepthDfpn::ProofTreeDepthDfpn ( const DfpnTable table)
explicit

Definition at line 76 of file proofTreeDepthDfpn.cc.

osl::checkmate::ProofTreeDepthDfpn::~ProofTreeDepthDfpn ( )

Definition at line 82 of file proofTreeDepthDfpn.cc.

Member Function Documentation

int osl::checkmate::ProofTreeDepthDfpn::andNode ( const HashKey &  key,
Move best_move,
int  height = 0 
) const
private

Definition at line 178 of file proofTreeDepthDfpn.cc.

References osl::alt(), osl::BLACK, depth, moves, and result.

int osl::checkmate::ProofTreeDepthDfpn::depth ( const HashKey &  key,
const state::NumEffectState state,
bool  is_or_node 
) const

Definition at line 87 of file proofTreeDepthDfpn.cc.

int osl::checkmate::ProofTreeDepthDfpn::orNode ( const HashKey &  key,
Move best_move,
int  height = 0 
) const
private
void osl::checkmate::ProofTreeDepthDfpn::retrievePV ( const state::NumEffectState state,
bool  is_or_node,
vector< Move > &  pv 
) const

Definition at line 96 of file proofTreeDepthDfpn.cc.

References osl::Move::isNormal().

Referenced by osl::checkmate::Dfpn::hasCheckmateMove().

Member Data Documentation

boost::scoped_ptr<Table> osl::checkmate::ProofTreeDepthDfpn::table
private

Definition at line 26 of file proofTreeDepthDfpn.h.


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