My Project
checkmate::DualDfpn::OraclePool Struct Reference

Public Types

typedef std::unordered_map< HashKey, List, std::hash< HashKey > > table_t
 

Public Member Functions

void setAttack (Player attack)
 
void addProof (const NumEffectState &state, const HashKey &key, PieceStand proof_pieces)
 
const List probe (const NumEffectState &state) const
 
const HashKey makeKey (const SimpleState &state) const
 
const std::pair< HashKey, HashKey > makeLargeKey (const SimpleState &state) const
 

Static Public Member Functions

template<Direction DIR>
static void addKey (HashKey &key, const SimpleState &state, Square target)
 
template<Direction DIR, Direction DIR2>
static void addKey (HashKey &key, const SimpleState &state, Square target)
 

Public Attributes

table_t table
 
Player defender
 

Detailed Description

Definition at line 31 of file dualDfpn.cc.

Member Typedef Documentation

◆ table_t

std::unordered_map<HashKey, List, std::hash<HashKey> > checkmate::DualDfpn::OraclePool::table_t

Definition at line 59 of file dualDfpn.cc.

Member Function Documentation

◆ addKey() [1/2]

template<Direction DIR>
static void checkmate::DualDfpn::OraclePool::addKey ( HashKey & key,
const SimpleState & state,
Square target )
inlinestatic

Definition at line 93 of file dualDfpn.cc.

◆ addKey() [2/2]

template<Direction DIR, Direction DIR2>
static void checkmate::DualDfpn::OraclePool::addKey ( HashKey & key,
const SimpleState & state,
Square target )
inlinestatic

Definition at line 101 of file dualDfpn.cc.

◆ addProof()

void checkmate::DualDfpn::OraclePool::addProof ( const NumEffectState & state,
const HashKey & key,
PieceStand proof_pieces )
inline

Definition at line 66 of file dualDfpn.cc.

References checkmate::DualDfpn::OraclePool::makeLargeKey().

◆ makeKey()

const HashKey checkmate::DualDfpn::OraclePool::makeKey ( const SimpleState & state) const
inline

Definition at line 109 of file dualDfpn.cc.

Referenced by checkmate::DualDfpn::OraclePool::makeLargeKey().

◆ makeLargeKey()

const std::pair< HashKey, HashKey > checkmate::DualDfpn::OraclePool::makeLargeKey ( const SimpleState & state) const
inline

◆ probe()

const List checkmate::DualDfpn::OraclePool::probe ( const NumEffectState & state) const
inline

Definition at line 77 of file dualDfpn.cc.

References checkmate::DualDfpn::OraclePool::makeLargeKey().

◆ setAttack()

void checkmate::DualDfpn::OraclePool::setAttack ( Player attack)
inline

Definition at line 62 of file dualDfpn.cc.

Member Data Documentation

◆ defender

Player checkmate::DualDfpn::OraclePool::defender

Definition at line 61 of file dualDfpn.cc.

◆ table

table_t checkmate::DualDfpn::OraclePool::table

Definition at line 60 of file dualDfpn.cc.


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