Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk_hashtable.h File Reference

Go to the source code of this file.

Namespaces

namespace  itk

Classes

struct  itk::hash< Key >
struct  itk::hash< char * >
struct  itk::hash< const char * >
struct  itk::hash< char >
struct  itk::hash< unsigned char >
struct  itk::hash< signed char >
struct  itk::hash< short >
struct  itk::hash< unsigned short >
struct  itk::hash< int >
struct  itk::hash< unsigned int >
struct  itk::hash< long >
struct  itk::hash< unsigned long >
struct  itk::hashtable_node< Value >
struct  itk::hashtable_iterator< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >
struct  itk::hashtable_const_iterator< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >
class  itk::hashtable_base< Value, Alloc >
class  itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >

Defines

#define vcli_destroy(T, p)   ((T*)p)->~T()
#define __difference_type__   typename hashtable<Value, Key, HashFcn, ExtractKey, EqualKey, Alloc>::difference_type
#define __size_type__   typename hashtable<Value, Key, HashFcn, ExtractKey, EqualKey, Alloc>::size_type
#define __value_type__   typename hashtable<Value, Key, HashFcn, ExtractKey, EqualKey, Alloc>::value_type
#define __key_type__   typename hashtable<Value, Key, HashFcn, ExtractKey, EqualKey, Alloc>::key_type
#define __node__   typename hashtable<Value, Key, HashFcn, ExtractKey, EqualKey, Alloc>::node
#define __reference__   typename hashtable<Value, Key, HashFcn, ExtractKey, EqualKey, Alloc>::reference

Enumerations

enum  { num_primes = 28 }

Functions

vcl_size_t hash_string (const char *s)
unsigned long next_prime (unsigned long n)
template<class Value, class Key, class HashFcn, class ExtractKey, class EqualKey, class Alloc>
bool operator== (hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >const &, hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >const &)
template<class Value, class Key, class HashFcn, class ExtractKey, class EqualKey, class Alloc>
std::forward_iterator_tag iterator_category (const hashtable_iterator< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc > &)
template<class Value, class Key, class HashFcn, class ExtractKey, class EqualKey, class Alloc>
Value * value_type (const hashtable_iterator< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc > &)
template<class Value, class Key, class HashFcn, class ExtractKey, class EqualKey, class Alloc>
ptrdiff_t * distance_type (const hashtable_iterator< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc > &)
template<class Value, class Key, class HashFcn, class ExtractKey, class EqualKey, class Alloc>
std::forward_iterator_tag iterator_category (const hashtable_const_iterator< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc > &)
template<class Value, class Key, class HashFcn, class ExtractKey, class EqualKey, class Alloc>
Value * value_type (const hashtable_const_iterator< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc > &)
template<class Value, class Key, class HashFcn, class ExtractKey, class EqualKey, class Alloc>
ptrdiff_t * distance_type (const hashtable_const_iterator< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc > &)

Variables

const unsigned long prime_list [num_primes]


Define Documentation

#define __difference_type__   typename hashtable<Value, Key, HashFcn, ExtractKey, EqualKey, Alloc>::difference_type
 

Definition at line 595 of file itk_hashtable.h.

#define __key_type__   typename hashtable<Value, Key, HashFcn, ExtractKey, EqualKey, Alloc>::key_type
 

Definition at line 598 of file itk_hashtable.h.

#define __node__   typename hashtable<Value, Key, HashFcn, ExtractKey, EqualKey, Alloc>::node
 

Definition at line 599 of file itk_hashtable.h.

#define __reference__   typename hashtable<Value, Key, HashFcn, ExtractKey, EqualKey, Alloc>::reference
 

Definition at line 600 of file itk_hashtable.h.

#define __size_type__   typename hashtable<Value, Key, HashFcn, ExtractKey, EqualKey, Alloc>::size_type
 

Definition at line 596 of file itk_hashtable.h.

#define __value_type__   typename hashtable<Value, Key, HashFcn, ExtractKey, EqualKey, Alloc>::value_type
 

Definition at line 597 of file itk_hashtable.h.

#define vcli_destroy T,
 )     ((T*)p)->~T()
 

Referenced by itk::hashtable_base< std::pair< const Key, T >, Alloc >::delete_node().


Enumeration Type Documentation

anonymous enum
 

Enumeration values:
num_primes 

Definition at line 246 of file itk_hashtable.h.


Function Documentation

template<class Value, class Key, class HashFcn, class ExtractKey, class EqualKey, class Alloc>
ptrdiff_t* distance_type const hashtable_const_iterator< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc > &   )  [inline]
 

Definition at line 686 of file itk_hashtable.h.

template<class Value, class Key, class HashFcn, class ExtractKey, class EqualKey, class Alloc>
ptrdiff_t* distance_type const hashtable_iterator< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc > &   )  [inline]
 

Definition at line 665 of file itk_hashtable.h.

vcl_size_t hash_string const char *  s  )  [inline]
 

Definition at line 92 of file itk_hashtable.h.

Referenced by itk::hash< const char * >::operator()(), and itk::hash< char * >::operator()().

template<class Value, class Key, class HashFcn, class ExtractKey, class EqualKey, class Alloc>
std::forward_iterator_tag iterator_category const hashtable_const_iterator< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc > &   )  [inline]
 

Definition at line 672 of file itk_hashtable.h.

template<class Value, class Key, class HashFcn, class ExtractKey, class EqualKey, class Alloc>
std::forward_iterator_tag iterator_category const hashtable_iterator< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc > &   )  [inline]
 

Definition at line 651 of file itk_hashtable.h.

unsigned long next_prime unsigned long  n  )  [inline]
 

Definition at line 273 of file itk_hashtable.h.

template<class Value, class Key, class HashFcn, class ExtractKey, class EqualKey, class Alloc>
IUEi_STL_INLINE bool itk::operator== hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >const &  ,
hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >const & 
 

Definition at line 695 of file itk_hashtable.h.

References itk::hashtable_base< Value, Alloc >::buckets, and itk::hashtable< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc >::size().

Referenced by itk::SliceIterator< TPixel, TContainer >::operator!=(), and itk::Vector< TScalarType, 6 >::operator==().

template<class Value, class Key, class HashFcn, class ExtractKey, class EqualKey, class Alloc>
Value* value_type const hashtable_const_iterator< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc > &   )  [inline]
 

Definition at line 679 of file itk_hashtable.h.

Referenced by itk::hashtable_base< std::pair< const Key, T >, Alloc >::new_node().

template<class Value, class Key, class HashFcn, class ExtractKey, class EqualKey, class Alloc>
Value* value_type const hashtable_iterator< Value, Key, HashFcn, ExtractKey, EqualKey, Alloc > &   )  [inline]
 

Definition at line 658 of file itk_hashtable.h.

Referenced by itk::hash_map< unsigned long, segment_t, itk::hash< unsigned long > >::operator[]().


Variable Documentation

const unsigned long itk::prime_list[num_primes] [static]
 

Initial value:



{
  53,         97,         193,       389,       769,
  1543,       3079,       6151,      12289,     24593,
  49157,      98317,      196613,    393241,    786433,
  1572869,    3145739,    6291469,   12582917,  25165843,
  50331653,   100663319,  201326611, 402653189, 805306457, 
  1610612741, 3221225473U, 4294967291U
}

Definition at line 261 of file itk_hashtable.h.

Referenced by itk::hashtable< Value, Value, HashFcn, std::identity< Value >, EqualKey, Alloc >::elems_in_bucket().


Generated at Wed Mar 30 00:17:11 2005 for ITK by doxygen 1.3.9.1 written by Dimitri van Heesch, © 1997-2000