osl::checkmate::ProofTreeDepthDfpn::Table Struct Reference

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

## Public Types

typedef std::unordered_map< HashKey, std::pair< int, Move >, std::hash< HashKey > > | map_t
typedef std::pair< const HashKey, std::pair< int, Move > > | entry_t
typedef std::forward_list< const entry_t * > | list_t
typedef std::unordered_map< BoardKey, list_t, std::hash< BoardKey > > | index_t

## Public Member Functions

| Table (const DfpnTable &t)
void | store (const HashKey &key, int depth, Move best_move=Move())
bool | find (const HashKey &key, int &depth, Move &best_move) const
bool | expectMoreDepth (Player attack, const HashKey &key, int depth) const
int | maxDepth () const

## Public Attributes

boost::scoped_array< NumEffectState > | state
map_t | depth_table
index_t | depth_index
const DfpnTable & | table

## Detailed Description

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

-1 は探索中

Definition at line 14 of file proofTreeDepthDfpn.cc.

## Member Typedef Documentation

## entry_t

typedef std::pair<const HashKey, std::pair<int, Move> > osl::checkmate::ProofTreeDepthDfpn::Table::entry_t

Definition at line 18 of file proofTreeDepthDfpn.cc.

## index_t

typedef std::unordered_map<BoardKey, list_t, std::hash<BoardKey> > osl::checkmate::ProofTreeDepthDfpn::Table::index_t

Definition at line 20 of file proofTreeDepthDfpn.cc.

## list_t

typedef std::forward_list<const entry_t*> osl::checkmate::ProofTreeDepthDfpn::Table::list_t

Definition at line 19 of file proofTreeDepthDfpn.cc.

## map_t

typedef std::unordered_map<HashKey, std::pair<int, Move>, std::hash<HashKey> > osl::checkmate::ProofTreeDepthDfpn::Table::map_t

Definition at line 17 of file proofTreeDepthDfpn.cc.

## Constructor & Destructor Documentation

## Table()

osl::checkmate::ProofTreeDepthDfpn::Table::Table | ( | const DfpnTable & | t | ) |

inline

Definition at line 24 of file proofTreeDepthDfpn.cc.

References maxDepth(), state, and table.

## Member Function Documentation

## expectMoreDepth()

bool osl::checkmate::ProofTreeDepthDfpn::Table::expectMoreDepth | ( | Player | attack,
|  | const HashKey & | key,
|  | int | depth ) const

inline

Definition at line 42 of file proofTreeDepthDfpn.cc.

References osl::BLACK, osl::hash::HashKey128::blackStand(), osl::hash::HashKey128::boardKey(), osl::checkmate::ProofTreeDepthDfpn::depth(), depth_index, and osl::PieceStand::isSuperiorOrEqualTo().

## find()

bool osl::checkmate::ProofTreeDepthDfpn::Table::find | ( | const HashKey & | key,
|  | int & | depth,
|  | Move & | best_move ) const

inline

Definition at line 33 of file proofTreeDepthDfpn.cc.

References osl::checkmate::ProofTreeDepthDfpn::depth(), and depth_table.

## maxDepth()

int osl::checkmate::ProofTreeDepthDfpn::Table::maxDepth | ( |  | ) | const

inline

Definition at line 70 of file proofTreeDepthDfpn.cc.

References table.

Referenced by Table().

## store()

void osl::checkmate::ProofTreeDepthDfpn::Table::store | ( | const HashKey & | key,
|  | int | depth,
|  | Move | best_move = Move() )

inline

Definition at line 27 of file proofTreeDepthDfpn.cc.

References osl::hash::HashKey128::boardKey(), osl::checkmate::ProofTreeDepthDfpn::depth(), depth_index, and depth_table.

## Member Data Documentation

## depth_index

index_t osl::checkmate::ProofTreeDepthDfpn::Table::depth_index

Definition at line 22 of file proofTreeDepthDfpn.cc.

Referenced by expectMoreDepth(), and store().

## depth_table

map_t osl::checkmate::ProofTreeDepthDfpn::Table::depth_table

Definition at line 21 of file proofTreeDepthDfpn.cc.

Referenced by find(), and store().

## state

boost::scoped_array<NumEffectState> osl::checkmate::ProofTreeDepthDfpn::Table::state

Definition at line 16 of file proofTreeDepthDfpn.cc.

Referenced by Table().

## table

const DfpnTable& osl::checkmate::ProofTreeDepthDfpn::Table::table

Definition at line 23 of file proofTreeDepthDfpn.cc.

Referenced by maxDepth(), and Table().

The documentation for this struct was generated from the following file:

- proofTreeDepthDfpn.cc