]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ITS/AliITSClusterFinderSPD.h
- Compute parameter covariances including absorber dispersion effects
[u/mrichter/AliRoot.git] / ITS / AliITSClusterFinderSPD.h
1 #ifndef ALIITSCLUSTERFINDERSPD_H
2 #define ALIITSCLUSTERFINDERSPD_H
3
4 ////////////////////////////////////////////////
5 //  ITS Cluster Finder Class                 //
6 ////////////////////////////////////////////////
7
8 #include "AliITSClusterFinder.h"
9 #include "AliITSDetTypeRec.h"
10
11 class AliITSMapA1;
12 class AliITSsegmentation;
13 class AliITSsegmentationSPD;
14 class AliITSresponse;
15 class AliITSresponseSPD;
16 class TClonesArray;
17
18
19 class AliITSClusterFinderSPD : public AliITSClusterFinder{
20  public:
21     AliITSClusterFinderSPD();
22     AliITSClusterFinderSPD(AliITSDetTypeRec* dettyp);
23     AliITSClusterFinderSPD(AliITSDetTypeRec* dettyp,
24                            TClonesArray *digits,TClonesArray *recpoints);
25     virtual ~AliITSClusterFinderSPD(){}// destructor
26     //Returns fSegmentation
27     virtual AliITSsegmentationSPD* GetSeg()const{
28         return (AliITSsegmentationSPD*)fDetTypeRec->GetSegmentationModel(0);}  
29     virtual void SetDx(Double_t dx=1.) {fDx=dx;}// set dx
30     virtual void SetDz(Double_t dz=0.) {fDz=dz;}// set dz
31     // Search for clusters
32     virtual void FindRawClusters(Int_t module); 
33     void  DigitToPoint(Int_t nclus, Double_t *xcenter, Double_t *zcenter,
34                        Double_t *errxcenter,Double_t *errzcenter,
35                        Int_t *tr1clus, Int_t *tr2clus, Int_t *tr3clus);
36     void  ClusterFinder(Int_t ndigits,Int_t digx[],Int_t digz[],
37                         Int_t digtr1[],Int_t digtr2[],Int_t digtr3[],
38                         Int_t digtr4[],
39                         Int_t &nclus,
40                         Double_t xcenter[],Double_t zcenter[],
41                         Double_t errxcenter[],Double_t errzcenter[],  
42                         Int_t tr1clus[],Int_t tr2clus[], Int_t tr3clus[]);
43  protected:
44     // copy constructor
45     AliITSClusterFinderSPD(const AliITSClusterFinderSPD &source);
46     // assignment operator
47     AliITSClusterFinderSPD& operator=(const AliITSClusterFinderSPD &source);
48
49     Double_t             fDz;            // dz
50     Double_t             fDx;            // dx
51     Int_t               fMinNCells;     // min num of cells in the cluster
52   
53     ClassDef(AliITSClusterFinderSPD,2)  // SPD clustering
54 };
55 #endif