This commit was generated by cvs2svn to compensate for changes in r3174,
[u/mrichter/AliRoot.git] / HLT / hough / AliL3Transform.h
CommitLineData
4de874d1 1#ifndef ALIL3TRANSFORM_H
2#define ALIL3TRANSFORM_H
3
4
5
6//#include "AliTPCParam.h"
7#include "AliL3RootTypes.h"
8class TFile;
9
10class 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];
27 Double_t fSin[36];
28 Double_t fX[174];
29 Int_t fNPads[174];
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<174)?fNPads[row]:0;}
45 Int_t GetNTimeBins(){return fNTimeBins;}
46
47 Double_t GetEta(Float_t *xyz);
48 Double_t GetPhi(Float_t *xyz);
49 Double_t GetMaxY(Int_t slicerow);
50 void Local2Global(Float_t *xyz,Int_t slice);
51 void Local2GlobalAngle(Float_t *angle,Int_t slice);
52 void Global2LocalAngle(Float_t *angle,Int_t slice);
53
54 void Raw2Local(Float_t *xyz,Int_t sector,Int_t row,Float_t pad,Float_t time);
55 void Local2Global(Float_t *xyz,Int_t sector,Int_t row);
56 void Global2Local(Float_t *xyz,Int_t sector);
57 void Raw2Global(Float_t *xyz,Int_t sector,Int_t row,Float_t pad,Float_t time);
58 void Local2Raw(Float_t *xyz,Int_t sector,Int_t row);
59 void Global2Raw(Float_t *xyz,Int_t sector,Int_t row);
60
61 ClassDef(AliL3Transform,1)
62};
63
64
65#endif