1 #ifndef ALIITSCLUSTERFINDERSDD_H
2 #define ALIITSCLUSTERFINDERSDD_H
4 ////////////////////////////////////////////////
5 // ITS Cluster Finder Class //
6 ////////////////////////////////////////////////
9 #include "AliITSClusterFinder.h"
14 class AliITSClusterFinderSDD : public AliITSClusterFinder{
17 AliITSClusterFinderSDD(AliITSsegmentation *seg,AliITSresponse *response,
18 TClonesArray *digits,TClonesArray *recpoints);
19 AliITSClusterFinderSDD();
20 virtual ~AliITSClusterFinderSDD();
22 virtual void SetCutAmplitude(Float_t nsigma=4);
23 virtual Int_t CutAmplitude() {// get cut amplitude
24 return fCutAmplitude;}
25 virtual void SetDAnode(Float_t danode=4.2) {// setDAnode
27 virtual Float_t DAnode() {// get DAnode
29 virtual void SetDTime(Float_t dtime=75) {// SetDTime
31 virtual Float_t DTime() {// get DTime
33 virtual void SetMinPeak(Int_t minpeak=10) {// SetMinPeak
35 virtual Int_t MinPeak() {// get MinPeak
37 virtual void SetMinCharge(Int_t mincharge=30) {// SetMinCharge
38 fMinCharge=mincharge;}
39 virtual Int_t MinCharge() {// get MinCharge
41 virtual void SetMinNCells(Int_t minc=3) {// setNCells
43 virtual Int_t MinNCells() {// get MinNCells
45 virtual void SetMaxNCells(Int_t maxc=10) {// setNCells
47 virtual Int_t MaxNCells() {// get MaxNCells
49 virtual void SetTimeCorr(Float_t timec=23.) {// setNCells
51 virtual Float_t TimeCorr() {// get Time Correction (ns)
54 // Search for clusters
55 virtual void FindRawClusters(Int_t mod=0);
56 void Find1DClusters();
57 void Find1DClustersE();
59 void SelectClusters();
61 void ResolveClusters(); // Boris........
62 void ResolveClustersE(); // Ernesto
63 Int_t SearchPeak(Float_t *spect,Int_t xdim,Int_t zdim,Int_t *peakX, Int_t
64 *peakZ, Float_t *peakAmp, Float_t minpeak ); // Ernesto
65 Int_t NoLinearFit(Int_t xdim,Int_t zdim,Float_t *param,Float_t *spe,
66 Int_t *niter, Float_t *chir );
67 void Minim( Int_t xdim, Int_t zdim, Float_t *param, Float_t *prm0,
68 Float_t *steprm,Float_t *chisqr,Float_t *spe,Float_t *speFit );
69 Float_t ChiSqr( Int_t xdim, Int_t zdim, Float_t *spe, Float_t *speFit );
70 void PeakFunc( Int_t xdim, Int_t zdim, Float_t *par, Float_t *spe, Float_t
75 AliITSClusterFinderSDD(const AliITSClusterFinderSDD &source); // copy ctor
76 AliITSClusterFinderSDD& operator=(const AliITSClusterFinderSDD &source);
79 Int_t fModule; //! ITS current module
80 TClonesArray *fClusters; //! clusters
81 Int_t fNclusters; //! num of clusters
82 Float_t fDAnode; //! fDanode
83 Float_t fDTime; //! fDtime
84 Float_t fTimeCorr; //! Correction factor along time coord
85 Int_t fCutAmplitude; //! cut amplitude
86 Int_t fMinPeak; //! min peak
87 Int_t fMinCharge; //! min charge
88 Int_t fMinNCells; //! min num of cells
89 Int_t fMaxNCells; //! max num of cells
91 ClassDef(AliITSClusterFinderSDD,1) // SDD clustering - Piergiorgio C. algo