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< Value, 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.

References itk::num_primes, and itk::prime_list.

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.

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.

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::CellInterface< TPixelType, TCellTraits >::MultiVisitor::AddVisitor(), itk::hashtable_base< Value, Alloc >::new_node(), and itk::hash_map< Array< IdentifierType >, IdentifierType, IdentifierArrayHashFunction, IdentifierArrayEqualsFunction >::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, Key, HashFcn, ExtractKey, EqualKey, Alloc >::max_bucket_count(), and itk::next_prime().


Generated at Sun Apr 1 02:48:17 2007 for ITK by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2000