KiCad PCB EDA Suite
|
A streaming C++ equivalent for MurmurHash3_x64_128. More...
#include <mmh3_hash.h>
Public Member Functions | |
MMH3_HASH () | |
MMH3_HASH (uint32_t aSeed) | |
FORCE_INLINE void | reset (uint32_t aSeed=0) |
FORCE_INLINE void | addData (const uint8_t *data, size_t length) |
FORCE_INLINE void | add (const std::string &input) |
FORCE_INLINE void | add (const std::vector< char > &input) |
FORCE_INLINE void | add (int32_t input) |
FORCE_INLINE HASH_128 | digest () |
Private Member Functions | |
FORCE_INLINE uint64_t | getblock64 (int i) |
FORCE_INLINE void | hashBlock () |
FORCE_INLINE void | hashTail () |
FORCE_INLINE void | hashFinal (HASH_128 &out) |
Static Private Member Functions | |
static FORCE_INLINE uint64_t | fmix64 (uint64_t k) |
Private Attributes | ||
uint64_t | h1 | |
uint64_t | h2 | |
union { | ||
uint32_t blocks [4] | ||
uint64_t blocks64 [2] | ||
}; | ||
uint32_t | len | |
A streaming C++ equivalent for MurmurHash3_x64_128.
Definition at line 59 of file mmh3_hash.h.
|
inline |
Definition at line 62 of file mmh3_hash.h.
References reset().
|
inline |
Definition at line 64 of file mmh3_hash.h.
References reset().
|
inline |
Definition at line 95 of file mmh3_hash.h.
References addData(), and FORCE_INLINE.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), SHAPE_POLY_SET::checksum(), EMBEDDED_FILES::CompressAndEncode(), EMBEDDED_FILES::DecompressAndDecode(), S3D_CACHE::getHash(), and EMBEDDED_FILES::EMBEDDED_FILE::Validate().
|
inline |
Definition at line 100 of file mmh3_hash.h.
References addData(), and FORCE_INLINE.
|
inline |
Definition at line 105 of file mmh3_hash.h.
References blocks, FORCE_INLINE, hashBlock(), and len.
|
inline |
Definition at line 73 of file mmh3_hash.h.
References blocks, FORCE_INLINE, hashBlock(), and len.
|
inline |
Definition at line 114 of file mmh3_hash.h.
References FORCE_INLINE, hashFinal(), and hashTail().
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), SHAPE_POLY_SET::checksum(), EMBEDDED_FILES::CompressAndEncode(), EMBEDDED_FILES::DecompressAndDecode(), S3D_CACHE::getHash(), and EMBEDDED_FILES::EMBEDDED_FILE::Validate().
|
inlinestaticprivate |
Definition at line 185 of file mmh3_hash.h.
References BIG_CONSTANT, and FORCE_INLINE.
Referenced by hashFinal().
|
inlineprivate |
Definition at line 128 of file mmh3_hash.h.
References blocks64, and FORCE_INLINE.
Referenced by hashBlock().
|
inlineprivate |
Definition at line 133 of file mmh3_hash.h.
References BIG_CONSTANT, FORCE_INLINE, getblock64(), h1, h2, and ROTL64.
|
inlineprivate |
Definition at line 196 of file mmh3_hash.h.
References fmix64(), FORCE_INLINE, h1, h2, len, and HASH_128::Value64.
Referenced by digest().
|
inlineprivate |
Definition at line 150 of file mmh3_hash.h.
References BIG_CONSTANT, blocks, FORCE_INLINE, h1, h2, len, and ROTL64.
Referenced by digest().
|
inline |
Definition at line 66 of file mmh3_hash.h.
References FORCE_INLINE, h1, h2, and len.
Referenced by BOOST_AUTO_TEST_CASE(), MMH3_HASH(), and MMH3_HASH().
union { ... } MMH3_HASH |
uint32_t MMH3_HASH::blocks[4] |
Definition at line 219 of file mmh3_hash.h.
Referenced by add(), addData(), and hashTail().
uint64_t MMH3_HASH::blocks64[2] |
Definition at line 220 of file mmh3_hash.h.
Referenced by getblock64().
|
private |
Definition at line 215 of file mmh3_hash.h.
Referenced by hashBlock(), hashFinal(), hashTail(), and reset().
|
private |
Definition at line 216 of file mmh3_hash.h.
Referenced by hashBlock(), hashFinal(), hashTail(), and reset().
|
private |
Definition at line 222 of file mmh3_hash.h.
Referenced by add(), addData(), hashFinal(), hashTail(), and reset().