22 #ifndef KALDI_UTIL_HASH_LIST_H_ 23 #define KALDI_UTIL_HASH_LIST_H_ 147 #endif // KALDI_UTIL_HASH_LIST_H_ This code computes Goodness of Pronunciation (GOP) and extracts phone-level pronunciation feature for...
Elem * Insert(I key, T val)
Insert inserts a new element into the hashtable/stored list.
HashList()
Constructor takes no arguments.
std::vector< HashBucket > buckets_
static const size_t allocate_block_size_
std::vector< Elem * > allocated_
void SetSize(size_t sz)
SetSize tells the object how many hash buckets to allocate (should typically be at least twice the nu...
const Elem * GetList() const
Gives the head of the current list to the user.
HashBucket(size_t i, Elem *e)
Elem * Clear()
Clears the hash and gives the head of the current list to the user; ownership is transferred to the u...
Elem * New()
This should probably not be needed to be called directly by the user.
void InsertMore(I key, T val)
Insert inserts another element with same key into the hashtable/ stored list.
Elem * Find(I key)
Find tries to find this element in the current list using the hashtable.
void Delete(Elem *e)
Think of this like delete().
size_t Size()
Returns current number of hash buckets.