osl::checkmate::DualDfpn::OraclePool Struct 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 Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
osl::checkmate::DualDfpn::OraclePool Struct Reference
Collaboration diagram for osl::checkmate::DualDfpn::OraclePool:
[legend]

## Classes
struct | Element
struct | List

## Public Types
typedef hash_map< HashKey, List > | 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 32 of file dualDfpn.cc.

## Member Typedef Documentation

typedef hash_map<HashKey, List> osl::checkmate::DualDfpn::OraclePool::table_t

Definition at line 60 of file dualDfpn.cc.

## Member Function Documentation

template<Direction DIR>

static void osl::checkmate::DualDfpn::OraclePool::addKey | ( | HashKey & | key,
|  | const SimpleState & | state,
|  | Square | target
| ) |  |
| inlinestatic

Definition at line 94 of file dualDfpn.cc.

References osl::hash::HashGenTable::addHashKey(), osl::DirectionTraits< Dir >::blackOffset(), osl::hash::Hash_Gen_Table, and osl::Piece::ptypeO().

template<Direction DIR, Direction DIR2>

static void osl::checkmate::DualDfpn::OraclePool::addKey | ( | HashKey & | key,
|  | const SimpleState & | state,
|  | Square | target
| ) |  |
| inlinestatic

Definition at line 102 of file dualDfpn.cc.

References osl::hash::HashGenTable::addHashKey(), osl::DirectionTraits< Dir >::blackOffset(), osl::hash::Hash_Gen_Table, and osl::Piece::ptypeO().

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

Definition at line 67 of file dualDfpn.cc.

References makeLargeKey(), table, and osl::WHITE.

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

Definition at line 110 of file dualDfpn.cc.

References osl::hash::HashGenTable::addHashKey(), osl::Centering3x3::adjustCenter(), center, defender, and osl::hash::Hash_Gen_Table.

Referenced by makeLargeKey().

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

Definition at line 124 of file dualDfpn.cc.

References osl::hash::HashGenTable::addHashKey(), osl::Centering5x3::adjustCenter(), center, defender, osl::hash::Hash_Gen_Table, and makeKey().

Referenced by addProof(), and probe().

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

Definition at line 78 of file dualDfpn.cc.

References makeLargeKey(), and table.

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

Definition at line 63 of file dualDfpn.cc.

References osl::alt(), and defender.

## Member Data Documentation

Player osl::checkmate::DualDfpn::OraclePool::defender

Definition at line 62 of file dualDfpn.cc.

Referenced by makeKey(), makeLargeKey(), and setAttack().

table_t osl::checkmate::DualDfpn::OraclePool::table

Definition at line 61 of file dualDfpn.cc.

Referenced by addProof(), and probe().

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

- dualDfpn.cc