diff --git a/eliasfano.h b/eliasfano.h index 5a730d4..2220492 100644 --- a/eliasfano.h +++ b/eliasfano.h @@ -25,13 +25,20 @@ #ifdef __cplusplus extern "C" { #endif +#include // compress/decompress integer array with n values to the buffer out. Return value = end of output/input buffer unsigned char *efanoenc32( unsigned *__restrict in, unsigned n, unsigned char *__restrict out, unsigned start); +unsigned char *efanoenc64( uint64_t *__restrict in, unsigned n, unsigned char *__restrict out, uint64_t start); + unsigned char *efanodec32( unsigned char *__restrict in, unsigned n, unsigned *__restrict out, unsigned start); +unsigned char *efanodec64( unsigned char *__restrict in, unsigned n, uint64_t *__restrict out, uint64_t start); unsigned char *efano1enc32( unsigned *__restrict in, unsigned n, unsigned char *__restrict out, unsigned start); +unsigned char *efano1enc64( uint64_t *__restrict in, unsigned n, unsigned char *__restrict out, uint64_t start); + unsigned char *efano1dec32( unsigned char *__restrict in, unsigned n, unsigned *__restrict out, unsigned start); +unsigned char *efano1dec64( unsigned char *__restrict in, unsigned n, uint64_t *__restrict out, uint64_t start); unsigned char *efanoencv32( unsigned *__restrict in, unsigned n, unsigned char *__restrict out, unsigned start); unsigned char *efanodecv32( unsigned char *__restrict in, unsigned n, unsigned *__restrict out, unsigned start);