Collaboration diagram for Murmur3 Hash Implementation:Macros | |
| #define | BIG_CONSTANT(x) (x##LLU) | 
| Unsigned long long constants.  More... | |
Functions | |
| uint32_t | ns3::Hash::Function::Murmur3Implementation::fmix (uint32_t h) | 
| Finalization mix - force all bits of a hash block to avalanche.  More... | |
| uint64_t | ns3::Hash::Function::Murmur3Implementation::fmix (uint64_t h) | 
| Finalization mix - force all bits of a hash block to avalanche.  More... | |
| uint32_t | ns3::Hash::Function::Murmur3Implementation::getblock (const uint32_t *p, int i) | 
| Block read.  More... | |
| uint64_t | ns3::Hash::Function::Murmur3Implementation::getblock (const uint64_t *p, int i) | 
| Block read.  More... | |
| void | ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x64_128 (const void *key, const int len, const uint32_t seed, void *out) | 
| Initial and incremental hash.  More... | |
| void | ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_128 (const void *key, const int len, uint32_t seed, void *out) | 
| Initial and incremental hash.  More... | |
| void | ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_128_fin (const int len, uint32_t *seeds, void *out) | 
| Finalize a hash.  More... | |
| void | ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_128_incr (const void *key, const int len, uint32_t *seeds, void *out) | 
| Initial and incremental hash.  More... | |
| void | ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_32 (const void *key, int len, uint32_t seed, void *out) | 
| Initial and incremental hash.  More... | |
| void | ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_32_fin (int len, uint32_t seed, void *out) | 
| Finalize a hash.  More... | |
| void | ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_32_incr (const void *key, int len, uint32_t seed, void *out) | 
| Initial and incremental hash.  More... | |
| uint32_t | ns3::Hash::Function::Murmur3Implementation::rotl32 (uint32_t x, int8_t r) | 
| Barrel shift (rotate) left on 32 bits.  More... | |
| uint64_t | ns3::Hash::Function::Murmur3Implementation::rotl64 (uint64_t x, int8_t r) | 
| Barrel shift (rotate) left on 64 bits.  More... | |
| #define BIG_CONSTANT | ( | x | ) | (x##LLU) | 
Unsigned long long constants.
Definition at line 109 of file hash-murmur3.cc.
Referenced by ns3::Hash::Function::Murmur3Implementation::fmix(), and ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x64_128().
      
  | 
  inline | 
Finalization mix - force all bits of a hash block to avalanche.
| [in] | h | Final word of the hash block. | 
Definition at line 139 of file hash-murmur3.cc.
Referenced by ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x64_128(), ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_128_fin(), and ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_32_fin().
 Here is the caller graph for this function:
      
  | 
  inline | 
Finalization mix - force all bits of a hash block to avalanche.
| [in] | h | Final word of the hash block. | 
Definition at line 152 of file hash-murmur3.cc.
References BIG_CONSTANT.
      
  | 
  inline | 
Block read.
If your platform needs to do endian-swapping or can only handle aligned reads, do the conversion here.
| [in] | p | Block base address. | 
| [in] | i | Index into the block. | 
i'th word from the block. Definition at line 122 of file hash-murmur3.cc.
Referenced by ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x64_128(), ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_128_incr(), and ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_32_incr().
 Here is the caller graph for this function:
      
  | 
  inline | 
Block read.
If your platform needs to do endian-swapping or can only handle aligned reads, do the conversion here.
| [in] | p | Block base address. | 
| [in] | i | Index into the block. | 
i'th word from the block. Definition at line 127 of file hash-murmur3.cc.
| void ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x64_128 | ( | const void * | key, | 
| const int | len, | ||
| const uint32_t | seed, | ||
| void * | out | ||
| ) | 
Initial and incremental hash.
| [in] | key | Data to be hashed. | 
| [in] | len | Number of words in the key.  | 
| [in] | seed | Initial or current hash state. | 
| [out] | out | Output hash value. | 
Definition at line 421 of file hash-murmur3.cc.
References BIG_CONSTANT, data, ns3::Hash::Function::Murmur3Implementation::fmix(), ns3::Hash::Function::Murmur3Implementation::getblock(), and ns3::Hash::Function::Murmur3Implementation::rotl64().
 Here is the call graph for this function:| void ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_128 | ( | const void * | key, | 
| const int | len, | ||
| uint32_t | seed, | ||
| void * | out | ||
| ) | 
Initial and incremental hash.
| [in] | key | Data to be hashed. | 
| [in] | len | Number of words in the key.  | 
| [in] | seed | Initial or current hash state. | 
| [out] | out | Output hash value. | 
Definition at line 291 of file hash-murmur3.cc.
References ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_128_fin(), and ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_128_incr().
 Here is the call graph for this function:| void ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_128_fin | ( | const int | len, | 
| uint32_t * | seeds, | ||
| void * | out | ||
| ) | 
Finalize a hash.
| [in] | len | Total number of words that have gone in to the hash. | 
| [in] | seeds | Initial or current hash state. | 
| [out] | out | Output hash value. | 
Definition at line 389 of file hash-murmur3.cc.
References ns3::Hash::Function::Murmur3Implementation::fmix().
Referenced by ns3::Hash::Function::Murmur3::GetHash64(), and ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_128().
 Here is the call graph for this function:
 Here is the caller graph for this function:| void ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_128_incr | ( | const void * | key, | 
| const int | len, | ||
| uint32_t * | seeds, | ||
| void * | out | ||
| ) | 
Initial and incremental hash.
| [in] | key | Data to be hashed. | 
| [in] | len | Number of words in the key.  | 
| [in] | seeds | Initial or current hash state. | 
| [out] | out | Output hash value. | 
Definition at line 301 of file hash-murmur3.cc.
References data, ns3::Hash::Function::Murmur3Implementation::getblock(), and ns3::Hash::Function::Murmur3Implementation::rotl32().
Referenced by ns3::Hash::Function::Murmur3::GetHash64(), and ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_128().
 Here is the call graph for this function:
 Here is the caller graph for this function:| void ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_32 | ( | const void * | key, | 
| int | len, | ||
| uint32_t | seed, | ||
| void * | out | ||
| ) | 
Initial and incremental hash.
| [in] | key | Data to be hashed. | 
| [in] | len | Number of words in the key.  | 
| [in] | seed | Initial or current hash state. | 
| [out] | out | Output hash value. | 
Definition at line 188 of file hash-murmur3.cc.
References ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_32_fin(), and ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_32_incr().
 Here is the call graph for this function:| void ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_32_fin | ( | int | len, | 
| uint32_t | seed, | ||
| void * | out | ||
| ) | 
Finalize a hash.
| [in] | len | Total number of words that have gone in to the hash. | 
| [in] | seed | Initial or current hash state. | 
| [out] | out | Output hash value. | 
Definition at line 244 of file hash-murmur3.cc.
References ns3::Hash::Function::Murmur3Implementation::fmix().
Referenced by ns3::Hash::Function::Murmur3::GetHash32(), and ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_32().
 Here is the call graph for this function:
 Here is the caller graph for this function:| void ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_32_incr | ( | const void * | key, | 
| int | len, | ||
| uint32_t | seed, | ||
| void * | out | ||
| ) | 
Initial and incremental hash.
| [in] | key | Data to be hashed. | 
| [in] | len | Number of words in the key.  | 
| [in] | seed | Initial or current hash state. | 
| [out] | out | Output hash value. | 
Definition at line 196 of file hash-murmur3.cc.
References data, ns3::Hash::Function::Murmur3Implementation::getblock(), and ns3::Hash::Function::Murmur3Implementation::rotl32().
Referenced by ns3::Hash::Function::Murmur3::GetHash32(), and ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_32().
 Here is the call graph for this function:
 Here is the caller graph for this function:
      
  | 
  inline | 
Barrel shift (rotate) left on 32 bits.
| [in] | x | The initial value. | 
| [in] | r | The number of bit positions to rotate. | 
Definition at line 91 of file hash-murmur3.cc.
Referenced by ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_128_incr(), and ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x86_32_incr().
 Here is the caller graph for this function:
      
  | 
  inline | 
Barrel shift (rotate) left on 64 bits.
| [in] | x | The initial value. | 
| [in] | r | The number of bit positions to rotate. | 
Definition at line 103 of file hash-murmur3.cc.
Referenced by ns3::Hash::Function::Murmur3Implementation::MurmurHash3_x64_128().
 Here is the caller graph for this function: