1 #ifndef _PD_NTESUKI_TABLE_H
2 #define _PD_NTESUKI_TABLE_H
11 #include <boost/scoped_ptr.hpp>
83 signed short distance);
96 void erase(
const HashKey key);
129 typedef hash_set<PathEncoding, HashPathEncoding>
PathSet;
137 unsigned int default_gc_size=0,
148 return table->begin();
150 Table::const_iterator
end()
const
162 signed short distance,
163 const NumEffectState* root_state = NULL)
165 table->root =
table->allocate(key, white_stand, distance);
168 table->rootState.reset(
new NumEffectState(*root_state));
190 unsigned short child_distance = record->
distance + 1;
192 white_stand, child_distance);
206 return table->find(key);
211 return table->find(key);
227 table->collectGarbage(gc_size);
247 if (ps.get(drop_type) == 0)
273 if (ps.get(drop_type) == 0)
286 table->forEachRecord<F>(f);
294 table->forEachRecordFromRoot<F>(f);
302 return table->numEntry;
307 return table->capacity;
317 table->no_gc =
false;
318 if (
table->gc_request && (
table->default_gc_size > 0))
320 table->collectGarbage(
table->default_gc_size);
321 table->gc_request =
false;