files
kpack_c/lzma_c/RangeCoderBitTree.h
rgimad 244e5c92f8 lzma_c: no need to rebuild for using in kpack/kerpack, cleanup
Removed samples, converted indentation to spaces, translated to english, added header for exporting functions.
Added is_kerpack argument to lzma_compress() to make it usable either for kpack and kerpack without rebuild
2025-03-22 18:57:47 +03:00

16 lines
760 B
C

#include "RangeCoderBit.h"
typedef struct
{
CMyBitEncoder Models[1<<8];
int numBitLevels;
} NRangeCoder_CBitTreeEncoder;
extern void CBitTreeEncoder_Init(NRangeCoder_CBitTreeEncoder*e,int numBitLevels);
extern void CBitTreeEncoder_Encode(NRangeCoder_CBitTreeEncoder*e,unsigned symbol);
extern void CBitTreeEncoder_ReverseEncode(NRangeCoder_CBitTreeEncoder*e,unsigned symbol);
extern unsigned CBitTreeEncoder_GetPrice(NRangeCoder_CBitTreeEncoder*e,unsigned symbol);
extern unsigned CBitTreeEncoder_ReverseGetPrice(NRangeCoder_CBitTreeEncoder*e,unsigned symbol);
extern unsigned ReverseBitTreeGetPrice(CMyBitEncoder*Models,unsigned NumBitLevels,unsigned symbol);
extern void ReverseBitTreeEncode(CMyBitEncoder*Models,int NumBitLevels,unsigned symbol);