osl::hash::HashKey Class 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
Public Member Functions | Static Public Member Functions | List of all members
osl::hash::HashKey Class Reference

`#include <hashKey.h>`

Inheritance diagram for osl::hash::HashKey:
[legend]
Collaboration diagram for osl::hash::HashKey:
[legend]

## Public Member Functions
| HashKey ()
| HashKey (const SimpleState &)
| HashKey (uint64_t h0, uint32_t h1, uint32_t s)
const HashKey | newHashWithMove (Move move) const
const HashKey | newMakeMove (Move) const
const HashKey | newUnmakeMove (Move) const
void | dumpContents (std::ostream &os) const
void | dumpContentsCerr () const
Public Member Functions inherited from osl::hash::HashKey128
| 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 Member Functions
static const HashKey | readFromDump (const std::string &)
static const HashKey | readFromDump (std::istream &)

## Additional Inherited Members
Static Public Attributes inherited from osl::hash::HashKey128
static const StandHash | Stand_Hash

## Detailed Description

Definition at line 34 of file hashKey.h.

## Constructor & Destructor Documentation

osl::hash::HashKey::HashKey | ( | ) |  |
| inline

Definition at line 37 of file hashKey.h.

osl::hash::HashKey::HashKey | ( | const SimpleState & | state) |  |

Definition at line 64 of file hashKey.cc.

References osl::hash::HashGenTable::addHashKey(), osl::hash::Hash_Gen_Table, osl::Piece::ptypeO(), setPlayer(), and osl::Piece::square().

osl::hash::HashKey::HashKey | ( | uint64_t | h0,
|  | uint32_t | h1,
|  | uint32_t | s
| ) |  |
| inline

Definition at line 40 of file hashKey.h.

## Member Function Documentation

void osl::hash::HashKey::dumpContents | ( | std::ostream & | os) |  | const

Definition at line 30 of file hashKey.cc.

References osl::PieceStand::getFlags(), osl::hash::HashKey128::operator[](), osl::hash::HashKey128::pieceStand(), and osl::hash::HashKey128::size().

void osl::hash::HashKey::dumpContentsCerr | ( | ) |  | const

Definition at line 38 of file hashKey.cc.

const osl::hash::HashKey osl::hash::HashKey::newHashWithMove | ( | Move | move) |  | const

Definition at line 75 of file hashKey.cc.

Referenced by osl::search::SimpleHashTable::getPV().

const osl::hash::HashKey osl::hash::HashKey::newMakeMove | ( | Move | move) |  | const

Definition at line 81 of file hashKey.cc.

References osl::hash::HashGenTable::addHashKey(), osl::alt(), osl::captured(), osl::Move::capturePtype(), osl::hash::HashKey128::changeTurn(), osl::Move::from(), osl::hash::Hash_Gen_Table, osl::Move::isPass(), osl::Move::isValid(), osl::newPtypeO(), osl::Move::oldPtypeO(), osl::Move::player(), osl::PTYPE_EMPTY, osl::Move::ptypeO(), osl::Square::STAND(), osl::hash::HashGenTable::subHashKey(), and osl::Move::to().

Referenced by doMain().

const osl::hash::HashKey osl::hash::HashKey::newUnmakeMove | ( | Move | move) |  | const

Definition at line 108 of file hashKey.cc.

References osl::hash::HashGenTable::addHashKey(), osl::alt(), osl::captured(), osl::Move::capturePtype(), osl::hash::HashKey128::changeTurn(), osl::Move::from(), osl::hash::Hash_Gen_Table, osl::Move::isPass(), osl::Move::isValid(), osl::newPtypeO(), osl::Move::oldPtypeO(), osl::Move::player(), osl::PTYPE_EMPTY, osl::Move::ptypeO(), osl::Square::STAND(), osl::hash::HashGenTable::subHashKey(), and osl::Move::to().

static const HashKey osl::hash::HashKey::readFromDump | ( | const std::string & | ) |  |
| static

static const HashKey osl::hash::HashKey::readFromDump | ( | std::istream & | ) |  |
| static

The documentation for this class was generated from the following files:

- hashKey.h
- hashKey.cc