]> git.uio.no Git - u/mrichter/AliRoot.git/blame - RICH/AliRICHClusterFinder.h
Setting splitlevel to 0 by default in treeH, TreeR and TreeT branches. TreeD is still...
[u/mrichter/AliRoot.git] / RICH / AliRICHClusterFinder.h
CommitLineData
543d5224 1#ifndef AliRICHClusterFinder_h
2#define AliRICHClusterFinder_h
8265fa96 3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
237c933d 7#include "TObject.h"
543d5224 8#include "AliRICH.h"
9
10class AliHitMap;
11class TF1;
12class TClonesArray;
a2f7eaf6 13class AliSegmentation;
237c933d 14class AliRICHResponse;
15class TClonesArray;
16
f5f1abe8 17class AliRICHClusterFinder : public TObject
8265fa96 18{
543d5224 19public:
20 AliRICHClusterFinder(AliRICH *pRICH);
21 virtual ~AliRICHClusterFinder() {;}
22
23 void Exec(); //Loop on events and chambers
24 void FindRawClusters(); //Search for clusters
25 void AddDigit2Cluster(Int_t i, Int_t j, AliRICHRawCluster &c);
26 void Decluster(AliRICHRawCluster *cluster); //Decluster
27 void CalibrateCOG(); //Self Calibration of COG
28 void SinoidalFit(Float_t x, Float_t y, TF1 *func);
29 void CorrectCOG(){;}
30 Bool_t Centered(AliRICHRawCluster *cluster);
31 void SplitByLocalMaxima(AliRICHRawCluster *cluster);
32 void FillCluster(AliRICHRawCluster *cluster, Int_t flag);
33
34 void AddRawCluster(const AliRICHRawCluster c) {c.Print("");Rich()->AddClusterOld(fChamber,c);fNRawClusters++;}
35 void FillCluster(AliRICHRawCluster *cluster) {FillCluster(cluster,1);}
36 void SetNperMax(Int_t npermax=5) {fNperMax = npermax;} //Set max. Number of pads per local cluster
37 void SetDeclusterFlag(Int_t flag=1) {fDeclusterFlag =flag;} //Decluster ?
38 void SetClusterSize(Int_t clsize=10) {fClusterSize = clsize;} //Max. cluster size; bigger clusters will be rejected
39
40 AliRICH * Rich() {return fRICH;}
41//protected:
42 AliRICH *fRICH;
43 AliSegmentation *fSegmentation; //Segmentation model
44 AliRICHResponse* fResponse; //Response model
45 AliHitMap *fHitMap; //Hit Map with digit positions
46 TF1* fCogCorr; //Correction for center of gravity
47 TClonesArray* fDigits; //List of digits
48 Int_t fNdigits; //Number of digits
49 Int_t fChamber; //Chamber number
50 Int_t fNRawClusters; //Number of raw clusters
51 Int_t fNperMax; //Number of pad hits per local maximum
52 Int_t fDeclusterFlag; //Split clusters flag
53 Int_t fClusterSize; //Size of cluster
54 Int_t fNPeaks; //Number of maxima in the cluster
55 ClassDef(AliRICHClusterFinder,0) //Class for clustering and reconstruction of space points
8265fa96 56};
57#endif