]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/hough/AliL3HoughTransformerRow.h
Coding violations...
[u/mrichter/AliRoot.git] / HLT / hough / AliL3HoughTransformerRow.h
1 // @(#) $Id$
2
3 #ifndef ALIL3HOUGHTRANSFORMERROW_H
4 #define ALIL3HOUGHTRANSFORMERROW_H
5
6 #include "AliL3RootTypes.h"
7 #include "AliL3HoughBaseTransformer.h"
8
9 #define MAX_N_GAPS 4
10 #define MAX_GAP_SIZE 4
11 #define MIN_TRACK_LENGTH 70
12 #define MAX_MISS_ROWS 2
13
14 class AliL3Histogram;
15
16 class AliL3HoughTransformerRow : public AliL3HoughBaseTransformer {
17
18  public:
19   AliL3HoughTransformerRow(); 
20   AliL3HoughTransformerRow(Int_t slice,Int_t patch,Int_t netasegments,Bool_t DoMC=kFALSE,Float_t zvertex=0.0);
21   virtual ~AliL3HoughTransformerRow();
22
23   //void CreateHistograms(Float_t ptmin,Float_t ptmax,Float_t ptres,Int_t nybin,Float_t psi);
24   void CreateHistograms(Int_t nxbin,Float_t ptmin,Int_t nybin,Float_t phimin,Float_t phimax);
25   void CreateHistograms(Int_t nxbin,Float_t xmin,Float_t xmax,
26                         Int_t nybin,Float_t ymin,Float_t ymax);
27   void Reset();
28   void TransformCircle();
29
30   Int_t GetEtaIndex(Double_t eta);
31   AliL3Histogram *GetHistogram(Int_t etaindex);
32   Double_t GetEta(Int_t etaindex,Int_t slice);
33   Int_t GetTrackID(Int_t etaindex,Double_t kappa,Double_t psi);
34   UChar_t *GetRowCount(Int_t etaindex);
35   UChar_t *GetGapCount(Int_t etaindex);
36   UChar_t *GetCurrentRowCount(Int_t etaindex);
37   static UChar_t *GetTrackNRows();
38   static UChar_t *GetTrackFirstRow();
39   static UChar_t *GetTrackLastRow();
40   static Float_t GetBeta1() {return fgBeta1;}
41   static Float_t GetBeta2() {return fgBeta2;}
42
43  private:
44   
45   AliL3Histogram **fParamSpace; //!
46
47 #ifdef do_mc
48   static TrackIndex **fgTrackID; //!
49 #endif
50   Bool_t fDoMC; // Do MC labels or not
51
52   void DeleteHistograms(); //Method to clean up the histograms containing Hough space
53
54   static UChar_t **fgRowCount; //!
55   static UChar_t **fgGapCount; //!
56   static UChar_t **fgCurrentRowCount; //!
57
58   static UChar_t *fgTrackNRows; //!
59   static UChar_t *fgTrackFirstRow; //!
60   static UChar_t *fgTrackLastRow; //!
61
62   Float_t *fLUTforwardZ; //!
63   Float_t *fLUTforwardZ2; //!
64   Float_t *fLUTbackwardZ; //!
65   Float_t *fLUTbackwardZ2; //!
66
67   static Float_t fgBeta1,fgBeta2; // Two curves which define the Hough space
68
69   ClassDef(AliL3HoughTransformerRow,1) //TPC Rows Hough transformation class
70
71 };
72
73 #endif
74
75
76
77