]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/hough/AliL3HoughBaseTransformer.h
Some additional changes related to the previous changes. AliL3Transform
[u/mrichter/AliRoot.git] / HLT / hough / AliL3HoughBaseTransformer.h
1 #ifndef ALIL3_HOUGHBASETRANSFORMER
2 #define ALIL3_HOUGHBASETRANSFORMER
3
4 #include "AliL3RootTypes.h"
5
6 class AliL3Transform;
7 class AliL3DigitRowData;
8 class AliL3Histogram;
9
10 class AliL3HoughBaseTransformer {
11   
12  private:
13
14   Int_t fSlice;
15   Int_t fPatch;
16   Int_t fNEtaSegments;
17   Double_t fEtaMin;
18   Double_t fEtaMax;
19   Int_t fThreshold;
20   
21   AliL3DigitRowData *fDigitRowData; //!
22   
23  protected:
24   AliL3Transform *fTransform; //!
25
26  public:
27   AliL3HoughBaseTransformer(); 
28   AliL3HoughBaseTransformer(Int_t slice,Int_t patch,Int_t n_eta_segments);
29   virtual ~AliL3HoughBaseTransformer();
30   
31   void SetTransformer(AliL3Transform *tr) {fTransform = tr;}
32   void SetInputData(UInt_t ndigits,AliL3DigitRowData *ptr) {fDigitRowData = ptr;}
33   
34   virtual void CreateHistograms(Int_t nxbin,Double_t ptmin,Int_t nybin,Double_t phimin,Double_t phimax) = 0;
35   virtual void CreateHistograms(Int_t nxbin,Double_t xmin,Double_t xmax,Int_t nybin,Double_t ymin,Double_t ymax) = 0;
36   virtual void Reset() = 0;
37   virtual void TransformCircle() = 0;
38   virtual void TransformCircleC(Int_t row_range) = 0;
39   virtual void TransformLine() = 0;
40
41   //Getters
42   Int_t GetSlice() {return fSlice;}
43   Int_t GetPatch() {return fPatch;}
44   Int_t GetNEtaSegments() {return fNEtaSegments;}
45   Int_t GetThreshold() {return fThreshold;}
46   Double_t GetEtaMin() {return fEtaMin;}
47   Double_t GetEtaMax() {return fEtaMax;}
48   
49   AliL3DigitRowData *GetDataPointer() {return fDigitRowData;}
50  
51   virtual Int_t GetEtaIndex(Double_t eta) = 0;
52   virtual AliL3Histogram *GetHistogram(Int_t eta_index) = 0;
53   
54   //setters
55   void SetThreshold(Int_t i) {fThreshold = i;}
56
57   ClassDef(AliL3HoughBaseTransformer,1) //Hough transformation base class
58
59 };
60
61
62 #endif