WvStreams
|
Classes | |
class | Iter |
Public Types | |
typedef class WvSorter< T, WvScatterHashBase, WvScatterHashBase::IterBase > | Sorter |
Public Member Functions | |
WvScatterHash (unsigned _numslots=0) | |
T * | operator[] (const K &key) const |
void | add (const T *data, bool autofree=false) |
void | remove (const T *data) |
void | set_autofree (const K &key, bool autofree) |
void | set_autofree (const T *data, bool autofree) |
bool | get_autofree (const K &key) |
bool | get_autofree (const T *data) |
void | zap () |
size_t | count () const |
bool | isempty () const |
size_t | slowcount () const |
Static Public Attributes | |
static const unsigned | null_idx = (unsigned)-1 |
static const unsigned | prime_numbers [] |
Protected Types | |
typedef Comparator< K > | MyComparator |
typedef void * | Slot |
typedef unsigned char | Status |
Protected Member Functions | |
virtual bool | compare (const void *key, const void *elem) const |
unsigned | hash (const T *data) |
virtual unsigned | do_hash (const void *data) |
virtual void | do_delete (void *data) |
unsigned | genfind (const void *data, unsigned hash) const |
Slot | genfind_or_null (const void *data, unsigned hash) const |
void | _add (void *data, bool autofree) |
void | _add (void *data, unsigned hash, bool autofree) |
void | _remove (const void *data, unsigned hash) |
void | _zap () |
void | _set_autofree (const void *data, unsigned hash, bool autofree) |
bool | _get_autofree (const void *data, unsigned hash) |
Protected Attributes | |
Slot * | xslots |
Status * | xstatus |
int | prime_index |
unsigned | numslots |
Friends | |
class | IterBase |
Definition at line 125 of file wvscatterhash.h.
const unsigned WvScatterHashBase::prime_numbers [static, inherited] |
{2u, 5u, 11u, 17u, 31u, 67u, 127u, 251u, 509u, 1021u, 2039u, 4093u, 8191u, 16381u, 32749u, 65521u, 131071u, 262139u, 524287u, 1048573u, 2097143u, 4194301u, 8388593u, 16777213u, 33554393u, 67108859u, 134217689u, 268435399u, 536870909u, 1073741789u, 2147483647u, 4294967281u}
Definition at line 29 of file wvscatterhash.h.