00001
00020 #ifndef BMZ_INTERNAL_H
00021 #define BMZ_INTERNAL_H
00022
00023 #include "bmz.h"
00024
00025
00026
00027
00028 #define BMZ_HASH_MOD 1
00029 #define BMZ_HASH_MOD16X2 2
00030 #define BMZ_HASH_MASK16X2 3
00031 #define BMZ_HASH_MASK 4
00032 #define BMZ_HASH_MASK32X2 5
00033
00034 HT_EXTERN(size_t)
00035 bmz_hash_mod(const void *in, size_t in_len, size_t b, size_t m);
00036
00037 HT_EXTERN(size_t)
00038 bmz_hash_mod16x2(const void *in, size_t in_len, size_t b1, size_t b2,
00039 size_t m1, size_t m2);
00040
00041 HT_EXTERN(size_t)
00042 bmz_hash_mask16x2(const void *in, size_t in_len, size_t b1, size_t b2);
00043
00044 HT_EXTERN(size_t)
00045 bmz_hash_mask(const void *in, size_t in_len, size_t b);
00046
00047 HT_EXTERN(size_t)
00048 bmz_hash_mask32x2(const void *in, size_t in_len, size_t b1, size_t b2);
00049
00050 HT_EXTERN(int)
00051 bmz_check_hash_mod(const void *in, size_t in_len, size_t fp_len,
00052 size_t b, size_t m);
00053
00054 HT_EXTERN(int)
00055 bmz_check_hash_mod16x2(const void *in, size_t in_len, size_t fp_len,
00056 size_t b1, size_t b2, size_t m1, size_t m2);
00057
00058 HT_EXTERN(int)
00059 bmz_check_hash_mask16x2(const void *in, size_t in_len, size_t fp_len,
00060 size_t b1, size_t b2);
00061
00062 HT_EXTERN(int)
00063 bmz_check_hash_mask(const void *in, size_t in_len, size_t fp_len, size_t b);
00064
00065 HT_EXTERN(int)
00066 bmz_check_hash_mask32x2(const void *in, size_t in_len, size_t fp_len,
00067 size_t b1, size_t b2);
00068
00069 HT_EXTERN(void)
00070 bmz_bench_hash(const void *in, size_t in_len, unsigned type);
00071
00072 HT_EXTERN(void)
00073 bmz_bench_lut_mod(const void *in, size_t in_len, size_t fp_len, void *mem,
00074 size_t b, size_t m);
00075
00076 HT_EXTERN(void)
00077 bmz_bench_lut_mod16x2(const void *in, size_t in_len, size_t fp_len, void *mem,
00078 size_t b1, size_t b2, size_t m1, size_t m2);
00079
00080 HT_EXTERN(void)
00081 bmz_bench_lut_mask16x2(const void *in, size_t in_len, size_t fp_len, void *mem,
00082 size_t b1, size_t b2);
00083
00084 HT_EXTERN(void)
00085 bmz_bench_lut_mask(const void *in, size_t in_len, size_t fp_len, void *mem,
00086 size_t b);
00087
00088 HT_EXTERN(void)
00089 bmz_bench_lut_mask32x2(const void *in, size_t in_len, size_t fp_len, void *mem,
00090 size_t b1, size_t b2);
00091
00092
00093
00094
00095
00096 HT_EXTERN(int)
00097 bmz_pack_mod(const void *in, size_t in_len, void *out, size_t *out_len_p,
00098 size_t offset, size_t fp_len, unsigned flags, void *work_mem,
00099 size_t b, size_t m);
00100
00101 HT_EXTERN(int)
00102 bmz_pack_mod16x2(const void *in, size_t in_len, void *out, size_t *out_len_p,
00103 size_t offset, size_t fp_len, unsigned flags, void *work_mem,
00104 size_t b1, size_t b2, size_t m1, size_t m2);
00105
00106 HT_EXTERN(int)
00107 bmz_pack_mask16x2(const void *in, size_t in_len, void *out, size_t *out_len_p,
00108 size_t offset, size_t fp_len, unsigned flags, void *work_mem,
00109 size_t b1, size_t b2);
00110
00111 HT_EXTERN(int)
00112 bmz_pack_mask(const void *in, size_t in_len, void *out, size_t *out_len_p,
00113 size_t offset, size_t fp_len, unsigned flags, void *work_mem,
00114 size_t b);
00115
00116 HT_EXTERN(int)
00117 bmz_pack_mask32x2(const void *in, size_t in_len, void *out, size_t *out_len_p,
00118 size_t offset, size_t fp_len, unsigned flags, void *work_mem,
00119 size_t b1, size_t b2);
00120
00121 HT_EXTERN(int)
00122 bmz_bm_pack_mod(const void *in, size_t in_len, void *out, size_t *out_len_p,
00123 size_t offset, size_t fp_len, void *work_mem,
00124 size_t b, size_t m);
00125
00126 HT_EXTERN(int)
00127 bmz_bm_pack_mod16x2(const void *in, size_t in_len, void *out, size_t *out_len_p,
00128 size_t offset, size_t fp_len, void *work_mem,
00129 size_t b1, size_t b2, size_t m1, size_t m2);
00130
00131 HT_EXTERN(int)
00132 bmz_bm_pack_mask16x2(const void *in, size_t in_len, void *out,
00133 size_t *out_len_p, size_t offset, size_t fp_len,
00134 void *work_mem, size_t b1, size_t b2);
00135
00136 HT_EXTERN(int)
00137 bmz_bm_pack_mask(const void *in, size_t in_len, void *out, size_t *out_len_p,
00138 size_t offset, size_t fp_len, void *work_mem, size_t b);
00139
00140 HT_EXTERN(int)
00141 bmz_bm_pack_mask32x2(const void *in, size_t in_len, void *out,
00142 size_t *out_len_p, size_t offset, size_t fp_len,
00143 void *work_mem, size_t b1, size_t b2);
00144
00145 HT_EXTERN(size_t)
00146 bmz_bm_pack_worklen(size_t in_len, size_t fp_len);
00147
00148 HT_EXTERN(int)
00149 bmz_bm_dump(const void *in, size_t in_len);
00150
00151 HT_EXTERN(int)
00152 bmz_bm_unpack(const void *in, size_t in_len, void *out, size_t *out_len_p);
00153
00154 HT_EXTERN(int)
00155 bmz_lz_pack(const void *in, size_t in_len, void *out, size_t *out_len_p,
00156 void *work_mem);
00157
00158 HT_EXTERN(size_t)
00159 bmz_lz_pack_worklen(size_t in_len);
00160
00161 HT_EXTERN(int)
00162 bmz_lz_unpack(const void *in, size_t in_len, void *out, size_t *out_len_p);
00163
00164 HT_EXTERN(int)
00165 bmz_set_collision_thresh(int thresh);
00166
00167 #endif
00168
00169