3 #ifndef AliL3_CompressAC
4 #define AliL3_CompressAC
6 #include "AliL3Compress.h"
9 class AliL3CompressAC : public AliL3Compress {
13 AliL3CompressAC(Int_t slice,Int_t patch,Char_t *path="./",Bool_t writeshape=kFALSE,Int_t event=-1);
14 virtual ~AliL3CompressAC();
16 Bool_t CompressFile();
18 void PrintCompRatio(STDOF *outfile=0);
19 void PrintTotals() const;
22 UChar_t *fCount; //! Array of counts
23 UInt_t *fTotals; //! Array of totals, which is actually the model being used during encoding/decoding
24 UShort_t fMax; // Max number of counts
25 UInt_t fScale; // Scaling factor (not used?)
27 UInt_t fRange; // Range (not used?)
28 UShort_t fLow; // Low bytes?
29 UShort_t fHigh; // High bytes?
30 UShort_t fUnderflowBits; // Underflow (not used?)
31 UShort_t fCode; // Coded informatio?
34 void BuildModel(BIT_FILE *output);
35 void RebuildModel(BIT_FILE *input);
39 void InitDecoder(BIT_FILE *input);
40 void ConvertIntToSymbol(Int_t value);
41 UInt_t ConvertSymbolToInt();
42 void EncodeSymbol(BIT_FILE *output);
43 void RemoveSymbolFromStream(BIT_FILE *input,Int_t j);
44 void FlushEncoder(BIT_FILE *output);
46 ClassDef(AliL3CompressAC,1)