手番を含んだ盤面の状態のハッシュ値を保持するためのクラス. More...
#include <boardKey128.h>


| Classes | |
| struct | StandHash | 
| Public Member Functions | |
| HashKey128 () | |
| HashKey128 (uint64_t h0, uint32_t h1, uint32_t s) | |
| HashKey128 (const HashKey128Layout &src) | |
| const BoardKey96 | boardKey () const | 
| uint64_t | boardKey64 () const | 
| uint64_t | signature () const | 
| uint64_t | hash64 () const | 
| 持駒も含んだ64bitのハッシュ  More... | |
| uint64_t | pieceStand64 () const | 
| const PieceStand | pieceStand () const | 
| const PieceStand | blackStand () const | 
| void | setPieceStand (const PieceStand &p) | 
| bool | isSameBoard (const HashKey128 &key) const | 
| 駒台の情報を除いて同じかどうか.  More... | |
| HashKey128 & | operator+= (const HashKey128 &r) | 
| HashKey128 & | operator-= (const HashKey128 &r) | 
| void | add (Move move) | 
| void | changeTurn () | 
| void | setPlayer (Player p) | 
| bool | playerBit () const | 
| bool | isPlayerOfTurn (Player p) const | 
| Player | turn () const | 
| void | setRandom () | 
| 乱数で初期化.  More... | |
| size_t | size () const | 
| uint64_t | operator[] (size_t i) const | 
| Static Public Attributes | |
| static const StandHash | Stand_Hash | 
| Friends | |
| class | HashGenTable | 
| Additional Inherited Members | |
|  Private Attributes inherited from osl::hash::HashKey128Layout | |
| uint64_t | board64 | 
| uint32_t | board32 | 
| uint32_t | piece_stand | 
手番を含んだ盤面の状態のハッシュ値を保持するためのクラス.
Board 96bit + 駒台(piece stand) 32bit
Definition at line 36 of file boardKey128.h.
| 
 | inline | 
Definition at line 40 of file boardKey128.h.
References osl::hash::HashKey128Layout::board32, osl::hash::HashKey128Layout::board64, and osl::hash::HashKey128Layout::piece_stand.
| 
 | inline | 
Definition at line 44 of file boardKey128.h.
References osl::hash::HashKey128Layout::board32, osl::hash::HashKey128Layout::board64, and osl::hash::HashKey128Layout::piece_stand.
| 
 | inline | 
Definition at line 50 of file boardKey128.h.
| 
 | inline | 
Definition at line 93 of file boardKey128.h.
References osl::hash::HashKey128Layout::board64, and osl::Move::intValue().
| 
 | inline | 
Definition at line 64 of file boardKey128.h.
References osl::hash::HashKey128Layout::piece_stand.
| 
 | inline | 
Definition at line 53 of file boardKey128.h.
References osl::hash::HashKey128Layout::board32, and osl::hash::HashKey128Layout::board64.
Referenced by isSameBoard(), osl::hash::operator<(), osl::hash::operator<<(), and osl::hash::operator==().
| 
 | inline | 
Definition at line 56 of file boardKey128.h.
References osl::hash::HashKey128Layout::board64.
| 
 | inline | 
Definition at line 94 of file boardKey128.h.
References osl::hash::HashKey128Layout::board64.
Referenced by osl::hash::HashKey::newMakeMove(), and osl::hash::HashKey::newUnmakeMove().
| 
 | inline | 
持駒も含んだ64bitのハッシュ
Definition at line 59 of file boardKey128.h.
References osl::hash::HashKey128Layout::board64, and pieceStand64().
| 
 | inline | 
Definition at line 101 of file boardKey128.h.
References playerBit(), and osl::playerToIndex().
Referenced by turn().
| 
 | inline | 
駒台の情報を除いて同じかどうか.
手番が異なるものは異なると定義する
Definition at line 71 of file boardKey128.h.
References boardKey().
| 
 | inline | 
Definition at line 75 of file boardKey128.h.
References osl::PieceStand::addAtmostOnePiece(), osl::hash::HashKey128Layout::board32, osl::hash::HashKey128Layout::board64, osl::PieceStand::getFlags(), osl::hash::HashKey128Layout::piece_stand, and pieceStand().
| 
 | inline | 
Definition at line 84 of file boardKey128.h.
References osl::hash::HashKey128Layout::board32, osl::hash::HashKey128Layout::board64, osl::PieceStand::getFlags(), osl::hash::HashKey128Layout::piece_stand, pieceStand(), and osl::PieceStand::subAtmostOnePiece().
| 
 | inline | 
Definition at line 112 of file boardKey128.h.
References osl::hash::HashKey128Layout::board32, and osl::hash::HashKey128Layout::board64.
Referenced by osl::hash::HashKey::dumpContents().
| 
 | inline | 
Definition at line 63 of file boardKey128.h.
References osl::hash::HashKey128Layout::piece_stand.
Referenced by osl::hash::HashKey::dumpContents(), operator+=(), operator-=(), osl::hash::operator<(), osl::hash::operator<<(), osl::hash::operator==(), and pieceStand64().
| 
 | inline | 
Definition at line 60 of file boardKey128.h.
References pieceStand(), Stand_Hash, and osl::hash::HashKey128::StandHash::toUint64().
Referenced by hash64().
| 
 | inline | 
Definition at line 100 of file boardKey128.h.
References osl::hash::HashKey128Layout::board64.
Referenced by isPlayerOfTurn().
| 
 | inline | 
Definition at line 65 of file boardKey128.h.
References osl::PieceStand::getFlags(), and osl::hash::HashKey128Layout::piece_stand.
| 
 | inline | 
Definition at line 95 of file boardKey128.h.
References osl::hash::HashKey128Layout::board64, and osl::playerToIndex().
| void osl::hash::HashKey128::setRandom | ( | ) | 
乱数で初期化.
pieceStandには触らない
Definition at line 6 of file boardKey128.cc.
References osl::hash::HashKey128Layout::board32, and osl::hash::HashKey128Layout::board64.
| 
 | inline | 
Definition at line 57 of file boardKey128.h.
References osl::hash::HashKey128Layout::board32.
Referenced by hash::operator()(), osl::hash::HashRandomPair::value(), and osl::hash::HashRandom::value().
| 
 | inline | 
Definition at line 111 of file boardKey128.h.
Referenced by osl::hash::HashKey::dumpContents(), and osl::search::SimpleHashTable::getPV().
| 
 | inline | 
Definition at line 105 of file boardKey128.h.
References osl::BLACK, isPlayerOfTurn(), and osl::WHITE.
| 
 | friend | 
Definition at line 38 of file boardKey128.h.
| 
 | static | 
Definition at line 127 of file boardKey128.h.
Referenced by pieceStand64().
 1.8.4
 1.8.4