xxHash  0.8.0
Extremely fast non-cryptographic hash function
Data Fields
XXH3_state_s Struct Reference

Structure for XXH3 streaming API. More...

#include <xxhash.h>

Data Fields

XXH64_hash_t acc [8]
 
unsigned char customSecret [192]
 
unsigned char buffer [256]
 
XXH32_hash_t bufferedSize
 
XXH32_hash_t useSeed
 
size_t nbStripesSoFar
 
XXH64_hash_t totalLen
 
size_t nbStripesPerBlock
 
size_t secretLimit
 
XXH64_hash_t seed
 
XXH64_hash_t reserved64
 
const unsigned char * extSecret
 

Detailed Description

Structure for XXH3 streaming API.

Note
This is only defined when XXH_STATIC_LINKING_ONLY, XXH_INLINE_ALL, or XXH_IMPLEMENTATION is defined. Otherwise it is an opaque type. Never use this definition in combination with dynamic library. This allows fields to safely be changed in the future.
** This structure has a strict alignment requirement of 64 bytes!! ** Do not allocate this with malloc() or new, it will not be sufficiently aligned. Use XXH3_createState() and XXH3_freeState(), or stack allocation.

Typedef'd to XXH3_state_t. Do never access the members of this struct directly.

See also
XXH3_INITSTATE() for stack initialization.
XXH3_createState(), XXH3_freeState().
XXH32_state_s, XXH64_state_s

Field Documentation

◆ acc

XXH64_hash_t XXH3_state_s::acc[8]

The 8 accumulators. Similar to vN in XXH32_state_s::v1 and XXH64_state_s

◆ customSecret

unsigned char XXH3_state_s::customSecret[192]

Used to store a custom secret generated from a seed.

◆ buffer

unsigned char XXH3_state_s::buffer[256]

The internal buffer.

See also
XXH32_state_s::mem32

◆ bufferedSize

XXH32_hash_t XXH3_state_s::bufferedSize

The amount of memory in buffer,

See also
XXH32_state_s::memsize

◆ useSeed

XXH32_hash_t XXH3_state_s::useSeed

Reserved field. Needed for padding on 64-bit.

◆ nbStripesSoFar

size_t XXH3_state_s::nbStripesSoFar

Number or stripes processed.

◆ totalLen

XXH64_hash_t XXH3_state_s::totalLen

Total length hashed. 64-bit even on 32-bit targets.

◆ nbStripesPerBlock

size_t XXH3_state_s::nbStripesPerBlock

Number of stripes per block.

◆ secretLimit

size_t XXH3_state_s::secretLimit

Size of customSecret or extSecret

◆ seed

XXH64_hash_t XXH3_state_s::seed

Seed for _withSeed variants. Must be zero otherwise,

See also
XXH3_INITSTATE()

◆ reserved64

XXH64_hash_t XXH3_state_s::reserved64

Reserved field.

◆ extSecret

const unsigned char* XXH3_state_s::extSecret

Reference to an external secret for the _withSecret variants, NULL for other variants.


The documentation for this struct was generated from the following file: