1 #ifndef __CMPH_HASHTREE_STRUCTS_H__
2 #define __CMPH_HASHTREE_STRUCTS_H__
3
4 #include "hash_state.h"
5
6 struct __hashtree_data_t
7 {
8 cmph_uint32 m; //edges (words) count
9 double c; //constant c
10 cmph_uint8 *size; //size[i] stores the number of edges represented by g[i]
11 cmph_uint32 **g;
12 cmph_uint32 k; //number of components
13 hash_state_t **h1;
14 hash_state_t **h2;
15 hash_state_t *h3;
16 };
17
18 struct __hashtree_config_data_t
19 {
20 CMPH_ALGO leaf_algo;
21 CMPH_HASH hashfuncs[3];
22 cmph_uint32 m; //edges (words) count
23 cmph_uint8 *size; //size[i] stores the number of edges represented by g[i]
24 cmph_uint32 *offset; //offset[i] stores the sum size[0] + ... size[i - 1]
25 cmph_uint32 k; //number of components
26 cmph_uint32 memory;
27 hash_state_t **h1;
28 hash_state_t **h2;
29 hash_state_t *h3;
30 };
31
32 #endif