]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/hough/AliL3HoughClusterTransformer.h
Coding conventions
[u/mrichter/AliRoot.git] / HLT / hough / AliL3HoughClusterTransformer.h
1 // @(#) $Id$
2
3 #ifndef ALIL3_HOUGHCLUSTERTRANSFORMER
4 #define ALIL3_HOUGHCLUSTERTRANSFORMER
5
6 #include "AliL3RootTypes.h"
7 #include "AliL3HoughBaseTransformer.h"
8
9
10 class AliL3Histogram;
11 class AliL3SpacePointData;
12 class AliL3MemHandler;
13
14 class AliL3HoughClusterTransformer : public AliL3HoughBaseTransformer {
15   
16  private:
17
18   AliL3Histogram **fParamSpace;   //!
19   AliL3MemHandler *fMemHandler;   //!
20   AliL3SpacePointData *fClusters; //!
21   Int_t fNClusters;
22 #ifdef do_mc
23   TrackIndex **fTrackID; //!
24 #endif
25   void DeleteHistograms();
26   
27  public:
28   AliL3HoughClusterTransformer(); 
29   AliL3HoughClusterTransformer(Int_t slice,Int_t patch,Int_t n_eta_segments);
30   virtual ~AliL3HoughClusterTransformer();
31   
32   void CreateHistograms(Int_t nxbin,Float_t ptmin,Int_t nybin,Float_t phimin,Float_t phimax);
33   void CreateHistograms(Int_t nxbin,Float_t xmin,Float_t xmax,
34                         Int_t nybin,Float_t ymin,Float_t ymax);
35   void FindClusters();
36   void Reset();
37   void TransformCircle();
38   void TransformCircleC(Int_t *row_range,Int_t every);
39   void TransformLine(Int_t */*rowrange*/=0,Float_t */*phirange*/=0){};
40   
41   Int_t GetEtaIndex(Double_t eta);
42   AliL3Histogram *GetHistogram(Int_t eta_index);
43   Double_t GetEta(Int_t eta_index,Int_t slice) const;
44   Int_t GetTrackID(Int_t eta_index,Double_t kappa,Double_t psi);
45
46   ClassDef(AliL3HoughClusterTransformer,1) //Normal Hough transformation class
47
48 };
49
50 #endif
51
52
53
54