diff options
Diffstat (limited to 'cdbmake.h')
| -rw-r--r-- | cdbmake.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/cdbmake.h b/cdbmake.h new file mode 100644 index 0000000..883a231 --- /dev/null +++ b/cdbmake.h | |||
| @@ -0,0 +1,35 @@ | |||
| 1 | #ifndef CDBMAKE_H | ||
| 2 | #define CDBMAKE_H | ||
| 3 | |||
| 4 | #include "uint32.h" | ||
| 5 | |||
| 6 | #define CDBMAKE_HPLIST 1000 | ||
| 7 | |||
| 8 | struct cdbmake_hp { uint32 h; uint32 p; } ; | ||
| 9 | |||
| 10 | struct cdbmake_hplist { | ||
| 11 | struct cdbmake_hp hp[CDBMAKE_HPLIST]; | ||
| 12 | struct cdbmake_hplist *next; | ||
| 13 | int num; | ||
| 14 | } ; | ||
| 15 | |||
| 16 | struct cdbmake { | ||
| 17 | char final[2048]; | ||
| 18 | uint32 count[256]; | ||
| 19 | uint32 start[256]; | ||
| 20 | struct cdbmake_hplist *head; | ||
| 21 | struct cdbmake_hp *split; /* includes space for hash */ | ||
| 22 | struct cdbmake_hp *hash; | ||
| 23 | uint32 numentries; | ||
| 24 | } ; | ||
| 25 | |||
| 26 | extern void cdbmake_pack(); | ||
| 27 | #define CDBMAKE_HASHSTART ((uint32) 5381) | ||
| 28 | extern uint32 cdbmake_hashadd(); | ||
| 29 | |||
| 30 | extern void cdbmake_init(); | ||
| 31 | extern int cdbmake_add(); | ||
| 32 | extern int cdbmake_split(); | ||
| 33 | extern uint32 cdbmake_throw(); | ||
| 34 | |||
| 35 | #endif | ||
