HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UT_XXHash.h File Reference
#include "UT_API.h"
#include <stddef.h>
#include <limits.h>
#include <SYS/SYS_TypeTraits.h>
+ Include dependency graph for UT_XXHash.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  XXH32_canonical_t
 Canonical (big endian) representation of XXH32_hash_t. More...
 
struct  XXH64_canonical_t
 
struct  XXH128_hash_t
 The return value from 128-bit hashes. More...
 
struct  XXH128_canonical_t
 

Macros

#define XXH_NAMESPACE   UT_
 
#define XXHASH_H_5627135585666179   1
 
#define XXH_PUBLIC_API   /* do nothing */
 Marks a global symbol. More...
 
#define XXH_PUBLIC_API   UT_API
 Marks a global symbol. More...
 
#define XXH_CAT(A, B)   A##B
 
#define XXH_NAME2(A, B)   XXH_CAT(A,B)
 
#define XXH_versionNumber   XXH_NAME2(XXH_NAMESPACE, XXH_versionNumber)
 
#define XXH32   XXH_NAME2(XXH_NAMESPACE, XXH32)
 
#define XXH32_createState   XXH_NAME2(XXH_NAMESPACE, XXH32_createState)
 
#define XXH32_freeState   XXH_NAME2(XXH_NAMESPACE, XXH32_freeState)
 
#define XXH32_reset   XXH_NAME2(XXH_NAMESPACE, XXH32_reset)
 
#define XXH32_update   XXH_NAME2(XXH_NAMESPACE, XXH32_update)
 
#define XXH32_digest   XXH_NAME2(XXH_NAMESPACE, XXH32_digest)
 
#define XXH32_copyState   XXH_NAME2(XXH_NAMESPACE, XXH32_copyState)
 
#define XXH32_canonicalFromHash   XXH_NAME2(XXH_NAMESPACE, XXH32_canonicalFromHash)
 
#define XXH32_hashFromCanonical   XXH_NAME2(XXH_NAMESPACE, XXH32_hashFromCanonical)
 
#define XXH64   XXH_NAME2(XXH_NAMESPACE, XXH64)
 
#define XXH64_createState   XXH_NAME2(XXH_NAMESPACE, XXH64_createState)
 
#define XXH64_freeState   XXH_NAME2(XXH_NAMESPACE, XXH64_freeState)
 
#define XXH64_reset   XXH_NAME2(XXH_NAMESPACE, XXH64_reset)
 
#define XXH64_update   XXH_NAME2(XXH_NAMESPACE, XXH64_update)
 
#define XXH64_digest   XXH_NAME2(XXH_NAMESPACE, XXH64_digest)
 
#define XXH64_copyState   XXH_NAME2(XXH_NAMESPACE, XXH64_copyState)
 
#define XXH64_canonicalFromHash   XXH_NAME2(XXH_NAMESPACE, XXH64_canonicalFromHash)
 
#define XXH64_hashFromCanonical   XXH_NAME2(XXH_NAMESPACE, XXH64_hashFromCanonical)
 
#define XXH3_64bits   XXH_NAME2(XXH_NAMESPACE, XXH3_64bits)
 
#define XXH3_64bits_withSecret   XXH_NAME2(XXH_NAMESPACE, XXH3_64bits_withSecret)
 
#define XXH3_64bits_withSeed   XXH_NAME2(XXH_NAMESPACE, XXH3_64bits_withSeed)
 
#define XXH3_64bits_withSecretandSeed   XXH_NAME2(XXH_NAMESPACE, XXH3_64bits_withSecretandSeed)
 
#define XXH3_createState   XXH_NAME2(XXH_NAMESPACE, XXH3_createState)
 
#define XXH3_freeState   XXH_NAME2(XXH_NAMESPACE, XXH3_freeState)
 
#define XXH3_copyState   XXH_NAME2(XXH_NAMESPACE, XXH3_copyState)
 
#define XXH3_64bits_reset   XXH_NAME2(XXH_NAMESPACE, XXH3_64bits_reset)
 
#define XXH3_64bits_reset_withSeed   XXH_NAME2(XXH_NAMESPACE, XXH3_64bits_reset_withSeed)
 
#define XXH3_64bits_reset_withSecret   XXH_NAME2(XXH_NAMESPACE, XXH3_64bits_reset_withSecret)
 
#define XXH3_64bits_reset_withSecretandSeed   XXH_NAME2(XXH_NAMESPACE, XXH3_64bits_reset_withSecretandSeed)
 
#define XXH3_64bits_update   XXH_NAME2(XXH_NAMESPACE, XXH3_64bits_update)
 
#define XXH3_64bits_digest   XXH_NAME2(XXH_NAMESPACE, XXH3_64bits_digest)
 
#define XXH3_generateSecret   XXH_NAME2(XXH_NAMESPACE, XXH3_generateSecret)
 
#define XXH3_generateSecret_fromSeed   XXH_NAME2(XXH_NAMESPACE, XXH3_generateSecret_fromSeed)
 
#define XXH128   XXH_NAME2(XXH_NAMESPACE, XXH128)
 
#define XXH3_128bits   XXH_NAME2(XXH_NAMESPACE, XXH3_128bits)
 
#define XXH3_128bits_withSeed   XXH_NAME2(XXH_NAMESPACE, XXH3_128bits_withSeed)
 
#define XXH3_128bits_withSecret   XXH_NAME2(XXH_NAMESPACE, XXH3_128bits_withSecret)
 
#define XXH3_128bits_withSecretandSeed   XXH_NAME2(XXH_NAMESPACE, XXH3_128bits_withSecretandSeed)
 
#define XXH3_128bits_reset   XXH_NAME2(XXH_NAMESPACE, XXH3_128bits_reset)
 
#define XXH3_128bits_reset_withSeed   XXH_NAME2(XXH_NAMESPACE, XXH3_128bits_reset_withSeed)
 
#define XXH3_128bits_reset_withSecret   XXH_NAME2(XXH_NAMESPACE, XXH3_128bits_reset_withSecret)
 
#define XXH3_128bits_reset_withSecretandSeed   XXH_NAME2(XXH_NAMESPACE, XXH3_128bits_reset_withSecretandSeed)
 
#define XXH3_128bits_update   XXH_NAME2(XXH_NAMESPACE, XXH3_128bits_update)
 
#define XXH3_128bits_digest   XXH_NAME2(XXH_NAMESPACE, XXH3_128bits_digest)
 
#define XXH128_isEqual   XXH_NAME2(XXH_NAMESPACE, XXH128_isEqual)
 
#define XXH128_cmp   XXH_NAME2(XXH_NAMESPACE, XXH128_cmp)
 
#define XXH128_canonicalFromHash   XXH_NAME2(XXH_NAMESPACE, XXH128_canonicalFromHash)
 
#define XXH128_hashFromCanonical   XXH_NAME2(XXH_NAMESPACE, XXH128_hashFromCanonical)
 
#define XXH_PUBLIC_API   /* do nothing */
 Marks a global symbol. More...
 
#define XXH_PUBLIC_API   UT_API
 Marks a global symbol. More...
 
#define XXH_CONSTF   /* disable */
 
#define XXH_PUREF
 
#define XXH_MALLOCF
 
#define XXH_VERSION_MAJOR   0
 
#define XXH_VERSION_MINOR   8
 
#define XXH_VERSION_RELEASE   1
 
#define XXH_VERSION_NUMBER   (XXH_VERSION_MAJOR *100*100 + XXH_VERSION_MINOR *100 + XXH_VERSION_RELEASE)
 Version number, encoded as two digits each. More...
 
#define XXH_HAS_ATTRIBUTE(x)   0
 
#define XXH_HAS_C_ATTRIBUTE(x)   0
 
#define XXH_HAS_CPP_ATTRIBUTE(x)   0
 
#define XXH_FALLTHROUGH   /* fallthrough */
 
#define XXH3_SECRET_SIZE_MIN   136
 

Typedefs

typedef struct XXH32_state_s XXH32_state_t
 The opaque state struct for the XXH32 streaming API. More...
 
typedef struct XXH64_state_s XXH64_state_t
 The opaque state struct for the XXH64 streaming API. More...
 
typedef struct XXH3_state_s XXH3_state_t
 The state struct for the XXH3 streaming API. More...
 
typedef unsigned long long XXH64_hash_t
 

Enumerations

enum  XXH_errorcode { XXH_OK = 0, XXH_ERROR }
 Exit code for the streaming API. More...
 

Functions

XXH_PUBLIC_API XXH_CONSTF unsigned XXH_versionNumber (void)
 Obtains the xxHash version. More...
 
XXH_PUBLIC_API XXH_PUREF
XXH32_hash_t 
XXH32 (const void *input, size_t length, XXH32_hash_t seed)
 Calculates the 32-bit hash of input using xxHash32. More...
 
XXH_PUBLIC_API XXH_MALLOCF
XXH32_state_t
XXH32_createState (void)
 Allocates an XXH32_state_t. More...
 
XXH_PUBLIC_API XXH_errorcode XXH32_freeState (XXH32_state_t *statePtr)
 Frees an XXH32_state_t. More...
 
XXH_PUBLIC_API void XXH32_copyState (XXH32_state_t *dst_state, const XXH32_state_t *src_state)
 Copies one XXH32_state_t to another. More...
 
XXH_PUBLIC_API XXH_errorcode XXH32_reset (XXH32_state_t *statePtr, XXH32_hash_t seed)
 Resets an XXH32_state_t to begin a new hash. More...
 
XXH_PUBLIC_API XXH_errorcode XXH32_update (XXH32_state_t *statePtr, const void *input, size_t length)
 Consumes a block of input to an XXH32_state_t. More...
 
XXH_PUBLIC_API XXH_PUREF
XXH32_hash_t 
XXH32_digest (const XXH32_state_t *statePtr)
 Returns the calculated hash value from an XXH32_state_t. More...
 
XXH_PUBLIC_API void XXH32_canonicalFromHash (XXH32_canonical_t *dst, XXH32_hash_t hash)
 Converts an XXH32_hash_t to a big endian XXH32_canonical_t. More...
 
XXH_PUBLIC_API XXH_PUREF
XXH32_hash_t 
XXH32_hashFromCanonical (const XXH32_canonical_t *src)
 Converts an XXH32_canonical_t to a native XXH32_hash_t. More...
 
XXH_PUBLIC_API XXH_PUREF
XXH64_hash_t 
XXH64 (const void *input, size_t length, XXH64_hash_t seed)
 Calculates the 64-bit hash of input using xxHash64. More...
 
XXH_PUBLIC_API XXH_MALLOCF
XXH64_state_t
XXH64_createState (void)
 
XXH_PUBLIC_API XXH_errorcode XXH64_freeState (XXH64_state_t *statePtr)
 
XXH_PUBLIC_API void XXH64_copyState (XXH64_state_t *dst_state, const XXH64_state_t *src_state)
 
XXH_PUBLIC_API XXH_errorcode XXH64_reset (XXH64_state_t *statePtr, XXH64_hash_t seed)
 
XXH_PUBLIC_API XXH_errorcode XXH64_update (XXH64_state_t *statePtr, const void *input, size_t length)
 
XXH_PUBLIC_API XXH_PUREF
XXH64_hash_t 
XXH64_digest (const XXH64_state_t *statePtr)
 
XXH_PUBLIC_API void XXH64_canonicalFromHash (XXH64_canonical_t *dst, XXH64_hash_t hash)
 
XXH_PUBLIC_API XXH_PUREF
XXH64_hash_t 
XXH64_hashFromCanonical (const XXH64_canonical_t *src)
 
XXH_PUBLIC_API XXH_PUREF
XXH64_hash_t 
XXH3_64bits (const void *input, size_t length)
 64-bit unseeded variant of XXH3. More...
 
XXH_PUBLIC_API XXH_PUREF
XXH64_hash_t 
XXH3_64bits_withSeed (const void *input, size_t length, XXH64_hash_t seed)
 64-bit seeded variant of XXH3 More...
 
XXH_PUBLIC_API XXH_PUREF
XXH64_hash_t 
XXH3_64bits_withSecret (const void *data, size_t len, const void *secret, size_t secretSize)
 64-bit variant of XXH3 with a custom "secret". More...
 
XXH_PUBLIC_API XXH_MALLOCF
XXH3_state_t
XXH3_createState (void)
 
XXH_PUBLIC_API XXH_errorcode XXH3_freeState (XXH3_state_t *statePtr)
 
XXH_PUBLIC_API void XXH3_copyState (XXH3_state_t *dst_state, const XXH3_state_t *src_state)
 
XXH_PUBLIC_API XXH_errorcode XXH3_64bits_reset (XXH3_state_t *statePtr)
 
XXH_PUBLIC_API XXH_errorcode XXH3_64bits_reset_withSeed (XXH3_state_t *statePtr, XXH64_hash_t seed)
 
XXH_PUBLIC_API XXH_errorcode XXH3_64bits_reset_withSecret (XXH3_state_t *statePtr, const void *secret, size_t secretSize)
 
XXH_PUBLIC_API XXH_errorcode XXH3_64bits_update (XXH3_state_t *statePtr, const void *input, size_t length)
 
XXH_PUBLIC_API XXH_PUREF
XXH64_hash_t 
XXH3_64bits_digest (const XXH3_state_t *statePtr)
 
XXH_PUBLIC_API XXH_PUREF
XXH128_hash_t 
XXH3_128bits (const void *data, size_t len)
 Unseeded 128-bit variant of XXH3. More...
 
XXH_PUBLIC_API XXH_PUREF
XXH128_hash_t 
XXH3_128bits_withSeed (const void *data, size_t len, XXH64_hash_t seed)
 Seeded 128-bit variant of XXH3. More...
 
XXH_PUBLIC_API XXH_PUREF
XXH128_hash_t 
XXH3_128bits_withSecret (const void *data, size_t len, const void *secret, size_t secretSize)
 Custom secret 128-bit variant of XXH3. More...
 
XXH_PUBLIC_API XXH_errorcode XXH3_128bits_reset (XXH3_state_t *statePtr)
 
XXH_PUBLIC_API XXH_errorcode XXH3_128bits_reset_withSeed (XXH3_state_t *statePtr, XXH64_hash_t seed)
 
XXH_PUBLIC_API XXH_errorcode XXH3_128bits_reset_withSecret (XXH3_state_t *statePtr, const void *secret, size_t secretSize)
 
XXH_PUBLIC_API XXH_errorcode XXH3_128bits_update (XXH3_state_t *statePtr, const void *input, size_t length)
 
XXH_PUBLIC_API XXH_PUREF
XXH128_hash_t 
XXH3_128bits_digest (const XXH3_state_t *statePtr)
 
XXH_PUBLIC_API XXH_PUREF int XXH128_isEqual (XXH128_hash_t h1, XXH128_hash_t h2)
 
XXH_PUBLIC_API XXH_PUREF int XXH128_cmp (const void *h128_1, const void *h128_2)
 Compares two XXH128_hash_t This comparator is compatible with stdlib's qsort()/bsearch(). More...
 
XXH_PUBLIC_API void XXH128_canonicalFromHash (XXH128_canonical_t *dst, XXH128_hash_t hash)
 
XXH_PUBLIC_API XXH_PUREF
XXH128_hash_t 
XXH128_hashFromCanonical (const XXH128_canonical_t *src)
 
SYS_FORCE_INLINE UT_API
XXH64_hash_t 
UTxxhash64 (const void *data, size_t len)
 
SYS_FORCE_INLINE UT_API
XXH64_hash_t 
UTxxhash64 (const void *data, size_t len, XXH64_hash_t seed)
 

Function Documentation

SYS_FORCE_INLINE UT_API XXH64_hash_t UTxxhash64 ( const void data,
size_t  len 
)

Definition at line 6215 of file UT_XXHash.h.

SYS_FORCE_INLINE UT_API XXH64_hash_t UTxxhash64 ( const void data,
size_t  len,
XXH64_hash_t  seed 
)

Definition at line 6220 of file UT_XXHash.h.