#include <sameBoardList.h>
Public 型 | |
typedef slist< CheckHashRecord > | list_t |
typedef list_t::iterator | iterator |
typedef list_t::const_iterator | const_iterator |
Public メソッド | |
~SameBoardList () | |
void | clear () |
iterator | begin () |
iterator | end () |
const_iterator | begin () const |
const_iterator | end () const |
bool | empty () const |
size_t | size () const |
size_t | confirmNoVisitedRecords () const |
CheckHashRecord * | find (const PieceStand &black_stand) |
const CheckHashRecord * | find (const PieceStand &black_stand) const |
template<Player Attacker> | |
CheckHashRecord * | allocate (const PieceStand &black_stand, const PieceStand &white_stand, const PathEncoding &path, size_t &counter) |
CheckHashRecord * | allocateSlow (Player attacker, const PieceStand &black_stand, const PieceStand &white_stand, const PathEncoding &path, size_t &counter) |
template<Player Attacker> | |
const CheckHashRecord * | findIneffectiveDropLoop (const PieceStand &black_stand) const |
̤Ʊǹλ¿isVisited CheckHashRecord ֤ | |
template<bool isAttack> | |
void | updateSlow (Player attacker, CheckHashRecord &record, const PathEncoding &path) |
void | updateSlow (bool is_attack, Player attacker, CheckHashRecord &record, const PathEncoding &path) |
template<bool isAttack, Player Attacker> | |
void | update (CheckHashRecord &record, const PathEncoding &path) |
Static Private メソッド | |
static void | setMoreProvable (unsigned int &proofLL, unsigned int &disproofUL, const CheckHashRecord *&final_by_dominance, CheckHashRecord &record) |
static void | setLessProvable (unsigned int &proofUL, unsigned int &disproofLL, const CheckHashRecord *&final_by_dominance, CheckHashRecord &record) |
Private 変数 | |
list_t | colleagues |
ArrayCheckHashTable DominanceTable Ȥ
sameBoardList.h の 22 行で定義されています。
typedef slist<CheckHashRecord> osl::checkmate::SameBoardList::list_t |
sameBoardList.h の 25 行で定義されています。
typedef list_t::iterator osl::checkmate::SameBoardList::iterator |
sameBoardList.h の 26 行で定義されています。
typedef list_t::const_iterator osl::checkmate::SameBoardList::const_iterator |
sameBoardList.h の 27 行で定義されています。
osl::checkmate::SameBoardList::~SameBoardList | ( | ) |
sameBoardList.cc の 6 行で定義されています。
void osl::checkmate::SameBoardList::clear | ( | ) |
iterator osl::checkmate::SameBoardList::begin | ( | ) | [inline] |
sameBoardList.h の 33 行で定義されています。
参照先 colleagues.
参照元 allocate(), find(), findIneffectiveDropLoop(), と update().
iterator osl::checkmate::SameBoardList::end | ( | ) | [inline] |
sameBoardList.h の 34 行で定義されています。
参照先 colleagues.
参照元 allocate(), find(), findIneffectiveDropLoop(), と update().
const_iterator osl::checkmate::SameBoardList::begin | ( | ) | const [inline] |
const_iterator osl::checkmate::SameBoardList::end | ( | ) | const [inline] |
bool osl::checkmate::SameBoardList::empty | ( | ) | const [inline] |
sameBoardList.h の 38 行で定義されています。
参照先 colleagues.
参照元 osl::checkmate::ArrayCheckHashTable::BoardEntry::unused().
size_t osl::checkmate::SameBoardList::size | ( | ) | const [inline] |
size_t osl::checkmate::SameBoardList::confirmNoVisitedRecords | ( | ) | const |
sameBoardList.cc の 17 行で定義されています。
参照先 osl::BLACK, と colleagues.
参照元 osl::checkmate::ArrayCheckHashTable::confirmNoVisitedRecords().
CheckHashRecord* osl::checkmate::SameBoardList::find | ( | const PieceStand & | black_stand | ) | [inline] |
sameBoardList.h の 41 行で定義されています。
参照先 begin(), osl::BLACK, と end().
参照元 osl::checkmate::ArrayCheckHashTable::BoardEntry::find().
const CheckHashRecord* osl::checkmate::SameBoardList::find | ( | const PieceStand & | black_stand | ) | const [inline] |
void osl::checkmate::SameBoardList::setMoreProvable | ( | unsigned int & | proofLL, | |
unsigned int & | disproofUL, | |||
const CheckHashRecord *& | final_by_dominance, | |||
CheckHashRecord & | record | |||
) | [inline, static, private] |
void osl::checkmate::SameBoardList::setLessProvable | ( | unsigned int & | proofUL, | |
unsigned int & | disproofLL, | |||
const CheckHashRecord *& | final_by_dominance, | |||
CheckHashRecord & | record | |||
) | [inline, static, private] |
osl::checkmate::CheckHashRecord * osl::checkmate::SameBoardList::allocate | ( | const PieceStand & | black_stand, | |
const PieceStand & | white_stand, | |||
const PathEncoding & | path, | |||
size_t & | counter | |||
) | [inline] |
sameBoardList.cc の 111 行で定義されています。
参照先 begin(), osl::BLACK, colleagues, osl::checkmate::CheckHashRecord::disproof(), osl::checkmate::ProofDisproof::DISPROOF_MAX, end(), osl::checkmate::CheckHashRecord::findLoopInList(), osl::PieceStand::hasMoreThan(), osl::checkmate::ProofDisproof::isFinal(), osl::checkmate::ProofDisproof::PROOF_MAX, osl::checkmate::CheckHashRecord::proofDisproof(), osl::checkmate::CheckHashRecord::sameBoards, osl::checkmate::CheckHashRecord::setDisproofByDominance(), setLessProvable(), osl::checkmate::CheckHashRecord::setLoopDetection(), setMoreProvable(), osl::checkmate::CheckHashRecord::setProofByDominance(), と osl::checkmate::CheckHashRecord::setProofDisproof().
osl::checkmate::CheckHashRecord * osl::checkmate::SameBoardList::allocateSlow | ( | Player | attacker, | |
const PieceStand & | black_stand, | |||
const PieceStand & | white_stand, | |||
const PathEncoding & | path, | |||
size_t & | counter | |||
) |
const CheckHashRecord* osl::checkmate::SameBoardList::findIneffectiveDropLoop | ( | const PieceStand & | black_stand | ) | const [inline] |
void osl::checkmate::SameBoardList::updateSlow | ( | Player | attacker, | |
CheckHashRecord & | record, | |||
const PathEncoding & | path | |||
) | [inline] |
isAttack | ֤ |
sameBoardList.h の 106 行で定義されています。
参照先 osl::BLACK, check_assert, osl::PathEncoding::turn(), と osl::WHITE.
void osl::checkmate::SameBoardList::updateSlow | ( | bool | is_attack, | |
Player | attacker, | |||
CheckHashRecord & | record, | |||
const PathEncoding & | path | |||
) |
sameBoardList.cc の 205 行で定義されています。
void osl::checkmate::SameBoardList::update | ( | CheckHashRecord & | record, | |
const PathEncoding & | path | |||
) | [inline] |
sameBoardList.cc の 216 行で定義されています。
参照先 osl::stat::Ratio::add(), begin(), osl::BLACK, check_assert, osl::checkmate::CheckHashRecord::disproof(), osl::checkmate::ProofDisproof::DISPROOF_MAX, osl::checkmate::CheckHashRecord::distance, end(), osl::checkmate::CheckHashRecord::finalByDominance(), osl::PieceStand::hasMoreThan(), osl::checkmate::CheckHashRecord::proof(), osl::checkmate::ProofDisproof::PROOF_MAX, ratio, osl::checkmate::CheckHashRecord::setDisproofByDominance(), setLessProvable(), osl::checkmate::CheckHashRecord::setLoopDetection(), setMoreProvable(), osl::checkmate::CheckHashRecord::setProofByDominance(), osl::checkmate::CheckHashRecord::setProofDisproof(), と osl::checkmate::CheckHashRecord::stand().
sameBoardList.h の 29 行で定義されています。
参照元 allocate(), begin(), clear(), confirmNoVisitedRecords(), empty(), end(), と size().