Bitio: Variable Length Coding c/c++ header

This commit is contained in:
x
2023-06-07 13:58:23 +02:00
parent 47c2b1f794
commit d45420013c

View File

@ -0,0 +1,29 @@
//-- "Integer Compression" variable length encoding with bitio ------------------
#ifdef __cplusplus
extern "C" {
#endif
//-- Gamma coding (length limited) : Full 32 bit range
size_t bitgenc32( unsigned char *_in, size_t _inlen, unsigned char *out);
size_t bitgdec32( unsigned char *in, size_t _outlen, unsigned char *_out);
//-- Rice Coding (adaptive length limited) : Full 32 bit range ---
size_t bitrenc32( unsigned char *_in, size_t _inlen, unsigned char *out);
size_t bitrdec32( unsigned char *in, size_t _outlen, unsigned char *_out);
size_t vlcenc32( unsigned char *_in, size_t _inlen, unsigned char *out); // TurboVLC 32 bits
size_t vlcdec32( unsigned char *in, size_t _outlen, unsigned char *_out);
size_t vlcenc16( unsigned char *_in, size_t _inlen, unsigned char *out); // TurboVLC 16 bits
size_t vlcdec16( unsigned char *in, size_t _outlen, unsigned char *_out);
size_t vlczenc16( unsigned char *_in, size_t _inlen, unsigned char *out); // TurboVLC 16 bits zigzag
size_t vlczdec16( unsigned char *in, size_t _outlen, unsigned char *_out);
size_t vlczenc32( unsigned char *_in, size_t _inlen, unsigned char *out); // TurboVLC 32 bits zigzag
size_t vlczdec32( unsigned char *in, size_t _outlen, unsigned char *_out);
#ifdef __cplusplus
}
#endif