|
| typedef struct XXH64_state_s | XXH64_state_t |
| | The opaque state struct for the XXH64 streaming API.
|
| |
Contains functions used in the classic 64-bit xxHash algorithm.
- Note
- XXH3 provides competitive speed for both 32-bit and 64-bit systems, and offers true 64/128 bit hash results. It provides better speed for systems with vector processing capabilities.
◆ XXH64_createState
Value:
#define XXH_NAME2(A, B)
Definition xxhash.h:252
#define XXH_NAMESPACE
Definition xxhash.h:21
XXH_PUBLIC_API XXH64_state_t * XXH64_createState(void)
Definition xxhash.c:883
Allocates an XXH64_state_t.
- Returns
- An allocated pointer of XXH64_state_t on success.
-
NULL on failure.
- Note
- Must be freed with XXH64_freeState().
◆ XXH64_state_t
The opaque state struct for the XXH64 streaming API.
- See also
- XXH64_state_s for details.
◆ XXH64()
Calculates the 64-bit hash of input using xxHash64.
- Parameters
-
| input | The block of data to be hashed, at least length bytes in size. |
| length | The length of input, in bytes. |
| seed | The 64-bit seed to alter the hash's output predictably. |
- Precondition
- The memory between
input and input + length must be valid, readable, contiguous memory. However, if length is 0, input may be NULL. In C++, this also must be TriviallyCopyable.
- Returns
- The calculated 64-bit xxHash64 value.
- See also
- Single Shot Example for an example.
◆ XXH64_canonicalFromHash()
◆ XXH64_copyState()
Copies one XXH64_state_t to another.
- Parameters
-
| dst_state | The state to copy to. |
| src_state | The state to copy from. |
- Precondition
dst_state and src_state must not be NULL and must not overlap.
◆ XXH64_digest()
Returns the calculated hash value from an XXH64_state_t.
- Parameters
-
| statePtr | The state struct to calculate the hash from. |
- Precondition
statePtr must not be NULL.
- Returns
- The calculated 64-bit xxHash64 value from that state.
- Note
- Calling XXH64_digest() will not affect
statePtr, so you can update, digest, and update again.
◆ XXH64_freeState()
◆ XXH64_hashFromCanonical()
◆ XXH64_reset()
Resets an XXH64_state_t to begin a new hash.
- Parameters
-
| statePtr | The state struct to reset. |
| seed | The 64-bit seed to alter the hash result predictably. |
- Precondition
statePtr must not be NULL.
- Returns
- XXH_OK on success.
-
XXH_ERROR on failure.
- Note
- This function resets and seeds a state. Call it before XXH64_update().
◆ XXH64_update()
Consumes a block of input to an XXH64_state_t.
- Parameters
-
| statePtr | The state struct to update. |
| input | The block of data to be hashed, at least length bytes in size. |
| length | The length of input, in bytes. |
- Precondition
statePtr must not be NULL.
-
The memory between
input and input + length must be valid, readable, contiguous memory. However, if length is 0, input may be NULL. In C++, this also must be TriviallyCopyable.
- Returns
- XXH_OK on success.
-
XXH_ERROR on failure.
- Note
- Call this to incrementally consume blocks of data.