1 #ifndef ALIITSCLUSTERFINDERSPD_H
2 #define ALIITSCLUSTERFINDERSPD_H
4 ////////////////////////////////////////////////
5 // ITS Cluster Finder Class //
6 ////////////////////////////////////////////////
8 #include "AliITSClusterFinder.h"
11 class AliITSsegmentation;
12 class AliITSsegmentationSPD;
14 class AliITSresponseSPD;
17 class AliITSClusterFinderSPD : public AliITSClusterFinder{
19 AliITSClusterFinderSPD();
20 AliITSClusterFinderSPD(AliITSsegmentation *segmentation,
22 AliITSClusterFinderSPD(AliITSsegmentation *segmentation,
23 TClonesArray *digits,TClonesArray *recpoints);
24 virtual ~AliITSClusterFinderSPD(){}// destructor
26 AliITSClusterFinderSPD(const AliITSClusterFinderSPD &source);
27 // assignment operator
28 AliITSClusterFinderSPD& operator=(const AliITSClusterFinderSPD &source);
30 virtual AliITSresponseSPD* GetResp()const{
31 return (AliITSresponseSPD*) GetResponse();}//Return Response
32 //Returns fSegmentation
33 virtual AliITSsegmentationSPD* GetSeg()const{
34 return (AliITSsegmentationSPD*)GetSegmentation();}
35 virtual void SetDx(Double_t dx=1.) {fDx=dx;}// set dx
36 virtual void SetDz(Double_t dz=0.) {fDz=dz;}// set dz
37 // Search for clusters
38 virtual void FindRawClusters(Int_t module);
39 void DigitToPoint(Int_t nclus, Double_t *xcenter, Double_t *zcenter,
40 Double_t *errxcenter,Double_t *errzcenter,
41 Int_t *tr1clus, Int_t *tr2clus, Int_t *tr3clus);
42 void ClusterFinder(Int_t ndigits,Int_t digx[],Int_t digz[],
43 Int_t digtr1[],Int_t digtr2[],Int_t digtr3[],
46 Double_t xcenter[],Double_t zcenter[],
47 Double_t errxcenter[],Double_t errzcenter[],
48 Int_t tr1clus[],Int_t tr2clus[], Int_t tr3clus[]);
52 Int_t fMinNCells; // min num of cells in the cluster
54 ClassDef(AliITSClusterFinderSPD,2) // SPD clustering