TurboPFor: Floating Point c/c++ header
This commit is contained in:
36
fp.h
36
fp.h
@ -21,7 +21,7 @@
|
||||
- twitter : https://twitter.com/powturbo
|
||||
- email : powturbo [_AT_] gmail [_DOT_] com
|
||||
**/
|
||||
// "Floating Point Compressionw/ TurboPFor"
|
||||
// "Floating Point/Integer Compressionw/ TurboPFor"
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
@ -31,28 +31,34 @@ extern "C" {
|
||||
#include <stdint.h>
|
||||
#endif
|
||||
//---- Last value Predictor
|
||||
unsigned char *fppenc64( uint64_t *in, unsigned n, unsigned char *out, uint64_t start);
|
||||
unsigned char *fppdec64( unsigned char *in, unsigned n, uint64_t *out, uint64_t start);
|
||||
unsigned char *fppenc64( uint64_t *in, size_t n, unsigned char *out, uint64_t start);
|
||||
unsigned char *fppdec64( unsigned char *in, size_t n, uint64_t *out, uint64_t start);
|
||||
|
||||
unsigned char *fpgenc64( uint64_t *in, unsigned n, unsigned char *out, uint64_t start);
|
||||
unsigned char *fpgdec64( unsigned char *in, unsigned n, uint64_t *out, uint64_t start);
|
||||
unsigned char *fpgenc64( uint64_t *in, size_t n, unsigned char *out, uint64_t start);
|
||||
unsigned char *fpgdec64( unsigned char *in, size_t n, uint64_t *out, uint64_t start);
|
||||
|
||||
unsigned char *fppdec64(unsigned char *in, unsigned n, uint64_t *out, uint64_t start);
|
||||
unsigned char *fpddenc64(uint64_t *in, unsigned n, unsigned char *out, uint64_t start);
|
||||
unsigned char *fppdec64( unsigned char *in, size_t n, uint64_t *out, uint64_t start);
|
||||
unsigned char *fpddenc64( uint64_t *in, size_t n, unsigned char *out, uint64_t start);
|
||||
|
||||
unsigned char *bitgenc32(uint32_t *in, unsigned n, unsigned char *out, uint32_t start);
|
||||
unsigned char *bitgdec32(unsigned char *in, unsigned n, uint32_t *out, uint32_t start);
|
||||
//---- Delta of delta
|
||||
unsigned char *bitgenc32( uint32_t *in, size_t n, unsigned char *out, uint32_t start);
|
||||
unsigned char *bitgdec32( unsigned char *in, size_t n, uint32_t *out, uint32_t start);
|
||||
|
||||
unsigned char *bitgenc64(uint64_t *in, unsigned n, unsigned char *out, uint64_t start);
|
||||
unsigned char *bitgdec64(unsigned char *in, unsigned n, uint64_t *out, uint64_t start);
|
||||
unsigned char *bitgenc64( uint64_t *in, size_t n, unsigned char *out, uint64_t start);
|
||||
unsigned char *bitgdec64( unsigned char *in, size_t n, uint64_t *out, uint64_t start);
|
||||
|
||||
//unsigned char *bitg0enc32( uint32_t *in, size_t n, unsigned char *out, uint32_t start);
|
||||
//unsigned char *bitg0dec32( unsigned char *in, size_t n, uint32_t *out, uint32_t start);
|
||||
//unsigned char *bitg0enc64( uint64_t *in, size_t n, unsigned char *out, uint64_t start);
|
||||
//unsigned char *bitg0dec64( unsigned char *in, size_t n, uint64_t *out, uint64_t start);
|
||||
|
||||
//---- FCM: Finite Context Method Predictor
|
||||
unsigned char *fpfcmenc64( uint64_t *in, unsigned n, unsigned char *out, uint64_t start);
|
||||
unsigned char *fpfcmdec64( unsigned char *in, unsigned n, uint64_t *out, uint64_t start);
|
||||
unsigned char *fpfcmenc64( uint64_t *in, size_t n, unsigned char *out, uint64_t start);
|
||||
unsigned char *fpfcmdec64( unsigned char *in, size_t n, uint64_t *out, uint64_t start);
|
||||
|
||||
// DFCM: Differential Finite Context Method Predictor
|
||||
unsigned char *fpdfcmenc64(uint64_t *in, unsigned n, unsigned char *out, uint64_t start);
|
||||
unsigned char *fpdfcmdec64(unsigned char *in, unsigned n, uint64_t *out, uint64_t start);
|
||||
unsigned char *fpdfcmenc64(uint64_t *in, size_t n, unsigned char *out, uint64_t start);
|
||||
unsigned char *fpdfcmdec64(unsigned char *in, size_t n, uint64_t *out, uint64_t start);
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user