libBf 0.1
Public Types | Public Member Functions | Protected Member Functions | Private Attributes

bf::double_hashing< Hasher, Seed1, Seed2 > Class Template Reference

A hash policy that implements double hashing. More...

#include <hash.h>

Inheritance diagram for bf::double_hashing< Hasher, Seed1, Seed2 >:
Inheritance graph
[legend]

List of all members.

Public Types

typedef Hasher hasher
typedef Seed1 seed1
typedef Seed2 seed2
typedef hasher::value_type value_type
typedef std::vector< value_type > hash_vector

Public Member Functions

 double_hashing (unsigned k)
unsigned k () const
template<typename T >
hash_vector hash (const T &x) const

Protected Member Functions

value_type hash (unsigned i, value_type h1, value_type h2) const

Private Attributes

unsigned k_
hasher h1_
hasher h2_

Detailed Description

template<typename Hasher = basic_hasher, typename Seed1 = fixed_seed<42>, typename Seed2 = fixed_seed<4711>>
class bf::double_hashing< Hasher, Seed1, Seed2 >

A hash policy that implements double hashing.

Template Parameters:
HasherAn unary functor that computes the underlying hash value.
Seed1The seed for the first hasher.
Seed2The seed for the second hasher.

Definition at line 237 of file hash.h.


The documentation for this class was generated from the following file:
 All Classes Functions Variables