ハッシュ More...
Classes | |
| class | GeneralBoardKey |
| 手番を含んだ盤面の状態のハッシュ値を保持するためのクラス. More... | |
| struct | GeneralHashKey |
| BoardKey + 駒台(piece stand) More... | |
| struct | BoardKey96 |
| struct | HashKey128Layout |
| class | HashKey128 |
| 手番を含んだ盤面の状態のハッシュ値を保持するためのクラス. More... | |
| struct | HashCollision |
| ハッシュの衝突を検出した時に throw するために使う. More... | |
| class | HashKey |
| class | HashGenTable |
| class | HashKeyMix |
| 2つのhashKey(たとえばHashKey32とHashKey64)を保持して, 常に同じ結果(片方で一致して片方で一致しないことがない)であることを assertで確認しながら動くHashKey More... | |
| class | HashKeyStack |
| class | HashRandom |
| class | HashRandomPair |
Typedefs | |
| typedef GeneralBoardKey < unsigned int, 4 > | BoardKey32 |
| typedef GeneralBoardKey < unsigned long long, 2 > | BoardKey64 |
| typedef GeneralHashKey < BoardKey32 > | HashKey32 |
| typedef GeneralHashKey < BoardKey64 > | HashKey64 |
| typedef HashKey128 | HashKeyBase |
| typedef BoardKey96 | BoardKey |
Functions | |
| template<typename Integer , size_t SIZE> | |
| bool | operator== (const GeneralBoardKey< Integer, SIZE > &l, const GeneralBoardKey< Integer, SIZE > &r) |
| template<typename Integer , size_t SIZE> | |
| bool | operator!= (const GeneralBoardKey< Integer, SIZE > &l, const GeneralBoardKey< Integer, SIZE > &r) |
| template<typename Integer , size_t SIZE> | |
| bool | operator< (const GeneralBoardKey< Integer, SIZE > &l, const GeneralBoardKey< Integer, SIZE > &r) |
| set等で使うためのみの不等号. More... | |
| template<typename T > | |
| bool | operator== (const GeneralHashKey< T > &l, const GeneralHashKey< T > &r) |
| template<typename T > | |
| bool | operator!= (const GeneralHashKey< T > &l, const GeneralHashKey< T > &r) |
| template<typename T > | |
| bool | operator< (const GeneralHashKey< T > &l, const GeneralHashKey< T > &r) |
| set等で使うためのみの不等号 full orderであること以外に深い意味はない More... | |
| bool | operator== (const HashKey128 &l, const HashKey128 &r) |
| bool | operator!= (const HashKey128 &l, const HashKey128 &r) |
| bool | operator< (const HashKey128 &l, const HashKey128 &r) |
| set等で使うためのみの不等号. More... | |
| std::ostream & | operator<< (std::ostream &os, const HashKey &h) |
Variables | |
| const HashGenTable | Hash_Gen_Table |
ハッシュ
| typedef BoardKey96 osl::hash::BoardKey |
| typedef GeneralBoardKey<unsigned int,4> osl::hash::BoardKey32 |
Definition at line 224 of file boardKey.h.
| typedef GeneralBoardKey<unsigned long long,2> osl::hash::BoardKey64 |
Definition at line 225 of file boardKey.h.
| typedef GeneralHashKey<BoardKey32> osl::hash::HashKey32 |
Definition at line 226 of file boardKey.h.
| typedef GeneralHashKey<BoardKey64> osl::hash::HashKey64 |
Definition at line 227 of file boardKey.h.
| typedef HashKey128 osl::hash::HashKeyBase |
|
inline |
Definition at line 97 of file boardKey.h.
|
inline |
Definition at line 133 of file boardKey128.h.
|
inline |
Definition at line 206 of file boardKey.h.
|
inline |
|
inline |
set等で使うためのみの不等号.
full orderであること以外に深い意味はない
Definition at line 141 of file boardKey128.h.
References osl::hash::HashKey128::boardKey(), and osl::hash::HashKey128::pieceStand().
|
inline |
set等で使うためのみの不等号 full orderであること以外に深い意味はない
Definition at line 216 of file boardKey.h.
References osl::hash::GeneralHashKey< BoardKeyBase >::board_key.
| std::ostream & osl::hash::operator<< | ( | std::ostream & | os, |
| const HashKey & | h | ||
| ) |
Definition at line 17 of file hashKey.cc.
References osl::hash::HashKey128::boardKey(), osl::hash::HashKey128::pieceStand(), and osl::hash::BoardKey96::size().
|
inline |
Definition at line 89 of file boardKey.h.
|
inline |
Definition at line 129 of file boardKey128.h.
References osl::hash::HashKey128::boardKey(), and osl::hash::HashKey128::pieceStand().
|
inline |
board_keyが違う場合の方が多いだろう
Definition at line 196 of file boardKey.h.
References osl::hash::GeneralHashKey< BoardKeyBase >::board_key, and osl::hash::GeneralHashKey< BoardKeyBase >::piece_stand.
| const hash::HashGenTable osl::hash::Hash_Gen_Table |
Definition at line 118 of file tables.cc.
Referenced by osl::checkmate::DualDfpn::OraclePool::addKey(), osl::hash::HashKey::HashKey(), osl::checkmate::DualDfpn::OraclePool::makeKey(), osl::checkmate::DualDfpn::OraclePool::makeLargeKey(), osl::hash::HashKey::newMakeMove(), and osl::hash::HashKey::newUnmakeMove().
1.8.4