]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/src/AliL3Transform.h
Added new funtion GetEta
[u/mrichter/AliRoot.git] / HLT / src / AliL3Transform.h
1 #ifndef ALIL3TRANSFORM_H
2 #define ALIL3TRANSFORM_H
3
4
5
6 //#include "AliTPCParam.h"
7 #include "AliL3RootTypes.h"
8 class TFile;
9
10 class AliL3Transform {
11  private:
12 //  AliTPCParam *fParam;
13   Int_t fNTimeBins;
14   Int_t fNRowLow;
15   Int_t fNRowUp;
16   Int_t fNSectorLow;
17   Int_t fNSectorUp;
18   Double_t fPadPitchWidthLow;
19   Double_t fPadPitchWidthUp;
20   Double_t fZWidth;
21   Double_t fZSigma;
22   Int_t fNSector;
23   Int_t fNSlice;
24   Int_t fNRow;
25   Double_t fPi;
26   Double_t fCos[36]; //change this following Init
27   Double_t fSin[36]; //change this following Init
28   Double_t fX[176];  //change this following Init
29   Int_t fNPads[176]; //change this following Init
30  public:
31   AliL3Transform();
32   virtual ~AliL3Transform();
33   void Init();
34
35   Double_t GetPadPitchWidthLow() {return fPadPitchWidthLow;}
36   Double_t GetPadPitchWidthUp() {return fPadPitchWidthUp;}
37
38   Bool_t Slice2Sector(Int_t slice, Int_t slicerow, Int_t & sector, Int_t &row) const;
39
40   Bool_t Sector2Slice(Int_t & slice, Int_t  sector) const;
41   Bool_t Sector2Slice(Int_t & slice, Int_t & slicerow,Int_t  sector, Int_t row) const;
42   
43   Double_t Row2X(Int_t slicerow);
44   Int_t GetNPads(Int_t row){return (row<fNRow)?fNPads[row]:0;}
45   Int_t GetNTimeBins(){return fNTimeBins;}
46
47   Double_t GetEta(Float_t *xyz);
48   Double_t GetEta(Int_t row,Int_t pad,Int_t time);
49   Double_t GetPhi(Float_t *xyz);
50   Double_t GetMaxY(Int_t slicerow);
51   void Local2Global(Float_t *xyz,Int_t slice);
52   void Local2GlobalAngle(Float_t *angle,Int_t slice);
53   void Global2LocalAngle(Float_t *angle,Int_t slice);
54
55   void Raw2Local(Float_t *xyz,Int_t sector,Int_t row,Float_t pad,Float_t time);
56   void Local2Global(Float_t *xyz,Int_t sector,Int_t row);
57   void Global2Local(Float_t *xyz,Int_t sector);
58   void Raw2Global(Float_t *xyz,Int_t sector,Int_t row,Float_t pad,Float_t time);
59   void Local2Raw(Float_t *xyz,Int_t sector,Int_t row);
60   void Global2Raw(Float_t *xyz,Int_t sector,Int_t row);
61   
62   ClassDef(AliL3Transform,1)
63 };
64
65
66 #endif