|
WPILibC++
2020.3.2
|
The intermediate state used during hashing. More...
#include <Hashing.h>
Public Member Functions | |
| void | mix (const char *s) |
| Mix in a 64-byte buffer of data. More... | |
| uint64_t | finalize (size_t length) |
| Compute the final 64-bit hash code value based on the current state and the length of bytes hashed. | |
Static Public Member Functions | |
| static hash_state | create (const char *s, uint64_t seed) |
| Create a new hash_state structure and initialize it based on the seed and the first 64-byte chunk. More... | |
| static void | mix_32_bytes (const char *s, uint64_t &a, uint64_t &b) |
| Mix 32-bytes from the input sequence into the 16-bytes of 'a' and 'b', including whatever is already in 'a' and 'b'. | |
Public Attributes | |
| uint64_t | h0 |
| uint64_t | h1 |
| uint64_t | h2 |
| uint64_t | h3 |
| uint64_t | h4 |
| uint64_t | h5 |
| uint64_t | h6 |
The intermediate state used during hashing.
Currently, the algorithm for computing hash codes is based on CityHash and keeps 56 bytes of arbitrary state.
|
inlinestatic |
Create a new hash_state structure and initialize it based on the seed and the first 64-byte chunk.
This effectively performs the initial mix.
|
inline |
Mix in a 64-byte buffer of data.
We mix all 64 bytes even when the chunk length is smaller, but we record the actual length.