d15a28e7 |
1 | #ifndef ALIPHOSCLUSTERIZERV1_H |
2 | #define ALIPHOSCLUSTERIZERV1_H |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice */ |
5 | |
6 | //////////////////////////////////////////////// |
7 | // Clusterizer implementation version 1 // |
8 | // algorithme class // |
9 | // // |
10 | // Author Yves Schutz SUBATECH // |
11 | // // |
12 | // // |
13 | //////////////////////////////////////////////// |
14 | |
15 | // --- ROOT system --- |
16 | |
17 | // --- Standard library --- |
18 | |
19 | // --- AliRoot header files --- |
20 | |
21 | #include "AliPHOSClusterizer.h" |
22 | #include "AliPHOSDigit.h" |
23 | |
24 | |
25 | |
26 | class AliPHOSClusterizerv1 : public AliPHOSClusterizer { |
27 | |
28 | public: |
29 | |
30 | AliPHOSClusterizerv1() ; // ctor |
31 | virtual ~AliPHOSClusterizerv1(){} ; // dtor |
32 | |
33 | Int_t AreNeighbours(AliPHOSDigit * d1, AliPHOSDigit * d2) ; // checks if digits are in neighbour cells |
34 | Float_t Calibrate(Int_t Amp){ return fA + fB*Amp ;} //Tranforms Amp to energy |
35 | void FillandSort(const DigitsList * dl, TObjArray * tl) ; // sorts the list according to increasing id |
36 | Float_t GetLogWeightCut(void){return fW0 ; } |
37 | Float_t GetLocalMaxCut(void) {return fLocMaxCut ; } |
38 | virtual void GetNumberOfClustersFound(Int_t * numb) ; |
39 | Bool_t IsInEmc(AliPHOSDigit * digit) ; // tells id digit is in EMCA |
40 | virtual void MakeClusters(const DigitsList * dl, RecPointsList * emcl, RecPointsList * ppsdl) ; // does the job |
41 | void PrintParameters() ; |
42 | void SetCalibrationParameters(Float_t A,Float_t B){ fA = A ; fB = B;} |
43 | void SetEmcClusteringThreshold(Float_t cluth) { fEmcClusteringThreshold = cluth ; } |
44 | void SetEmcEnergyThreshold(Float_t enth) { fEmcEnergyThreshold = enth ; } |
45 | void SetLocalMaxCut(Float_t cut) { fLocMaxCut = cut ; } |
46 | void SetLogWeightCut(Float_t w) { fW0 = w ; } |
47 | void SetPpsdClusteringThreshold(Float_t cluth) { fPpsdClusteringThreshold = cluth ; } |
48 | void SetPpsdEnergyThreshold(Float_t enth) { fPpsdEnergyThreshold = enth ; } |
49 | |
50 | private: |
51 | |
52 | Float_t fA ; |
53 | Float_t fB ; |
54 | Float_t fEmcClusteringThreshold ; |
55 | Float_t fEmcEnergyThreshold ; |
56 | Float_t fLocMaxCut ; |
57 | Int_t fNumberOfEmcClusters ; |
58 | Int_t fNumberOfPpsdClusters ; |
59 | Float_t fPpsdClusteringThreshold ; |
60 | Float_t fPpsdEnergyThreshold ; |
61 | Float_t fW0 ; |
62 | |
63 | public: |
64 | |
65 | ClassDef(AliPHOSClusterizerv1,1) // Clusterizer implementation , version 1 |
66 | |
67 | }; |
68 | |
69 | #endif // AliPHOSCLUSTERIZERV1_H |