1 #ifndef __FNV_HASH_H__
2 #define __FNV_HASH_H__
3
4 #include "hash.h"
5
6 typedef struct __fnv_state_t
7 {
8 CMPH_HASH hashfunc;
9 } fnv_state_t;
10
11 fnv_state_t *fnv_state_new();
12 cmph_uint32 fnv_hash(fnv_state_t *state, const char *k, cmph_uint32 keylen);
13 void fnv_state_dump(fnv_state_t *state, char **buf, cmph_uint32 *buflen);
14 fnv_state_t *fnv_state_copy(fnv_state_t *src_state);
15 fnv_state_t *fnv_state_load(const char *buf, cmph_uint32 buflen);
16 void fnv_state_destroy(fnv_state_t *state);
17
18 #endif