/* Variable-length binary prefix codes for integers */ #ifndef eslVARINT_INCLUDED #define eslVARINT_INCLUDED #include #include "easel.h" extern int esl_varint_expgol(int v, int k, uint64_t *opt_code, int *opt_n); extern int esl_varint_expgol_decode(uint64_t code, int k, int *opt_v, int *opt_n); extern int esl_varint_rice(int v, int k, uint64_t *opt_code, int *opt_n); extern int esl_varint_rice_decode(uint64_t code, int k, int *opt_v, int *opt_n); extern int esl_varint_delta(int v, uint64_t *opt_code, int *opt_n); extern int esl_varint_delta_decode(uint64_t code, int *opt_v, int *opt_n); extern int esl_varint_google(int v, int k, uint64_t *opt_code, int *opt_n); extern int esl_varint_google_decode(uint64_t code, int k, int *opt_v, int *opt_n); #endif // eslVARINT_INCLUDED