3 #ifndef AliL3_DataCompressorHelper
4 #define AliL3_DataCompressorHelper
6 #include "AliL3RootTypes.h"
8 class AliL3DataCompressorHelper {
11 static Int_t fNumPadBits;
12 static Int_t fNumTimeBits;
13 static Int_t fNumChargeBits;
14 static Int_t fNumShapeBits;
15 static Int_t fNumPadBitsRemaining;
16 static Int_t fNumTimeBitsRemaining;
17 static Int_t fNumShapeBitsRemaining;
19 static Float_t fXYResidualStep1;
20 static Float_t fXYResidualStep2;
21 static Float_t fXYResidualStep3;
22 static Float_t fZResidualStep1;
23 static Float_t fZResidualStep2;
24 static Float_t fZResidualStep3;
25 static Float_t fXYWidthStep;
26 static Float_t fZWidthStep;
27 static Int_t fClusterCharge;
33 static void SetBitNumbers(Int_t pad,Int_t time,Int_t charge,Int_t shape);
34 static void SetTransverseResolutions(Float_t res1,Float_t res2,Float_t res3,Float_t width=0.005);
35 static void SetLongitudinalResolutions(Float_t res1,Float_t res2,Float_t res3,Float_t width=0.005);
36 static void SetRemainingBitNumbers(Int_t pad,Int_t time,Int_t shape);
37 static const Int_t GetNPadBits() {return fNumPadBits;}
38 static const Int_t GetNTimeBits() {return fNumTimeBits;}
39 static const Int_t GetNChargeBits() {return fNumChargeBits;}
40 static const Int_t GetNShapeBits() {return fNumShapeBits;}
41 static const Float_t GetXYWidthStep() {return fXYWidthStep;}
42 static const Float_t GetZWidthStep() {return fZWidthStep;}
43 static const Int_t GetClusterCharge() {return fClusterCharge;}
44 static const Float_t GetXYResidualStep(Int_t row);
45 static const Float_t GetZResidualStep(Int_t row);
46 static const Int_t GetNPadBitsRemaining() {return fNumPadBitsRemaining;}
47 static const Int_t GetNTimeBitsRemaining() {return fNumTimeBitsRemaining;}
48 static const Int_t GetNShapeBitsRemaining() {return fNumShapeBitsRemaining;}
49 static const Float_t GetPadPrecisionFactor();
50 static const Float_t GetTimePrecisionFactor();
52 ClassDef(AliL3DataCompressorHelper,1)