Public Member Functions | |
| DcmHashDict (int hashTabLen=DCMHASHDICT_DEFAULT_HASHSIZE) | |
| constructor | |
| ~DcmHashDict () | |
| destructor | |
| int | size () const |
| counts total number of entries | |
| void | clear () |
| clears the hash table of all entries | |
| void | put (DcmDictEntry *e) |
| inserts an entry into hash table (deletes old entry if present) | |
| const DcmDictEntry * | get (const DcmTagKey &key, const char *privCreator) const |
| hash table lookup for the given tag key and private creator name. | |
| void | del (const DcmTagKey &k, const char *privCreator) |
| deletes the entry for the given tag and private creator | |
| DcmHashDictIterator | begin () const |
| returns iterator to start of hash table | |
| DcmHashDictIterator | end () const |
| returns iterator to end of hash table | |
| STD_NAMESPACE ostream & | loadSummary (STD_NAMESPACE ostream &out) |
| prints some information about hash table bucket utilization | |
Private Member Functions | |
| DcmHashDict (const DcmHashDict &) | |
| private unimplemented copy constructor | |
| DcmHashDict & | operator= (const DcmHashDict &) |
| private unimplemented copy assignment operator | |
| void | _init (int hashSize) |
| performs initialization for given hash table size, called from constructor | |
| int | hash (const DcmTagKey *k) const |
| compute hash value for given tag key | |
| DcmDictEntry * | insertInList (DcmDictEntryList &lst, DcmDictEntry *e) |
| inserts new entry into given list | |
| DcmDictEntry * | removeInList (DcmDictEntryList &lst, const DcmTagKey &k, const char *privCreator) |
| removes the entry for the given tag and private creator | |
| DcmDictEntry * | findInList (DcmDictEntryList &lst, const DcmTagKey &k, const char *privCreator) const |
| searcjes entry for the given tag and private creator | |
Private Attributes | |
| DcmDictEntryList ** | hashTab |
| array of (hash table size) pointers to DcmDictEntryList elements implementing the different buckets of the hash table | |
| int | hashTabLength |
| number of buckets in hash table | |
| int | lowestBucket |
| index of lowest bucket for which the DcmDictEntryList has been initialized | |
| int | highestBucket |
| index of highest bucket for which the DcmDictEntryList has been initialized | |
| int | entryCount |
| number of entries in hash table | |
Friends | |
| class | DcmHashDictIterator |
Definition at line 208 of file dchashdi.h.
| DcmHashDict::DcmHashDict | ( | int | hashTabLen = DCMHASHDICT_DEFAULT_HASHSIZE |
) | [inline] |
constructor
| hashTabLen | number of buckets in hash table |
Definition at line 215 of file dchashdi.h.
References _init().
| void DcmHashDict::put | ( | DcmDictEntry * | e | ) |
inserts an entry into hash table (deletes old entry if present)
| e | pointer to new entry |
| const DcmDictEntry* DcmHashDict::get | ( | const DcmTagKey & | key, | |
| const char * | privCreator | |||
| ) | const |
hash table lookup for the given tag key and private creator name.
| key | tag key | |
| privCreator | private creator name, may be NULL |
| void DcmHashDict::del | ( | const DcmTagKey & | k, | |
| const char * | privCreator | |||
| ) |
deletes the entry for the given tag and private creator
| k | tag key | |
| privCreator | private creator name, may be NULL |
| int DcmHashDict::hash | ( | const DcmTagKey * | k | ) | const [private] |
compute hash value for given tag key
| k | pointer to tag key |
| DcmDictEntry* DcmHashDict::insertInList | ( | DcmDictEntryList & | lst, | |
| DcmDictEntry * | e | |||
| ) | [private] |
inserts new entry into given list
| lst | list to add to | |
| e | new element to add, will be deleted upon destruction of the hash table |
| DcmDictEntry* DcmHashDict::removeInList | ( | DcmDictEntryList & | lst, | |
| const DcmTagKey & | k, | |||
| const char * | privCreator | |||
| ) | [private] |
removes the entry for the given tag and private creator
| lst | list to remove from | |
| k | tag key | |
| privCreator | private creator name, may be NULL |
| DcmDictEntry* DcmHashDict::findInList | ( | DcmDictEntryList & | lst, | |
| const DcmTagKey & | k, | |||
| const char * | privCreator | |||
| ) | const [private] |
searcjes entry for the given tag and private creator
| lst | list to search in | |
| k | tag key | |
| privCreator | private creator name, may be NULL |