Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator > Class Template Reference

#include <HashTable.hpp>

List of all members.

Public Types

typedef HashBucket< _Key,
_Value > 
bucket_type
typedef _Key key_type
typedef _Value value_type
typedef _HashFunction hash_type
typedef _Comparator compare_type
typedef HashTableIterator<
_Key, _Value, _Comparator > 
iterator

Public Member Functions

 HashTable (size_t size=16384, indri::utility::RegionAllocator *allocator=0)
 ~HashTable ()
_Value * find (const _Key &k) const
_Value * insert (const _Key &k)
_Value * insert (const _Key &k, const _Value &v)
void remove (const _Key &k)
void clear ()
const iteratorend ()
iterator begin ()
size_t size ()

Private Member Functions

void _deleteBucket (bucket_type *b)
bucket_type_newBucket (const _Key &k, bucket_type *p)
bucket_type_newBucket (const _Key &k, const _Value &v, bucket_type *p)
bucket_type ** _parentBucket (const _Key &k) const

Private Attributes

indri::utility::RegionAllocator_allocator
bucket_type ** _table
hash_type _hash
compare_type _compare
size_t _buckets
iterator _end
size_t _count

Friends

class HashTableIterator< _Key, _Value, _Comparator >

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
class indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >


Member Typedef Documentation

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
typedef HashBucket<_Key, _Value> indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::bucket_type
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
typedef _Comparator indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::compare_type
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
typedef _HashFunction indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::hash_type
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
typedef class HashTableIterator< _Key, _Value, _Comparator > indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::iterator
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
typedef _Key indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::key_type
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
typedef _Value indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::value_type
 


Constructor & Destructor Documentation

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::HashTable size_t  size = 16384,
indri::utility::RegionAllocator allocator = 0
[inline]
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::~HashTable  )  [inline]
 


Member Function Documentation

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
void indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::_deleteBucket bucket_type b  )  [inline, private]
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
bucket_type* indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::_newBucket const _Key &  k,
const _Value &  v,
bucket_type p
[inline, private]
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
bucket_type* indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::_newBucket const _Key &  k,
bucket_type p
[inline, private]
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
bucket_type** indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::_parentBucket const _Key &  k  )  const [inline, private]
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
iterator indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::begin  )  [inline]
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
void indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::clear void   )  [inline]
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
const iterator& indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::end  )  [inline]
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
_Value* indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::find const _Key &  k  )  const [inline]
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
_Value* indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::insert const _Key &  k,
const _Value &  v
[inline]
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
_Value* indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::insert const _Key &  k  )  [inline]
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
void indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::remove const _Key &  k  )  [inline]
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
size_t indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::size  )  [inline]
 


Friends And Related Function Documentation

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
friend class HashTableIterator< _Key, _Value, _Comparator > [friend]
 


Member Data Documentation

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
indri::utility::RegionAllocator* indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::_allocator [private]
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
size_t indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::_buckets [private]
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
compare_type indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::_compare [private]
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
size_t indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::_count [private]
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
iterator indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::_end [private]
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
hash_type indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::_hash [private]
 

template<class _Key, class _Value, class _HashFunction = GenericHash<_Key>, class _Comparator = GenericComparator<_Key>>
bucket_type** indri::utility::HashTable< _Key, _Value, _HashFunction, _Comparator >::_table [private]
 


The documentation for this class was generated from the following file:
Generated on Tue Jun 15 11:03:04 2010 for Lemur by doxygen 1.3.4