ある局面について,その局面を n手すきで探索した場合の 結果を保持しておくクラス. More...
#include <ntesukiRecord.h>
Classes | |
class | UnVisitLock |
class | VisitLock |
Public Types | |
enum | IWScheme { no_iw = 0, strict_iw = 1, pn_iw = 2 } |
enum | PSScheme { no_ps = 0, pn_ps = 1 } |
enum | ISScheme { no_is = 0, tonshi_is = 1, delay_is = 2, normal_is = 3 } |
typedef slist< NtesukiRecord > | RecordList |
typedef slist< NtesukiRecord * > | RecordPList |
Public Member Functions | |
NtesukiRecord (signed short distance, const HashKey &key, const PieceStand &white_stand, RecordList *same_board_list) | |
コンストラクタ. | |
~NtesukiRecord () | |
Player | turn () const |
手番 | |
bool | isBySimulation () const |
simulation によって値が決まったか | |
template<Player P> | |
const PieceStand & | getPieceStand () const |
この局面でのプレイヤの持駒. | |
const PieceStand & | getPieceStandSlow (Player P) const |
template<Player A> | |
PieceStand | calcProofPiecesOr (int pass_left, const NtesukiMove &m) |
証明駒を計算する. | |
template<Player A> | |
PieceStand | calcProofPiecesAnd (int pass_left) |
template<Player A> | |
void | setProofPieces (int pass_left, const NtesukiResult &r, const NtesukiMove &m, const PieceStand *ps) |
証明駒を設定する. | |
template<osl::Player A> | |
void | setDisproofPieces (int pass_left, const NtesukiResult &r, const NtesukiMove &m, const PieceStand *ps) |
反証駒を設定する. | |
template<Player A> | |
void | setResult (int i, const NtesukiResult &r, const NtesukiMove &m, bool bs, const PieceStand *ps=NULL) |
探索の結果を格納する | |
template<Player A> | |
const NtesukiResult | getValue (int i) const |
このノードの NtesukiResult の値を調べる | |
template<Player A> | |
const NtesukiResult | getValueWithPath (int i, const PathEncoding path) const |
template<Player A> | |
const NtesukiResult | getValueOr (int i, const PathEncoding path, IWScheme iwscheme) const |
template<Player A> | |
const NtesukiResult | getValueAnd (int i, const PathEncoding path, IWScheme iwscheme, PSScheme psscheme) const |
const NtesukiResult | getValueSlow (const Player attacker, int i) const |
const NtesukiResult | getValueOfTurn (int i) const |
const NtesukiResult | valueBeforeFinal () const |
int | isWin (const Player attacker) const |
template<Player A> | |
const NtesukiMove & | getBestMove (int i) const |
登録されてる最善手を返す. | |
const NtesukiMove & | getBestMoveSlow (Player attacker, int i) const |
bool | isVisited () const |
Loop になっているかチェック. | |
bool | isFinal () |
void | setVisited () |
void | resetVisited () |
template<Player A> | |
bool | isByFixed () const |
Fixed Depth Searcher によって値が設定されたか. | |
bool | isByFixedSlow (Player attacker) const |
template<Player A> | |
bool | isNtesuki (int pass_left) const |
このノードが n手すきになっているか. | |
template<Player A> | |
void | setNtesuki (int pass_left) |
template<Player A> | |
bool | hasTriedPropagatedOracle (int pass_left) const |
このノードで親から来た oracle を試したか | |
template<Player A> | |
void | triedPropagatedOracle (int pass_left) |
template<Player A> | |
PieceStand | getPDPieces (int pass_left) const |
証明駒を得る | |
PieceStand | getPDPiecesSlow (Player attacker, int pass_left) const |
template<Player A> | |
void | setPDPieces (int pass_left, const PieceStand p) |
bool | readInterpose (int pass_left) const |
無駄合いを読むべきか. | |
void | setReadInterpose (int pass_left) |
bool | readCheckDefense (int pass_left) const |
defense の際に王手を読むべきか. | |
void | setReadCheckDefense (int pass_left) |
bool | readNonAttack (int pass_left) const |
attack の際に,ヒューリスティックに判別された攻撃手以外も読むか. | |
void | setReadNonAttack (int pass_left) |
template<Player A> | |
bool | useOld (int pass_left) const |
old child を読むべきか. | |
template<Player A> | |
void | setUseOld (int pass_left, bool value) |
template<Player A> | |
bool | isLoopWithPath (int pass_left, const PathEncoding &path) const |
この path で loop になるか. | |
template<Player A> | |
void | setLoopWithPath (int pass_left, const PathEncoding &path) |
template<Player A> | |
bool | hasLoop (int pass_left) const |
template<Player P> | |
bool | setUpNode () |
Fixed Depth Searcher を呼ぶ等. | |
template<Player P> | |
void | setUpAttackNode () |
template<Player P> | |
void | setUpDefenseNode () |
void | updateWithChild (NtesukiRecord *child, int pass_left) |
template<Player P> | |
void | generateMoves (NtesukiMoveList &moves, int pass_left, bool all_moves) |
手の生成. | |
bool | operator== (const NtesukiRecord &record) |
unsigned int | getChildCount () const |
void | addChildCount (unsigned int i) |
unsigned int | getReadCount () const |
unsigned int | getWrittenCount () const |
void | checkNewParent (NtesukiRecord *p) |
template<osl::Player P> | |
rzones_t & | rzone () |
template<Player P> | |
bool | isDominatedByProofPieces (const NtesukiRecord *record, int pass_left) const |
template<Player P> | |
bool | isDominatedByDisproofPieces (const NtesukiRecord *record, int pass_left) const |
template<Player P> | |
bool | isBetterFor (NtesukiRecord *record) |
Public Attributes | |
PieceStand | black_stand |
各プレイヤの持駒 | |
PieceStand | white_stand |
unsigned short | distance |
root からの最短 path の距離 | |
HashKey | key |
局面の HashKey | |
RecordList * | same_board_list |
盤面・手番が同じで,持駒だけ違う局面のリスト | |
RecordPList | parents |
親局面のリスト | |
int | rev_refcount |
bool | is_split |
bool | do_oracle_attack |
DAG の分流点 | |
bool | do_oracle_aunt |
bool | rzone_move_generation |
Static Public Attributes | |
static const unsigned int | SIZE = 2 |
各配列のサイズ. | |
static unsigned int | fixed_search_depth = 0 |
探索関係の色々な情報. | |
static unsigned int | inversion_cost = 0 |
static bool | use_dominance = false |
static int | pass_count = 0 |
static bool | max_for_split = false |
static bool | use_rzone_move_generation = false |
static bool | delay_lame_long = false |
static bool | use_9rzone = false |
static NumEffectState * | state = NULL |
static NtesukiMoveGenerator * | mg = NULL |
static NtesukiTable * | table = NULL |
static unsigned int | split_count = 0 |
分流点がいくつあるか. | |
static unsigned int | confluence_count = 0 |
合流点がいくつあるか. | |
Private Types | |
typedef CArray< NtesukiResult, SIZE > | values_t |
typedef CArray< NtesukiMove, SIZE > | moves_t |
typedef CArray< short, SIZE-1 > | nodesread_t |
typedef CArray< PieceStand, SIZE > | pdpieces_t |
typedef CArray< bool, SIZE > | flags_t |
typedef CArray < PathEncodingList, SIZE > | pell_t |
typedef CArray< Rzone, SIZE > | rzones_t |
Private Member Functions | |
bool | isNewParent (const NtesukiRecord *p) const |
void | find_split (NtesukiRecord *rhs, RecordPList &lvisited, RecordPList &rvisited) |
bool | find_split_right (NtesukiRecord *rhs, RecordPList &lvisited, RecordPList &rvisited) |
void | addNewParent (NtesukiRecord *p) |
NtesukiRecord () | |
template<Player P> | |
bool & | by_fixed () |
template<Player P> | |
const bool & | by_fixed () const |
template<Player P> | |
PieceStand & | piece_stand () |
template<Player P> | |
const PieceStand & | piece_stand () const |
template<Player P> | |
values_t & | values () |
template<Player P> | |
const values_t & | values () const |
template<Player P> | |
moves_t & | best_move () |
template<Player P> | |
const moves_t & | best_move () const |
template<Player P> | |
pdpieces_t & | pdpieces () |
template<Player P> | |
const pdpieces_t & | pdpieces () const |
template<Player P> | |
flags_t & | is_ntesuki () |
template<Player P> | |
const flags_t & | is_ntesuki () const |
template<Player P> | |
flags_t & | propagated_oracle () |
template<Player P> | |
const flags_t | propagated_oracle () const |
template<Player P> | |
flags_t & | use_old () |
template<Player P> | |
const flags_t | use_old () const |
template<Player P> | |
pell_t & | loop_path_list () |
template<Player P> | |
const pell_t & | loop_path_list () const |
template<Player P> | |
void | setFinal (int i, const NtesukiResult &r, const NtesukiMove &m, const PieceStand *ps) |
void | lookup_same_board_list () |
Dominace の伝播用. | |
template<Player P> | |
void | propagate_proof (int pass_left) |
template<Player P> | |
void | propagate_disproof (int pass_left) |
Private Attributes | |
values_t | values_black |
values_t | values_white |
moves_t | best_move_black |
moves_t | best_move_white |
pdpieces_t | pd_pieces_black |
pdpieces_t | pd_pieces_white |
pell_t | loop_path_list_black |
同一の局面で,Loop になっているものの Path | |
pell_t | loop_path_list_white |
unsigned int | child_count |
unsigned int | read_count |
unsigned int | written_count |
NtesukiResult | value_before_final |
bool | visited |
setResult で final な値を設定される直前の result | |
bool | by_simulation |
bool | by_fixed_black |
bool | by_fixed_white |
bool | already_set_up |
bool | final |
flags_t | read_interpose |
flags_t | read_check_defense |
flags_t | read_non_attack |
flags_t | is_ntesuki_black |
flags_t | is_ntesuki_white |
flags_t | propagated_oracle_black |
flags_t | propagated_oracle_white |
flags_t | use_old_black |
flags_t | use_old_white |
rzones_t | rzone_black |
rzones_t | rzone_white |
ある局面について,その局面を n手すきで探索した場合の 結果を保持しておくクラス.
Definition at line 32 of file ntesukiRecord.h.
typedef CArray<bool, SIZE> osl::ntesuki::NtesukiRecord::flags_t [private] |
Definition at line 521 of file ntesukiRecord.h.
typedef CArray<NtesukiMove, SIZE> osl::ntesuki::NtesukiRecord::moves_t [private] |
Definition at line 518 of file ntesukiRecord.h.
typedef CArray<short, SIZE - 1> osl::ntesuki::NtesukiRecord::nodesread_t [private] |
Definition at line 519 of file ntesukiRecord.h.
typedef CArray<PieceStand, SIZE> osl::ntesuki::NtesukiRecord::pdpieces_t [private] |
Definition at line 520 of file ntesukiRecord.h.
typedef CArray<PathEncodingList, SIZE> osl::ntesuki::NtesukiRecord::pell_t [private] |
Definition at line 522 of file ntesukiRecord.h.
typedef slist<NtesukiRecord> osl::ntesuki::NtesukiRecord::RecordList |
Definition at line 35 of file ntesukiRecord.h.
typedef slist<NtesukiRecord*> osl::ntesuki::NtesukiRecord::RecordPList |
Definition at line 36 of file ntesukiRecord.h.
typedef CArray<Rzone, SIZE> osl::ntesuki::NtesukiRecord::rzones_t [private] |
Definition at line 523 of file ntesukiRecord.h.
typedef CArray<NtesukiResult, SIZE> osl::ntesuki::NtesukiRecord::values_t [private] |
Definition at line 517 of file ntesukiRecord.h.
Definition at line 48 of file ntesukiRecord.h.
Definition at line 41 of file ntesukiRecord.h.
Definition at line 45 of file ntesukiRecord.h.
osl::ntesuki::NtesukiRecord::NtesukiRecord | ( | signed short | distance, |
const HashKey & | key, | ||
const PieceStand & | white_stand, | ||
RecordList * | same_board_list | ||
) |
コンストラクタ.
Definition at line 50 of file ntesukiRecord.cc.
References is_ntesuki_black, is_ntesuki_white, lookup_same_board_list(), propagated_oracle_black, propagated_oracle_white, read_check_defense, read_interpose, read_non_attack, use_dominance, use_old_black, use_old_white, values_black, and values_white.
osl::ntesuki::NtesukiRecord::~NtesukiRecord | ( | ) | [inline] |
Definition at line 100 of file ntesukiRecord.h.
osl::ntesuki::NtesukiRecord::NtesukiRecord | ( | ) | [private] |
void osl::ntesuki::NtesukiRecord::addChildCount | ( | unsigned int | i | ) | [inline] |
Definition at line 371 of file ntesukiRecord.h.
References child_count.
Referenced by osl::ntesuki::NtesukiTable::Table::collectGarbage().
void osl::ntesuki::NtesukiRecord::addNewParent | ( | NtesukiRecord * | p | ) | [inline, private] |
Definition at line 485 of file ntesukiRecord.h.
References isNewParent(), ntesuki_assert, parents, and rev_refcount.
Referenced by checkNewParent().
moves_t& osl::ntesuki::NtesukiRecord::best_move | ( | ) | [inline, private] |
Definition at line 610 of file ntesukiRecord.h.
References best_move_black, best_move_white, and osl::BLACK.
const moves_t& osl::ntesuki::NtesukiRecord::best_move | ( | ) | const [inline, private] |
Definition at line 618 of file ntesukiRecord.h.
References best_move_black, best_move_white, and osl::BLACK.
bool& osl::ntesuki::NtesukiRecord::by_fixed | ( | ) | [inline, private] |
Definition at line 562 of file ntesukiRecord.h.
References osl::BLACK, by_fixed_black, and by_fixed_white.
const bool& osl::ntesuki::NtesukiRecord::by_fixed | ( | ) | const [inline, private] |
Definition at line 570 of file ntesukiRecord.h.
References osl::BLACK, by_fixed_black, and by_fixed_white.
osl::PieceStand osl::ntesuki::NtesukiRecord::calcProofPiecesAnd | ( | int | pass_left | ) |
Definition at line 460 of file ntesukiRecord.tcc.
References osl::PieceStand::add(), osl::PieceStand::get(), getPDPieces(), getValue(), osl::ntesuki::NtesukiMove::isCheck(), osl::effect_util::UnblockableCheck::isMember(), osl::ntesuki::NtesukiMove::isNoPromote(), osl::PieceStand::max(), moves, ntesuki_assert, and osl::PieceStand::order.
osl::PieceStand osl::ntesuki::NtesukiRecord::calcProofPiecesOr | ( | int | pass_left, |
const NtesukiMove & | m | ||
) |
証明駒を計算する.
Definition at line 436 of file ntesukiRecord.tcc.
References osl::PieceStand::add(), osl::Move::capturePtype(), osl::ntesuki::NtesukiMove::getMove(), getPDPieces(), osl::ntesuki::NtesukiMove::isDrop(), ntesuki_assert, osl::ntesuki::NtesukiMove::ptype(), osl::PTYPE_EMPTY, osl::PieceStand::trySub(), and osl::unpromote().
void osl::ntesuki::NtesukiRecord::checkNewParent | ( | NtesukiRecord * | p | ) | [inline] |
Definition at line 493 of file ntesukiRecord.h.
References addNewParent(), confluence_count, find_split(), isNewParent(), max_for_split, and parents.
Referenced by osl::ntesuki::NtesukiTable::allocateWithMove(), and osl::ntesuki::NtesukiTable::findWithMove().
void osl::ntesuki::NtesukiRecord::find_split | ( | NtesukiRecord * | rhs, |
RecordPList & | lvisited, | ||
RecordPList & | rvisited | ||
) | [inline, private] |
Definition at line 398 of file ntesukiRecord.h.
References osl::find(), find_split_right(), and parents.
Referenced by checkNewParent().
bool osl::ntesuki::NtesukiRecord::find_split_right | ( | NtesukiRecord * | rhs, |
RecordPList & | lvisited, | ||
RecordPList & | rvisited | ||
) | [inline, private] |
Definition at line 438 of file ntesukiRecord.h.
References osl::find(), is_split, parents, result, and split_count.
Referenced by find_split().
template void osl::ntesuki::NtesukiRecord::generateMoves< WHITE > | ( | NtesukiMoveList & | moves, |
int | pass_left, | ||
bool | all_moves | ||
) |
手の生成.
Definition at line 303 of file ntesukiRecord.tcc.
References osl::checkmate::LibertyEstimator::attackH(), osl::Move::capturePtype(), osl::checkmate::LibertyEstimator::defenseH(), osl::Move::from(), osl::ntesuki::getCheapestDrop(), osl::ntesuki::getSecondCheapestDrop(), osl::isMajor(), osl::Square::isOnBoard(), osl::Square::isPieceStand(), osl::KING, osl::LANCE, ntesuki_assert, osl::Move::ptype(), osl::PTYPE_EMPTY, osl::Move::to(), osl::Square::x(), and osl::Square::y().
Referenced by osl::ntesuki::NtesukiSimulationSearcher::attackForDisproof(), osl::ntesuki::NtesukiSearcher::attackWithOrder(), osl::ntesuki::NtesukiSimulationSearcher::defenseForProof(), and osl::ntesuki::NtesukiSearcher::defenseWithPlayer().
const osl::ntesuki::NtesukiMove & osl::ntesuki::NtesukiRecord::getBestMove | ( | int | i | ) | const |
登録されてる最善手を返す.
Definition at line 1029 of file ntesukiRecord.tcc.
Referenced by osl::ntesuki::OracleProverLight::attack(), osl::ntesuki::NtesukiSearcher::attack(), osl::ntesuki::NtesukiSimulationSearcher::attackForDisproof(), osl::ntesuki::NtesukiSimulationSearcher::attackForProof(), osl::ntesuki::NtesukiSearcher::attackWithOrder(), osl::ntesuki::NtesukiSearcher::defense(), osl::ntesuki::NtesukiSimulationSearcher::defenseForDisproof(), osl::ntesuki::NtesukiSearcher::handleInterpose(), osl::ntesuki::operator<<(), osl::ntesuki::OracleProverLight::startFromAttack(), osl::ntesuki::NtesukiSimulationSearcher::startFromAttackProof(), osl::ntesuki::OracleProverLight::startFromDefense(), and osl::ntesuki::NtesukiSimulationSearcher::startFromDefenseProof().
const osl::ntesuki::NtesukiMove & osl::ntesuki::NtesukiRecord::getBestMoveSlow | ( | Player | attacker, |
int | i | ||
) | const |
Definition at line 184 of file ntesukiRecord.cc.
References osl::BLACK.
unsigned int osl::ntesuki::NtesukiRecord::getChildCount | ( | ) | const [inline] |
Definition at line 366 of file ntesukiRecord.h.
References child_count.
Referenced by osl::ntesuki::NtesukiTable::Table::collectGarbage(), CompareChildSize::operator()(), RecordPrinter::operator()(), RecordPrinter2::operator()(), osl::ntesuki::operator<<(), RecordPrinter::withChildMove(), and RecordPrinter2::withChildMove().
template PieceStand osl::ntesuki::NtesukiRecord::getPDPieces< WHITE > | ( | int | pass_left | ) | const |
証明駒を得る
Definition at line 1079 of file ntesukiRecord.tcc.
Referenced by calcProofPiecesAnd(), calcProofPiecesOr(), isDominatedByDisproofPieces(), isDominatedByProofPieces(), osl::ntesuki::operator<<(), setDisproofPieces(), setProofPieces(), osl::ntesuki::OracleProverLight::startFromAttack(), and osl::ntesuki::OracleProverLight::startFromDefense().
osl::PieceStand osl::ntesuki::NtesukiRecord::getPDPiecesSlow | ( | Player | attacker, |
int | pass_left | ||
) | const |
Definition at line 204 of file ntesukiRecord.cc.
References osl::BLACK.
const PieceStand& osl::ntesuki::NtesukiRecord::getPieceStand | ( | ) | const [inline] |
この局面でのプレイヤの持駒.
Definition at line 121 of file ntesukiRecord.h.
Referenced by osl::ntesuki::OracleProverLight::startFromAttack(), and osl::ntesuki::OracleProverLight::startFromDefense().
const PieceStand& osl::ntesuki::NtesukiRecord::getPieceStandSlow | ( | Player | P | ) | const [inline] |
Definition at line 127 of file ntesukiRecord.h.
References osl::BLACK.
Referenced by osl::ntesuki::NtesukiTable::findWithMove(), and osl::ntesuki::NtesukiTable::findWithMoveConst().
unsigned int osl::ntesuki::NtesukiRecord::getReadCount | ( | ) | const [inline] |
Definition at line 376 of file ntesukiRecord.h.
References read_count.
const osl::ntesuki::NtesukiResult osl::ntesuki::NtesukiRecord::getValue | ( | int | i | ) | const |
このノードの NtesukiResult の値を調べる
Definition at line 925 of file ntesukiRecord.tcc.
Referenced by osl::ntesuki::OracleProverLight::attack(), osl::ntesuki::NtesukiSimulationSearcher::attackForDisproof(), calcProofPiecesAnd(), osl::ntesuki::OracleProverLight::defense(), osl::ntesuki::NtesukiSimulationSearcher::defenseForDisproof(), osl::ntesuki::NtesukiSimulationSearcher::defenseForProof(), osl::ntesuki::NtesukiSearcher::handleInterpose(), isDominatedByDisproofPieces(), isDominatedByProofPieces(), osl::ntesuki::operator<<(), osl::ntesuki::NtesukiSearcher::search(), osl::ntesuki::NtesukiSearcher::simulateSiblingsSuccess(), osl::ntesuki::OracleProverLight::startFromAttack(), osl::ntesuki::NtesukiSimulationSearcher::startFromAttackDisproof(), osl::ntesuki::OracleProverLight::startFromDefense(), osl::ntesuki::NtesukiSimulationSearcher::startFromDefenseDisproof(), RecordPrinter::withChildMove(), and RecordPrinter2::withChildMove().
template const NtesukiResult osl::ntesuki::NtesukiRecord::getValueAnd< WHITE > | ( | int | i, |
const PathEncoding | path, | ||
IWScheme | iwscheme, | ||
PSScheme | psscheme | ||
) | const |
Definition at line 994 of file ntesukiRecord.tcc.
Referenced by osl::ntesuki::NtesukiSearcher::defense(), and osl::ntesuki::NtesukiSearcher::selectMoveAttack().
const osl::ntesuki::NtesukiResult osl::ntesuki::NtesukiRecord::getValueOfTurn | ( | int | i | ) | const |
Definition at line 170 of file ntesukiRecord.cc.
template const NtesukiResult osl::ntesuki::NtesukiRecord::getValueOr< WHITE > | ( | int | i, |
const PathEncoding | path, | ||
IWScheme | iwscheme | ||
) | const |
Definition at line 950 of file ntesukiRecord.tcc.
References osl::eval::min(), ntesuki_assert, and result.
Referenced by osl::ntesuki::NtesukiSearcher::attack(), osl::ntesuki::NtesukiSearcher::defense(), osl::ntesuki::NtesukiSearcher::defenseWithPlayer(), and osl::ntesuki::NtesukiSearcher::selectMoveDefense().
const osl::ntesuki::NtesukiResult osl::ntesuki::NtesukiRecord::getValueSlow | ( | const Player | attacker, |
int | i | ||
) | const |
template const NtesukiResult osl::ntesuki::NtesukiRecord::getValueWithPath< WHITE > | ( | int | i, |
const PathEncoding | path | ||
) | const |
Definition at line 934 of file ntesukiRecord.tcc.
Referenced by osl::ntesuki::NtesukiSearcher::attack(), osl::ntesuki::NtesukiSimulationSearcher::attackForDisproof(), osl::ntesuki::NtesukiSimulationSearcher::attackForProof(), osl::ntesuki::NtesukiSearcher::attackWithOrder(), osl::ntesuki::NtesukiSearcher::defense(), osl::ntesuki::NtesukiSimulationSearcher::defenseForDisproof(), osl::ntesuki::NtesukiSimulationSearcher::defenseForProof(), osl::ntesuki::NtesukiSearcher::defenseWithPlayer(), osl::ntesuki::NtesukiSearcher::handleInterpose(), osl::ntesuki::NtesukiSearcher::handleNonAttack(), osl::ntesuki::NtesukiSearcher::handleTonshi(), osl::ntesuki::NtesukiSearcher::selectMoveAttack(), osl::ntesuki::NtesukiSearcher::selectMoveDefense(), osl::ntesuki::NtesukiSearcher::simulateSiblingsFail(), osl::ntesuki::NtesukiSearcher::simulateSiblingsSuccess(), osl::ntesuki::NtesukiSimulationSearcher::startFromAttackProof(), and osl::ntesuki::NtesukiSimulationSearcher::startFromDefenseProof().
unsigned int osl::ntesuki::NtesukiRecord::getWrittenCount | ( | ) | const [inline] |
Definition at line 381 of file ntesukiRecord.h.
References written_count.
bool osl::ntesuki::NtesukiRecord::hasLoop | ( | int | pass_left | ) | const [inline] |
Definition at line 327 of file ntesukiRecord.h.
template bool osl::ntesuki::NtesukiRecord::hasTriedPropagatedOracle< WHITE > | ( | int | pass_left | ) | const |
このノードで親から来た oracle を試したか
Definition at line 1054 of file ntesukiRecord.tcc.
flags_t& osl::ntesuki::NtesukiRecord::is_ntesuki | ( | ) | [inline, private] |
Definition at line 642 of file ntesukiRecord.h.
References osl::BLACK, is_ntesuki_black, and is_ntesuki_white.
const flags_t& osl::ntesuki::NtesukiRecord::is_ntesuki | ( | ) | const [inline, private] |
Definition at line 650 of file ntesukiRecord.h.
References osl::BLACK, is_ntesuki_black, and is_ntesuki_white.
bool osl::ntesuki::NtesukiRecord::isBetterFor | ( | NtesukiRecord * | record | ) |
Definition at line 867 of file ntesukiRecord.tcc.
References osl::PieceStand::hasMoreThan(), and key.
bool osl::ntesuki::NtesukiRecord::isByFixed | ( | ) | const |
Fixed Depth Searcher によって値が設定されたか.
Definition at line 1071 of file ntesukiRecord.tcc.
bool osl::ntesuki::NtesukiRecord::isByFixedSlow | ( | Player | attacker | ) | const |
Definition at line 194 of file ntesukiRecord.cc.
References osl::BLACK.
bool osl::ntesuki::NtesukiRecord::isBySimulation | ( | ) | const [inline] |
bool osl::ntesuki::NtesukiRecord::isDominatedByDisproofPieces | ( | const NtesukiRecord * | record, |
int | pass_left | ||
) | const |
Definition at line 850 of file ntesukiRecord.tcc.
References getPDPieces(), getValue(), and osl::PieceStand::isSuperiorOrEqualTo().
bool osl::ntesuki::NtesukiRecord::isDominatedByProofPieces | ( | const NtesukiRecord * | record, |
int | pass_left | ||
) | const |
Definition at line 834 of file ntesukiRecord.tcc.
References getPDPieces(), getValue(), and osl::PieceStand::isSuperiorOrEqualTo().
Referenced by osl::ntesuki::NtesukiSimulationSearcher::startFromAttackProof(), and osl::ntesuki::NtesukiSimulationSearcher::startFromDefenseProof().
bool osl::ntesuki::NtesukiRecord::isFinal | ( | ) | [inline] |
Definition at line 227 of file ntesukiRecord.h.
template bool osl::ntesuki::NtesukiRecord::isLoopWithPath< WHITE > | ( | int | pass_left, |
const PathEncoding & | path | ||
) | const |
この path で loop になるか.
Definition at line 897 of file ntesukiRecord.tcc.
Referenced by osl::ntesuki::NtesukiSearcher::defenseWithPlayer(), and osl::ntesuki::NtesukiSearcher::selectMoveDefense().
bool osl::ntesuki::NtesukiRecord::isNewParent | ( | const NtesukiRecord * | p | ) | const [inline, private] |
Definition at line 388 of file ntesukiRecord.h.
References parents.
Referenced by addNewParent(), and checkNewParent().
template bool osl::ntesuki::NtesukiRecord::isNtesuki< WHITE > | ( | int | pass_left | ) | const |
このノードが n手すきになっているか.
Definition at line 1037 of file ntesukiRecord.tcc.
bool osl::ntesuki::NtesukiRecord::isVisited | ( | ) | const [inline] |
Loop になっているかチェック.
Definition at line 226 of file ntesukiRecord.h.
References visited.
Referenced by osl::ntesuki::NtesukiSimulationSearcher::attackForDisproof(), osl::ntesuki::NtesukiSimulationSearcher::attackForProof(), osl::ntesuki::NtesukiTable::Table::collectGarbage(), osl::ntesuki::NtesukiSimulationSearcher::defenseForDisproof(), osl::ntesuki::NtesukiSimulationSearcher::defenseForProof(), osl::ntesuki::NtesukiSearcher::defenseWithPlayer(), RecordPrinter2::enter(), osl::ntesuki::NtesukiSearcher::handleNonAttack(), RecordPrinter::operator()(), RecordPrinter2::operator()(), osl::ntesuki::operator<<(), osl::ntesuki::NtesukiSearcher::selectMoveAttack(), osl::ntesuki::NtesukiSearcher::selectMoveDefense(), osl::ntesuki::NtesukiSearcher::simulateSiblingsFail(), osl::ntesuki::NtesukiSearcher::simulateSiblingsSuccess(), osl::ntesuki::NtesukiRecord::UnVisitLock::UnVisitLock(), osl::ntesuki::NtesukiRecord::VisitLock::VisitLock(), RecordPrinter::withChildMove(), RecordPrinter2::withChildMove(), osl::ntesuki::NtesukiRecord::UnVisitLock::~UnVisitLock(), and osl::ntesuki::NtesukiRecord::VisitLock::~VisitLock().
int osl::ntesuki::NtesukiRecord::isWin | ( | const Player | attacker | ) | const [inline] |
Definition at line 203 of file ntesukiRecord.h.
References getValueSlow(), and SIZE.
void osl::ntesuki::NtesukiRecord::lookup_same_board_list | ( | ) | [private] |
Dominace の伝播用.
Definition at line 101 of file ntesukiRecord.cc.
References osl::BLACK, CATCH_DFPN, TRY_DFPN, and osl::WHITE.
Referenced by NtesukiRecord().
pell_t& osl::ntesuki::NtesukiRecord::loop_path_list | ( | ) | [inline, private] |
Definition at line 690 of file ntesukiRecord.h.
References osl::BLACK, loop_path_list_black, and loop_path_list_white.
const pell_t& osl::ntesuki::NtesukiRecord::loop_path_list | ( | ) | const [inline, private] |
Definition at line 698 of file ntesukiRecord.h.
References osl::BLACK, loop_path_list_black, and loop_path_list_white.
bool osl::ntesuki::NtesukiRecord::operator== | ( | const NtesukiRecord & | record | ) | [inline] |
Definition at line 360 of file ntesukiRecord.h.
References key.
pdpieces_t& osl::ntesuki::NtesukiRecord::pdpieces | ( | ) | [inline, private] |
Definition at line 626 of file ntesukiRecord.h.
References osl::BLACK, pd_pieces_black, and pd_pieces_white.
const pdpieces_t& osl::ntesuki::NtesukiRecord::pdpieces | ( | ) | const [inline, private] |
Definition at line 634 of file ntesukiRecord.h.
References osl::BLACK, pd_pieces_black, and pd_pieces_white.
PieceStand& osl::ntesuki::NtesukiRecord::piece_stand | ( | ) | [inline, private] |
Definition at line 578 of file ntesukiRecord.h.
References osl::BLACK, black_stand, and white_stand.
const PieceStand& osl::ntesuki::NtesukiRecord::piece_stand | ( | ) | const [inline, private] |
Definition at line 586 of file ntesukiRecord.h.
References osl::BLACK, black_stand, and white_stand.
void osl::ntesuki::NtesukiRecord::propagate_disproof | ( | int | pass_left | ) | [private] |
Definition at line 56 of file ntesukiRecord.tcc.
References CATCH_DFPN, ntesuki_assert, and TRY_DFPN.
void osl::ntesuki::NtesukiRecord::propagate_proof | ( | int | pass_left | ) | [private] |
Definition at line 17 of file ntesukiRecord.tcc.
References CATCH_DFPN, ntesuki_assert, same_board_list, and TRY_DFPN.
flags_t& osl::ntesuki::NtesukiRecord::propagated_oracle | ( | ) | [inline, private] |
Definition at line 658 of file ntesukiRecord.h.
References osl::BLACK, propagated_oracle_black, and propagated_oracle_white.
const flags_t osl::ntesuki::NtesukiRecord::propagated_oracle | ( | ) | const [inline, private] |
Definition at line 666 of file ntesukiRecord.h.
References osl::BLACK, propagated_oracle_black, and propagated_oracle_white.
bool osl::ntesuki::NtesukiRecord::readCheckDefense | ( | int | pass_left | ) | const [inline] |
defense の際に王手を読むべきか.
Definition at line 282 of file ntesukiRecord.h.
References read_check_defense.
Referenced by osl::ntesuki::NtesukiSearcher::selectMoveDefense().
bool osl::ntesuki::NtesukiRecord::readInterpose | ( | int | pass_left | ) | const [inline] |
無駄合いを読むべきか.
Definition at line 269 of file ntesukiRecord.h.
References read_interpose.
Referenced by osl::ntesuki::NtesukiSearcher::selectMoveDefense().
bool osl::ntesuki::NtesukiRecord::readNonAttack | ( | int | pass_left | ) | const [inline] |
attack の際に,ヒューリスティックに判別された攻撃手以外も読むか.
Definition at line 295 of file ntesukiRecord.h.
References read_non_attack.
Referenced by osl::ntesuki::NtesukiSearcher::selectMoveAttack().
void osl::ntesuki::NtesukiRecord::resetVisited | ( | ) | [inline] |
Definition at line 235 of file ntesukiRecord.h.
References visited.
Referenced by osl::ntesuki::NtesukiRecord::UnVisitLock::UnVisitLock(), and osl::ntesuki::NtesukiRecord::VisitLock::~VisitLock().
rzones_t& osl::ntesuki::NtesukiRecord::rzone | ( | ) | [inline] |
Definition at line 707 of file ntesukiRecord.h.
References osl::BLACK, rzone_black, and rzone_white.
Referenced by osl::ntesuki::NtesukiMoveGenerator::generateWithRzone(), and updateWithChild().
void osl::ntesuki::NtesukiRecord::setDisproofPieces | ( | int | pass_left, |
const NtesukiResult & | r, | ||
const NtesukiMove & | m, | ||
const PieceStand * | ps | ||
) |
反証駒を設定する.
Definition at line 562 of file ntesukiRecord.tcc.
References osl::PieceStand::add(), osl::Move::capturePtype(), osl::PieceStand::get(), osl::ntesuki::NtesukiMove::getMove(), getPDPieces(), osl::ntesuki::NtesukiMove::isDrop(), osl::ntesuki::NtesukiMove::isPass(), osl::ntesuki::NtesukiMove::isValid(), osl::PieceStand::max(), moves, ntesuki_assert, osl::PieceStand::order, osl::ntesuki::NtesukiMove::ptype(), osl::PTYPE_EMPTY, osl::PieceStand::trySub(), and osl::unpromote().
void osl::ntesuki::NtesukiRecord::setFinal | ( | int | i, |
const NtesukiResult & | r, | ||
const NtesukiMove & | m, | ||
const PieceStand * | ps | ||
) | [private] |
Definition at line 665 of file ntesukiRecord.tcc.
References CATCH_DFPN, moves, ntesuki_assert, and TRY_DFPN.
template void osl::ntesuki::NtesukiRecord::setLoopWithPath< WHITE > | ( | int | pass_left, |
const PathEncoding & | path | ||
) |
Definition at line 914 of file ntesukiRecord.tcc.
Referenced by osl::ntesuki::NtesukiSimulationSearcher::attackForDisproof(), osl::ntesuki::NtesukiSimulationSearcher::defenseForDisproof(), osl::ntesuki::NtesukiSimulationSearcher::defenseForProof(), osl::ntesuki::NtesukiSearcher::defenseWithPlayer(), osl::ntesuki::NtesukiSearcher::handleNonAttack(), osl::ntesuki::NtesukiSearcher::selectMoveAttack(), and osl::ntesuki::NtesukiSearcher::selectMoveDefense().
template void osl::ntesuki::NtesukiRecord::setNtesuki< WHITE > | ( | int | pass_left | ) |
Definition at line 1045 of file ntesukiRecord.tcc.
Referenced by osl::ntesuki::NtesukiSearcher::defenseWithPlayer(), and osl::ntesuki::NtesukiSearcher::selectMoveDefense().
template void osl::ntesuki::NtesukiRecord::setPDPieces< WHITE > | ( | int | pass_left, |
const PieceStand | p | ||
) |
Definition at line 1087 of file ntesukiRecord.tcc.
void osl::ntesuki::NtesukiRecord::setProofPieces | ( | int | pass_left, |
const NtesukiResult & | r, | ||
const NtesukiMove & | m, | ||
const PieceStand * | ps | ||
) |
証明駒を設定する.
Definition at line 520 of file ntesukiRecord.tcc.
References osl::D, getPDPieces(), osl::ntesuki::NtesukiMove::isPass(), osl::ntesuki::NtesukiMove::isValid(), and ntesuki_assert.
void osl::ntesuki::NtesukiRecord::setReadCheckDefense | ( | int | pass_left | ) | [inline] |
Definition at line 287 of file ntesukiRecord.h.
References read_check_defense.
void osl::ntesuki::NtesukiRecord::setReadInterpose | ( | int | pass_left | ) | [inline] |
Definition at line 274 of file ntesukiRecord.h.
References read_interpose.
Referenced by osl::ntesuki::NtesukiSearcher::selectMoveDefense().
void osl::ntesuki::NtesukiRecord::setReadNonAttack | ( | int | pass_left | ) | [inline] |
Definition at line 300 of file ntesukiRecord.h.
References read_non_attack.
Referenced by osl::ntesuki::NtesukiSearcher::selectMoveAttack().
template void osl::ntesuki::NtesukiRecord::setResult< WHITE > | ( | int | i, |
const NtesukiResult & | r, | ||
const NtesukiMove & | m, | ||
bool | bs, | ||
const PieceStand * | ps = NULL |
||
) |
探索の結果を格納する
Definition at line 760 of file ntesukiRecord.tcc.
References osl::ntesuki::NtesukiMove::isValid(), ntesuki_assert, and order.
Referenced by osl::ntesuki::NtesukiSimulationSearcher::attackForDisproof(), osl::ntesuki::NtesukiSimulationSearcher::attackForProof(), osl::ntesuki::NtesukiSearcher::attackWithOrder(), osl::ntesuki::NtesukiSimulationSearcher::defenseForDisproof(), osl::ntesuki::NtesukiSimulationSearcher::defenseForProof(), osl::ntesuki::NtesukiSearcher::defenseWithPlayer(), osl::ntesuki::NtesukiSearcher::handleTonshi(), osl::ntesuki::NtesukiSearcher::selectMoveAttack(), osl::ntesuki::NtesukiSearcher::selectMoveDefense(), osl::ntesuki::OracleProverLight::startFromAttack(), and osl::ntesuki::OracleProverLight::startFromDefense().
void osl::ntesuki::NtesukiRecord::setUpAttackNode | ( | ) |
Definition at line 181 of file ntesukiRecord.tcc.
References CATCH_DFPN, osl::checkmate::FixedDepthSearcher::hasCheckmateMove(), osl::ntesuki::NtesukiMove::INVALID(), osl::Move::PASS(), osl::ntesuki::NtesukiMove::setCheck(), osl::ntesuki::NtesukiMove::setImmediateCheckmate(), and TRY_DFPN.
void osl::ntesuki::NtesukiRecord::setUpDefenseNode | ( | ) |
Definition at line 241 of file ntesukiRecord.tcc.
References CATCH_DFPN, osl::checkmate::FixedDepthSearcher::hasEscapeMove(), osl::ntesuki::NtesukiMove::INVALID(), osl::Move::INVALID(), and TRY_DFPN.
template bool osl::ntesuki::NtesukiRecord::setUpNode< WHITE > | ( | ) |
Fixed Depth Searcher を呼ぶ等.
Definition at line 144 of file ntesukiRecord.tcc.
References osl::BLACK, ntesuki_assert, and osl::WHITE.
Referenced by osl::ntesuki::NtesukiSearcher::attack(), osl::ntesuki::NtesukiSimulationSearcher::attackForDisproof(), osl::ntesuki::NtesukiSimulationSearcher::attackForProof(), osl::ntesuki::NtesukiSearcher::defense(), osl::ntesuki::NtesukiSimulationSearcher::defenseForDisproof(), osl::ntesuki::NtesukiSimulationSearcher::defenseForProof(), osl::ntesuki::NtesukiSimulationSearcher::startFromAttackProof(), and osl::ntesuki::NtesukiSimulationSearcher::startFromDefenseProof().
template void osl::ntesuki::NtesukiRecord::setUseOld< WHITE > | ( | int | pass_left, |
bool | value | ||
) |
Definition at line 888 of file ntesukiRecord.tcc.
Referenced by osl::ntesuki::NtesukiSearcher::selectMoveAttack(), and osl::ntesuki::NtesukiSearcher::selectMoveDefense().
void osl::ntesuki::NtesukiRecord::setVisited | ( | ) | [inline] |
Definition at line 229 of file ntesukiRecord.h.
References visited.
Referenced by osl::ntesuki::NtesukiRecord::VisitLock::VisitLock(), and osl::ntesuki::NtesukiRecord::UnVisitLock::~UnVisitLock().
template void osl::ntesuki::NtesukiRecord::triedPropagatedOracle< WHITE > | ( | int | pass_left | ) |
Definition at line 1062 of file ntesukiRecord.tcc.
Player osl::ntesuki::NtesukiRecord::turn | ( | ) | const [inline] |
手番
Definition at line 105 of file ntesukiRecord.h.
References key.
Referenced by osl::ntesuki::NtesukiMoveGenerator::generateWithRzone().
void osl::ntesuki::NtesukiRecord::updateWithChild | ( | NtesukiRecord * | child, |
int | pass_left | ||
) |
Definition at line 90 of file ntesukiRecord.cc.
References osl::BLACK, rzone(), update(), and osl::WHITE.
flags_t& osl::ntesuki::NtesukiRecord::use_old | ( | ) | [inline, private] |
Definition at line 674 of file ntesukiRecord.h.
References osl::BLACK, use_old_black, and use_old_white.
const flags_t osl::ntesuki::NtesukiRecord::use_old | ( | ) | const [inline, private] |
Definition at line 682 of file ntesukiRecord.h.
References osl::BLACK, use_old_black, and use_old_white.
template bool osl::ntesuki::NtesukiRecord::useOld< WHITE > | ( | int | pass_left | ) | const |
old child を読むべきか.
Definition at line 881 of file ntesukiRecord.tcc.
Referenced by osl::ntesuki::NtesukiSearcher::selectMoveAttack(), and osl::ntesuki::NtesukiSearcher::selectMoveDefense().
Definition at line 177 of file ntesukiRecord.cc.
values_t& osl::ntesuki::NtesukiRecord::values | ( | ) | [inline, private] |
Definition at line 594 of file ntesukiRecord.h.
References osl::BLACK, values_black, and values_white.
const values_t& osl::ntesuki::NtesukiRecord::values | ( | ) | const [inline, private] |
Definition at line 602 of file ntesukiRecord.h.
References osl::BLACK, values_black, and values_white.
bool osl::ntesuki::NtesukiRecord::already_set_up [private] |
Definition at line 536 of file ntesukiRecord.h.
Definition at line 525 of file ntesukiRecord.h.
Referenced by best_move().
Definition at line 525 of file ntesukiRecord.h.
Referenced by best_move().
各プレイヤの持駒
Definition at line 75 of file ntesukiRecord.h.
Referenced by osl::ntesuki::operator<<(), and piece_stand().
bool osl::ntesuki::NtesukiRecord::by_fixed_black [private] |
Definition at line 535 of file ntesukiRecord.h.
Referenced by by_fixed().
bool osl::ntesuki::NtesukiRecord::by_fixed_white [private] |
Definition at line 535 of file ntesukiRecord.h.
Referenced by by_fixed().
bool osl::ntesuki::NtesukiRecord::by_simulation [private] |
Definition at line 534 of file ntesukiRecord.h.
Referenced by isBySimulation().
unsigned int osl::ntesuki::NtesukiRecord::child_count [mutable, private] |
Definition at line 529 of file ntesukiRecord.h.
Referenced by addChildCount(), and getChildCount().
unsigned int osl::ntesuki::NtesukiRecord::confluence_count = 0 [static] |
合流点がいくつあるか.
Definition at line 70 of file ntesukiRecord.h.
Referenced by checkNewParent(), osl::ntesuki::NtesukiSearcher::NtesukiSearcher(), and osl::ntesuki::NtesukiSearcher::~NtesukiSearcher().
bool osl::ntesuki::NtesukiRecord::delay_lame_long = false [static] |
Definition at line 62 of file ntesukiRecord.h.
unsigned short osl::ntesuki::NtesukiRecord::distance |
root からの最短 path の距離
Definition at line 81 of file ntesukiRecord.h.
Referenced by osl::ntesuki::NtesukiTable::allocateWithMove(), osl::ntesuki::NtesukiSearcher::handleTonshi(), osl::ntesuki::operator<<(), osl::ntesuki::NtesukiSearcher::selectMoveAttack(), osl::ntesuki::NtesukiSearcher::selectMoveDefense(), and osl::ntesuki::NtesukiTable::~NtesukiTable().
DAG の分流点
Definition at line 541 of file ntesukiRecord.h.
Referenced by osl::ntesuki::NtesukiSearcher::defenseWithPlayer().
Definition at line 546 of file ntesukiRecord.h.
Referenced by osl::ntesuki::NtesukiSearcher::defenseWithPlayer().
bool osl::ntesuki::NtesukiRecord::final [private] |
Definition at line 537 of file ntesukiRecord.h.
unsigned int osl::ntesuki::NtesukiRecord::fixed_search_depth = 0 [static] |
探索関係の色々な情報.
Definition at line 56 of file ntesukiRecord.h.
Referenced by osl::ntesuki::NtesukiSearcher::NtesukiSearcher().
unsigned int osl::ntesuki::NtesukiRecord::inversion_cost = 0 [static] |
Definition at line 57 of file ntesukiRecord.h.
Referenced by osl::ntesuki::NtesukiSearcher::NtesukiSearcher().
Definition at line 555 of file ntesukiRecord.h.
Referenced by is_ntesuki(), and NtesukiRecord().
Definition at line 555 of file ntesukiRecord.h.
Referenced by is_ntesuki(), and NtesukiRecord().
Definition at line 540 of file ntesukiRecord.h.
Referenced by find_split_right(), osl::ntesuki::NtesukiSearcher::selectMoveAttack(), and osl::ntesuki::NtesukiSearcher::selectMoveDefense().
HashKey osl::ntesuki::NtesukiRecord::key |
局面の HashKey
Definition at line 84 of file ntesukiRecord.h.
Referenced by osl::ntesuki::NtesukiTable::allocateWithMove(), osl::ntesuki::NtesukiTable::Table::collectGarbage(), RecordPrinter::enter(), RecordPrinter2::enter(), MarkAndSweep::enter(), osl::ntesuki::NtesukiTable::findWithMove(), osl::ntesuki::NtesukiTable::findWithMoveConst(), osl::ntesuki::NtesukiTable::Table::forEachRecordFrom(), isBetterFor(), RecordPrinter::operator()(), RecordPrinter2::operator()(), osl::ntesuki::operator<<(), operator==(), turn(), RecordPrinter::withChildMove(), RecordPrinter2::withChildMove(), MarkAndSweep::withChildMove(), and MarkAndSweep::~MarkAndSweep().
同一の局面で,Loop になっているものの Path
Definition at line 528 of file ntesukiRecord.h.
Referenced by loop_path_list().
Definition at line 528 of file ntesukiRecord.h.
Referenced by loop_path_list().
bool osl::ntesuki::NtesukiRecord::max_for_split = false [static] |
Definition at line 60 of file ntesukiRecord.h.
Referenced by checkNewParent().
osl::ntesuki::NtesukiMoveGenerator * osl::ntesuki::NtesukiRecord::mg = NULL [static] |
Definition at line 66 of file ntesukiRecord.h.
Referenced by osl::ntesuki::NtesukiSearcher::NtesukiSearcher().
親局面のリスト
Definition at line 90 of file ntesukiRecord.h.
Referenced by addNewParent(), checkNewParent(), osl::ntesuki::NtesukiTable::Table::collectGarbage(), find_split(), find_split_right(), and isNewParent().
int osl::ntesuki::NtesukiRecord::pass_count = 0 [static] |
Definition at line 59 of file ntesukiRecord.h.
Definition at line 526 of file ntesukiRecord.h.
Referenced by pdpieces().
Definition at line 526 of file ntesukiRecord.h.
Referenced by pdpieces().
Definition at line 556 of file ntesukiRecord.h.
Referenced by NtesukiRecord(), and propagated_oracle().
Definition at line 556 of file ntesukiRecord.h.
Referenced by NtesukiRecord(), and propagated_oracle().
Definition at line 553 of file ntesukiRecord.h.
Referenced by NtesukiRecord(), readCheckDefense(), and setReadCheckDefense().
unsigned int osl::ntesuki::NtesukiRecord::read_count [mutable, private] |
Definition at line 529 of file ntesukiRecord.h.
Referenced by getReadCount().
Definition at line 552 of file ntesukiRecord.h.
Referenced by NtesukiRecord(), readInterpose(), and setReadInterpose().
Definition at line 554 of file ntesukiRecord.h.
Referenced by NtesukiRecord(), readNonAttack(), and setReadNonAttack().
Definition at line 91 of file ntesukiRecord.h.
Referenced by addNewParent(), and osl::ntesuki::NtesukiTable::Table::collectGarbage().
Definition at line 558 of file ntesukiRecord.h.
Referenced by rzone().
Definition at line 549 of file ntesukiRecord.h.
Referenced by osl::ntesuki::NtesukiSearcher::attackWithOrder(), osl::ntesuki::NtesukiMoveGenerator::generateWithRzone(), and osl::ntesuki::NtesukiSearcher::selectMoveAttack().
Definition at line 558 of file ntesukiRecord.h.
Referenced by rzone().
盤面・手番が同じで,持駒だけ違う局面のリスト
Definition at line 87 of file ntesukiRecord.h.
Referenced by propagate_proof().
const unsigned int osl::ntesuki::NtesukiRecord::SIZE = 2 [static] |
各配列のサイズ.
SIZE - 1 手すきまで調べられる.
Definition at line 40 of file ntesukiRecord.h.
Referenced by isWin(), osl::ntesuki::NtesukiSearcher::NtesukiSearcher(), and osl::ntesuki::operator<<().
unsigned int osl::ntesuki::NtesukiRecord::split_count = 0 [static] |
分流点がいくつあるか.
Definition at line 70 of file ntesukiRecord.h.
Referenced by find_split_right(), osl::ntesuki::NtesukiSearcher::NtesukiSearcher(), and osl::ntesuki::NtesukiSearcher::~NtesukiSearcher().
osl::NumEffectState * osl::ntesuki::NtesukiRecord::state = NULL [static] |
Definition at line 65 of file ntesukiRecord.h.
Referenced by osl::ntesuki::NtesukiSearcher::NtesukiSearcher().
osl::ntesuki::NtesukiTable * osl::ntesuki::NtesukiRecord::table = NULL [static] |
Definition at line 67 of file ntesukiRecord.h.
Referenced by osl::ntesuki::NtesukiSearcher::NtesukiSearcher().
bool osl::ntesuki::NtesukiRecord::use_9rzone = false [static] |
Definition at line 63 of file ntesukiRecord.h.
Referenced by osl::ntesuki::NtesukiMoveGenerator::generateWithRzone().
bool osl::ntesuki::NtesukiRecord::use_dominance = false [static] |
Definition at line 58 of file ntesukiRecord.h.
Referenced by NtesukiRecord(), and osl::ntesuki::NtesukiSearcher::NtesukiSearcher().
Definition at line 557 of file ntesukiRecord.h.
Referenced by NtesukiRecord(), and use_old().
Definition at line 557 of file ntesukiRecord.h.
Referenced by NtesukiRecord(), and use_old().
bool osl::ntesuki::NtesukiRecord::use_rzone_move_generation = false [static] |
Definition at line 61 of file ntesukiRecord.h.
Definition at line 531 of file ntesukiRecord.h.
Definition at line 524 of file ntesukiRecord.h.
Referenced by NtesukiRecord(), and values().
Definition at line 524 of file ntesukiRecord.h.
Referenced by NtesukiRecord(), and values().
bool osl::ntesuki::NtesukiRecord::visited [private] |
setResult で final な値を設定される直前の result
Definition at line 533 of file ntesukiRecord.h.
Referenced by isVisited(), resetVisited(), and setVisited().
Definition at line 75 of file ntesukiRecord.h.
Referenced by osl::ntesuki::NtesukiTable::allocateWithMove(), osl::ntesuki::operator<<(), and piece_stand().
unsigned int osl::ntesuki::NtesukiRecord::written_count [mutable, private] |
Definition at line 529 of file ntesukiRecord.h.
Referenced by getWrittenCount().