track counter implemented in ESD reader
[u/mrichter/AliRoot.git] / RICH / AliRICHClusterFinder.h
1 #ifndef AliRICHClusterFinder_h
2 #define AliRICHClusterFinder_h
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 #include "TTask.h"
8
9 #include "AliRICH.h"
10 class AliHitMap;
11
12 class AliRICHClusterFinder : public TTask
13 {
14 public:    
15            AliRICHClusterFinder(AliRICH *pRICH);
16   virtual ~AliRICHClusterFinder()                                          {;}
17   
18   AliRICH *Rich() {return fRICH;}                                             //Pointer to RICH  
19   void     Exec();                                                            //Loop on events and chambers  
20   void     FindClusters(Int_t iChamber);                                      //Find all clusters for a given chamber
21   void     FindClusterContribs(AliRICHcluster *pCluster);                     //Find CombiPid for the current cluster
22   void     FormRawCluster(Int_t i, Int_t j);                                  //form a raw cluster
23   void     FindLocalMaxima();                                                 //Find local maxima in a cluster
24   void     ResolveCluster();                                                  //Try to resolve a cluster with maxima > 2
25   void     FitCoG();                                                          //Evaluate the CoG as the best 
26   void     WriteRawCluster();                                                 //write in the list of cluster  
27   void     WriteResolvedCluster();                                            //write in the list of cluster  
28   AliRICHcluster *GetRawCluster() {return &fRawCluster;}                      //Return pointer to the current raw cluster
29   Bool_t   GetDebug()            const {return fRICH->GetDebug();}            //is debug printout needed?
30 protected:
31   AliRICH                *fRICH;                         //Pointer to RICH
32   AliHitMap              *fHitMap;                       //Hit Map with digit positions
33   AliRICHcluster         fRawCluster;                    //Current raw cluster before deconvolution
34   AliRICHcluster         fResolvedCluster;               //Current cluster after deconvolution
35   Int_t                  fNlocals;                       // number of local maxima
36   Double_t               fLocalX[100],fLocalY[100];      // list of locals X,Y
37   Double_t               fLocalQ[100];                   // list of locals charge Q
38   Int_t                  fLocalC[100];                   // list of locals CombiPid
39   ClassDef(AliRICHClusterFinder,0) //Finds raw clusters, trasfers them to resolved clusters through declustering.
40 };
41 #endif