osl::checkmate::ProofTreeDepthDfpn Class Reference

- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

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< Table > | table

## 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

Definition at line 117 of file proofTreeDepthDfpn.cc.

References osl::checkmate::DfpnRecordBase::best_move, depth, osl::checkmate::FixedDepthSearcher::hasCheckmateMoveOfTurn(), osl::checkmate::ProofDisproof::isCheckmateSuccess(), osl::Move::isNormal(), osl::PieceStand::nextStand(), osl::checkmate::DfpnRecordBase::proof_disproof, and osl::WHITE.

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:

- proofTreeDepthDfpn.h
- proofTreeDepthDfpn.cc