Merged ITS-working with HEAD. Improved some of the documentation and
[u/mrichter/AliRoot.git] / PHOS / AliPHOSClusterizerv1.h
CommitLineData
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
6ad0bfa0 6/* $Id$ */
7
d15a28e7 8////////////////////////////////////////////////
9// Clusterizer implementation version 1 //
10// algorithme class //
11// //
12// Author Yves Schutz SUBATECH //
13// //
14// //
15////////////////////////////////////////////////
16
17// --- ROOT system ---
18
19// --- Standard library ---
20
21// --- AliRoot header files ---
22
23#include "AliPHOSClusterizer.h"
24#include "AliPHOSDigit.h"
25
26
27
28class AliPHOSClusterizerv1 : public AliPHOSClusterizer {
29
30public:
31
32 AliPHOSClusterizerv1() ; // ctor
33 virtual ~AliPHOSClusterizerv1(){} ; // dtor
34
9f616d61 35 Int_t AreNeighbours(AliPHOSDigit * d1, AliPHOSDigit * d2) ; // Checks if digits are in neighbour cells
36 Float_t Calibrate(Int_t Amp){ return (fA + fB * Amp) ;} // Tranforms Amp to energy
37 void FillandSort(const DigitsList * dl, TObjArray * tl) ; // Sorts the list according to increasing id
4a646085 38 virtual void GetNumberOfClustersFound(Int_t * numb) ;
39
40 virtual void GetCalibrationParameters(Float_t & A, Float_t &B) { A = fA; B = fB; }
416692f4 41 virtual Float_t GetEmcClusteringThreshold() { return fEmcClusteringThreshold;}
42 virtual Float_t GetEmcEnergyThreshold() { return fEmcEnergyThreshold; }
43 virtual Float_t GetLocalMaxCut() { return fLocMaxCut;}
44 virtual Float_t GetLogWeightCut() { return fW0;}
45 virtual Float_t GetPpsdClusteringThreshold() { return fPpsdClusteringThreshold; }
46 virtual Float_t GetPpsdEnergyThreshold() { return fPpsdEnergyThreshold; }
4a646085 47
92862013 48 virtual Bool_t IsInEmc(AliPHOSDigit * digit) ; // Tells if id digit is in EMC
d15a28e7 49 virtual void MakeClusters(const DigitsList * dl, RecPointsList * emcl, RecPointsList * ppsdl) ; // does the job
6ad0bfa0 50 virtual void PrintParameters() ;
51 virtual void SetCalibrationParameters(Float_t A,Float_t B){ fA = A ; fB = B;}
52 virtual void SetEmcClusteringThreshold(Float_t cluth) { fEmcClusteringThreshold = cluth ; }
53 virtual void SetEmcEnergyThreshold(Float_t enth) { fEmcEnergyThreshold = enth ; }
54 virtual void SetLocalMaxCut(Float_t cut) { fLocMaxCut = cut ; }
55 virtual void SetLogWeightCut(Float_t w) { fW0 = w ; }
56 virtual void SetPpsdClusteringThreshold(Float_t cluth) { fPpsdClusteringThreshold = cluth ; }
57 virtual void SetPpsdEnergyThreshold(Float_t enth) { fPpsdEnergyThreshold = enth ; }
d15a28e7 58
59private:
60
61 Float_t fA ;
62 Float_t fB ;
63 Float_t fEmcClusteringThreshold ;
64 Float_t fEmcEnergyThreshold ;
65 Float_t fLocMaxCut ;
66 Int_t fNumberOfEmcClusters ;
67 Int_t fNumberOfPpsdClusters ;
68 Float_t fPpsdClusteringThreshold ;
69 Float_t fPpsdEnergyThreshold ;
70 Float_t fW0 ;
92862013 71
d15a28e7 72 ClassDef(AliPHOSClusterizerv1,1) // Clusterizer implementation , version 1
73
74};
75
76#endif // AliPHOSCLUSTERIZERV1_H