]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/TPCLib/AliHLTTPCDataCompressorHelper.h
Alignment fixes
[u/mrichter/AliRoot.git] / HLT / TPCLib / AliHLTTPCDataCompressorHelper.h
CommitLineData
a6c02c85 1// @(#) $Id$
2
3#ifndef AliHLTTPC_DataCompressorHelper
4#define AliHLTTPC_DataCompressorHelper
5
6#include "AliHLTTPCRootTypes.h"
7
8class AliHLTTPCDataCompressorHelper {
9
10 public:
11 virtual ~AliHLTTPCDataCompressorHelper() {}
12
13 static void SetBitNumbers(Int_t pad,Int_t time,Int_t charge,Int_t shape);
14 static void SetTransverseResolutions(Float_t res1,Float_t res2,Float_t res3,Float_t width=0.005);
15 static void SetLongitudinalResolutions(Float_t res1,Float_t res2,Float_t res3,Float_t width=0.005);
16 static void SetRemainingBitNumbers(Int_t pad,Int_t time,Int_t shape);
17 static Int_t GetNPadBits() {return fgNumPadBits;}
18 static Int_t GetNTimeBits() {return fgNumTimeBits;}
19 static Int_t GetNChargeBits() {return fgNumChargeBits;}
20 static Int_t GetNShapeBits() {return fgNumShapeBits;}
21 static Float_t GetXYWidthStep() {return fgXYWidthStep;}
22 static Float_t GetZWidthStep() {return fgZWidthStep;}
23 static Int_t GetClusterCharge() {return fgClusterCharge;}
24 static Float_t GetXYResidualStep(Int_t row);
25 static Float_t GetZResidualStep(Int_t row);
26 static Int_t GetNPadBitsRemaining() {return fgNumPadBitsRemaining;}
27 static Int_t GetNTimeBitsRemaining() {return fgNumTimeBitsRemaining;}
28 static Int_t GetNShapeBitsRemaining() {return fgNumShapeBitsRemaining;}
29 static Float_t GetPadPrecisionFactor();
30 static Float_t GetTimePrecisionFactor();
31
32 //taken from TMath
33 static Int_t Nint(Double_t x);
34 static Int_t Abs(Int_t d) { return (d > 0) ? d : -d; }
35 static Double_t Abs(Double_t d) { return (d > 0) ? d : -d; }
36
37 private:
38 static Int_t fgNumPadBits; // Number of pad bits
39 static Int_t fgNumTimeBits; // Number of time bits
40 static Int_t fgNumChargeBits; // Number of charge bits
41 static Int_t fgNumShapeBits; // Number of shape bits
42 static Int_t fgNumPadBitsRemaining; // Number of remaining pad bits
43 static Int_t fgNumTimeBitsRemaining; // Number of remaining time bits
44 static Int_t fgNumShapeBitsRemaining; // Number of remaining shape bits
45
46 static Float_t fgXYResidualStep1; // XY resbual at step 1
47 static Float_t fgXYResidualStep2; // XY residual at step 2
48 static Float_t fgXYResidualStep3; // XY resudual at step 3
49 static Float_t fgZResidualStep1; // Z residual at step 1
50 static Float_t fgZResidualStep2; // Z resudual at step 2
51 static Float_t fgZResidualStep3; // Z resudual at step 3
52 static Float_t fgXYWidthStep; // Width of XY step
53 static Float_t fgZWidthStep; // Width of Z step
54 static Int_t fgClusterCharge; // Cluster charge
55
56
57 ClassDef(AliHLTTPCDataCompressorHelper,1)
58
59};
60
61#endif