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