クラス osl::ntesuki::NtesukiTable

A table to hold ntesukiRecord. [詳細]

#include <ntesukiTable.h>

すべてのメンバ一覧

Public 型

typedef NtesukiRecord record_t
typedef hash_set< PathEncoding,
HashPathEncoding
PathSet

Public メソッド

 NtesukiTable (unsigned int capacity, unsigned int default_gc_size=0, bool verbose=false)
 ~NtesukiTable ()
void clear ()
Table::const_iterator begin () const
Table::const_iterator end () const
NtesukiRecordallocateRoot (const HashKey &key, const PieceStand &white_stand, signed short distance, const NumEffectState *root_state=NULL)
 ơ֥Ҥ.
NtesukiRecordallocateWithMove (NtesukiRecord *record, const NtesukiMove &move)
NtesukiRecordfind (const HashKey &key)
 ơ֥礭Ѳ find .
const NtesukiRecordfind (const HashKey &key) const
void erase (const HashKey key)
 ɽϿ줿Ǥ.
void collectGarbage (unsigned int gc_size)
 ɽ.
NtesukiRecordfindWithMove (NtesukiRecord *record, const NtesukiMove &move)
 Ϳ줿
NtesukiRecordfindWithMoveConst (const NtesukiRecord *record, const NtesukiMove &move)
template<class F>
void forEachRecord (F &f)
 ơ֥Ͽ줿 record F ǽ.
template<class F>
void forEachRecordFromRoot (F &f)
 ơ֥ root node ֤Ĵ٤.
unsigned int size () const
 ơ֥Ͽ줿 record ο.
unsigned int capacity () const
void lockGC ()
void unlockGC ()
bool isVerbose () const

Public 変数

std::vector< int > depths

Private 型

typedef hash_map< SignatureKey,
NtesukiRecord::RecordList
ntesuki_hash_map

Private 変数

boost::scoped_ptr< Tabletable
bool verbose

構成

struct  HashPathEncoding
class  Table


説明

A table to hold ntesukiRecord.

ntesukiTable.h52 行で定義されています。


型定義

ntesukiTable.h55 行で定義されています。

ntesukiTable.h120 行で定義されています。

ntesukiTable.h129 行で定義されています。


コンストラクタとデストラクタ

osl::ntesuki::NtesukiTable::NtesukiTable ( unsigned int  capacity,
unsigned int  default_gc_size = 0,
bool  verbose = false 
)

引数:
capacity ɽݻ

ntesukiTable.cc578 行で定義されています。

osl::ntesuki::NtesukiTable::~NtesukiTable (  ) 

ntesukiTable.cc587 行で定義されています。

参照先 begin(), depth, depths, osl::ntesuki::NtesukiRecord::distance, end(), size(), table, と verbose.


関数

void osl::ntesuki::NtesukiTable::clear (  )  [inline]

ntesukiTable.h141 行で定義されています。

参照先 table.

Table::const_iterator osl::ntesuki::NtesukiTable::begin (  )  const [inline]

Table::const_iterator osl::ntesuki::NtesukiTable::end (  )  const [inline]

NtesukiRecord* osl::ntesuki::NtesukiTable::allocateRoot ( const HashKey &  key,
const PieceStand white_stand,
signed short  distance,
const NumEffectState *  root_state = NULL 
) [inline]

ơ֥Ҥ.

⤷ǤĤʤä硤 ơ֥礭䤷ɤΤʤ顤 Ǥ allocate .

ntesukiTable.h160 行で定義されています。

参照先 table.

参照元 osl::ntesuki::NtesukiSearcher::search().

NtesukiRecord* osl::ntesuki::NtesukiTable::allocateWithMove ( NtesukiRecord record,
const NtesukiMove move 
) [inline]

NtesukiRecord* osl::ntesuki::NtesukiTable::find ( const HashKey &  key  )  [inline]

ơ֥礭Ѳ find .

ntesukiTable.h204 行で定義されています。

参照先 table.

const NtesukiRecord* osl::ntesuki::NtesukiTable::find ( const HashKey &  key  )  const [inline]

ntesukiTable.h209 行で定義されています。

参照先 table.

void osl::ntesuki::NtesukiTable::erase ( const HashKey  key  )  [inline]

ɽϿ줿Ǥ.

ntesukiTable.h217 行で定義されています。

参照先 table.

void osl::ntesuki::NtesukiTable::collectGarbage ( unsigned int  gc_size  )  [inline]

ɽ.

ntesukiTable.h225 行で定義されています。

参照先 table.

NtesukiRecord* osl::ntesuki::NtesukiTable::findWithMove ( NtesukiRecord record,
const NtesukiMove move 
) [inline]

NtesukiRecord* osl::ntesuki::NtesukiTable::findWithMoveConst ( const NtesukiRecord record,
const NtesukiMove move 
) [inline]

template<class F>
void osl::ntesuki::NtesukiTable::forEachRecord ( F &  f  )  [inline]

ơ֥Ͽ줿 record F ǽ.

ntesukiTable.h284 行で定義されています。

参照先 table.

template<class F>
void osl::ntesuki::NtesukiTable::forEachRecordFromRoot ( F &  f  )  [inline]

ơ֥ root node ֤Ĵ٤.

ntesukiTable.h292 行で定義されています。

参照先 table.

unsigned int osl::ntesuki::NtesukiTable::size (  )  const [inline]

unsigned int osl::ntesuki::NtesukiTable::capacity (  )  const [inline]

ntesukiTable.h305 行で定義されています。

参照先 table.

void osl::ntesuki::NtesukiTable::lockGC (  )  [inline]

ntesukiTable.h310 行で定義されています。

参照先 table.

参照元 LockGC::LockGC().

void osl::ntesuki::NtesukiTable::unlockGC (  )  [inline]

ntesukiTable.h315 行で定義されています。

参照先 table.

参照元 LockGC::~LockGC().

bool osl::ntesuki::NtesukiTable::isVerbose (  )  const

ntesukiTable.cc626 行で定義されています。

参照先 verbose.


変数

boost::scoped_ptr<Table> osl::ntesuki::NtesukiTable::table [private]

ntesukiTable.h117 行で定義されています。

参照元 isVerbose(), と ~NtesukiTable().

ntesukiTable.h131 行で定義されています。

参照元 ~NtesukiTable().


このクラスの説明は次のファイルから生成されました:

Thu Oct 8 05:01:17 2009に生成されました。  doxygen 1.5.6