- TTEntry() {}
- TTEntry(uint32_t k, Value v, ValueType t, Depth d, Move m, int generation,
- Value statV, Value kingD)
- : key_ (k), data((m & 0x1FFFF) | (t << 20) | (generation << 23)),
- value_(int16_t(v)), depth_(int16_t(d)),
- staticValue_(int16_t(statV)), kingDanger_(int16_t(kingD)) {}
-
- uint32_t key() const { return key_; }
- Depth depth() const { return Depth(depth_); }
- Move move() const { return Move(data & 0x1FFFF); }
- Value value() const { return Value(value_); }
- ValueType type() const { return ValueType((data >> 20) & 7); }
- int generation() const { return (data >> 23); }
- Value static_value() const { return Value(staticValue_); }
- Value king_danger() const { return Value(kingDanger_); }
+ ~TranspositionTable() { free(mem); }
+ void new_search() { ++generation; }
+
+ const TTEntry* probe(const Key key) const;
+ TTEntry* first_entry(const Key key) const;
+ void refresh(const TTEntry* tte) const;
+ void set_size(uint64_t mbSize);
+ void clear();
+ void store(const Key key, Value v, Bound type, Depth d, Move m, Value statV);