4de874d1 |
1 | #ifndef ALIL3_HOUGHTRANSFORMER |
2 | #define ALIL3_HOUGHTRANSFORMER |
3 | |
4 | #include "AliL3RootTypes.h" |
c52cf5d8 |
5 | #include "AliL3HoughBaseTransformer.h" |
4de874d1 |
6 | |
99e7186b |
7 | class AliL3Histogram; |
4de874d1 |
8 | |
c52cf5d8 |
9 | class AliL3HoughTransformer : public AliL3HoughBaseTransformer { |
4de874d1 |
10 | |
11 | private: |
99e7186b |
12 | |
99e7186b |
13 | AliL3Histogram **fParamSpace; //! |
99e7186b |
14 | void DeleteHistograms(); |
4de874d1 |
15 | |
16 | public: |
17 | AliL3HoughTransformer(); |
99e7186b |
18 | AliL3HoughTransformer(Int_t slice,Int_t patch,Int_t n_eta_segments); |
4de874d1 |
19 | virtual ~AliL3HoughTransformer(); |
99e7186b |
20 | |
e26acabd |
21 | void CreateHistograms(Int_t nxbin,Double_t ptmin,Int_t nybin,Double_t phimin,Double_t phimax); |
3ef466c5 |
22 | void CreateHistograms(Int_t nxbin,Double_t xmin,Double_t xmax, |
23 | Int_t nybin,Double_t ymin,Double_t ymax); |
e26acabd |
24 | void Reset(); |
4fc9a6a4 |
25 | void TransformCircle(); |
3ef466c5 |
26 | void TransformCircleC(Int_t row_range); |
4fc9a6a4 |
27 | void TransformLine(); |
28 | |
c52cf5d8 |
29 | Int_t GetEtaIndex(Double_t eta); |
99e7186b |
30 | AliL3Histogram *GetHistogram(Int_t eta_index); |
4fc9a6a4 |
31 | |
99e7186b |
32 | |
b1886074 |
33 | ClassDef(AliL3HoughTransformer,1) //Hough transformation class |
4de874d1 |
34 | |
35 | }; |
36 | |
99e7186b |
37 | inline AliL3Histogram *AliL3HoughTransformer::GetHistogram(Int_t eta_index) |
38 | { |
c52cf5d8 |
39 | if(!fParamSpace || eta_index >= GetNEtaSegments() || eta_index < 0) |
99e7186b |
40 | return 0; |
41 | if(!fParamSpace[eta_index]) |
42 | return 0; |
43 | return fParamSpace[eta_index]; |
44 | } |
45 | |
4de874d1 |
46 | #endif |