]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/hough/AliL3HoughMaxFinder.h
2776e4fdb64cbb5b40afd983db051bece6db622a
[u/mrichter/AliRoot.git] / HLT / hough / AliL3HoughMaxFinder.h
1 #ifndef ALIL3_HOUGH_MaxFinder
2 #define ALIL3_HOUGH_MaxFinder
3
4 #include "AliL3RootTypes.h"
5
6 class AliL3Histogram;
7 class AliL3TrackArray;
8 class AliL3HoughTrack;
9
10
11 class AliL3HoughMaxFinder : public TObject {
12   
13  private:
14
15   Int_t fThreshold;
16   AliL3Histogram *fCurrentHisto;
17
18   Char_t fHistoType;
19
20  public:
21   AliL3HoughMaxFinder(); 
22   AliL3HoughMaxFinder(Char_t *histotype,AliL3Histogram *hist=0);
23   virtual ~AliL3HoughMaxFinder();
24
25   Int_t *FindAbsMaxima();
26   AliL3TrackArray *FindBigMaxima(AliL3Histogram *hist);
27   AliL3TrackArray *FindMaxima(AliL3Histogram *hist,Int_t *rowrange=0,Int_t ref_row=0);
28   AliL3TrackArray *LookForPeaks(AliL3Histogram *hist,Int_t nbins);
29   AliL3TrackArray *LookInWindows(AliL3Histogram *hist,Int_t nbins,Int_t t1,Double_t t2,Int_t t3);
30   Bool_t LocatePeak(AliL3Histogram *hist,AliL3HoughTrack *track,Int_t *xrange,Int_t *yrange,Int_t t1,Double_t t2,Int_t t3);
31   AliL3HoughTrack *FindPeak(Int_t t1,Double_t t2,Int_t t3);
32   AliL3HoughTrack *CalculatePeakInWindow(Int_t *maxbin,Int_t t0,Int_t t1,Double_t t2,Int_t t3);
33   
34   void SetThreshold(Int_t f) {fThreshold = f;}
35   
36   void SetHistogram(AliL3Histogram *hist) {fCurrentHisto = hist;}
37   
38   ClassDef(AliL3HoughMaxFinder,1)
39
40 };
41
42 #endif