Changes done to include new ALiL3HoughTransformerVhdl.
[u/mrichter/AliRoot.git] / HLT / hough / AliL3HoughTransformerVhdl.h
1 #ifndef ALIL3_HOUGHTRANSFORMERVHDL
2 #define ALIL3_HOUGHTRANSFORMERVDHL
3
4 #include "AliL3RootTypes.h"
5 #include "AliL3HoughBaseTransformer.h"
6
7 class AliL3Histogram;
8
9 class AliL3HoughTransformerVhdl : public AliL3HoughBaseTransformer {
10   
11  private:
12   
13   AliL3Histogram **fParamSpace; //!
14   void DeleteHistograms();
15
16  public:
17   AliL3HoughTransformerVhdl(); 
18   AliL3HoughTransformerVhdl(Int_t slice,Int_t patch,Int_t n_eta_segments);
19   virtual ~AliL3HoughTransformerVhdl();
20   
21   void CreateHistograms(Int_t nxbin,Double_t ptmin,Int_t nybin,Double_t phimin,Double_t phimax);
22   void CreateHistograms(Int_t nxbin,Double_t xmin,Double_t xmax,
23                         Int_t nybin,Double_t ymin,Double_t ymax);
24   void Reset();
25   void TransformCircle();
26   void TransformCircleC(Int_t row_range);
27   void TransformLine();
28
29   Int_t GetEtaIndex(Double_t eta);
30   AliL3Histogram *GetHistogram(Int_t eta_index);
31   
32
33   ClassDef(AliL3HoughTransformerVhdl,1) //Normal Hough transformation class
34
35 };
36
37 inline AliL3Histogram *AliL3HoughTransformerVhdl::GetHistogram(Int_t eta_index)
38 {
39   if(!fParamSpace || eta_index >= GetNEtaSegments() || eta_index < 0)
40     return 0;
41   if(!fParamSpace[eta_index])
42     return 0;
43   return fParamSpace[eta_index];
44 }
45
46 #endif
47
48
49
50