5 /* History of cvs commits:
8 * Revision 1.13 2007/07/11 13:43:29 hristov
9 * New class AliESDEvent, backward compatibility with the old AliESD (Christian)
11 * Revision 1.12 2007/02/20 20:17:43 hristov
12 * Corrected array size, removed warnings (icc)
14 * Revision 1.11 2006/12/19 08:49:35 gustavo
15 * New PID class for EMCAL, bayesian analysis done with ESD data, PID information filled when calling AliEMCALPID in AliEMCALReconstructor::FillESD()
20 ///////////////////////////////////////////////////////////////////////////////
22 ///////////////////////////////////////////////////////////////////////////////
26 #include "AliESDEvent.h"
29 class AliEMCALPID : public TTask {
34 virtual ~AliEMCALPID() { }
36 void RunPID(AliESDEvent *esd);
37 void ComputePID(Double_t energy, Double_t lambda0); // give the PID of a cluster
38 TArrayD DistLambda0(Double_t energy, Int_t nature); // compute lambda0 distributions
40 Double_t GetPID(Int_t idx) const {if (idx>=0&&idx<3) return fPID[idx]; else return 0.;}
41 Double_t GetPIDFinal(Int_t idx) const {if (idx>=0&&idx<AliPID::kSPECIESN) return fPIDFinal[idx]; else return 0.;}
42 Double_t GetPIDWeight(Int_t idx) const {if (idx>=0&&idx<3) return fPIDWeight[idx]; else return 0.;}
44 void SetPID(Double_t val, Int_t idx) {if (idx>=0&&idx<3) fPID[idx] = val;}
45 void SetPIDFinal(Double_t val, Int_t idx) {if (idx>=0&&idx<AliPID::kSPECIESN) fPIDFinal[idx] = val;}
46 void SetPIDWeight(Double_t val, Int_t idx) {if (idx>=0&&idx<3) fPIDWeight[idx] = val;}
47 void SetPrintInfo(Bool_t yesno) {fPrintInfo = yesno;}
48 void SetReconstructor(Bool_t yesno) {fReconstructor = yesno;}
51 Double_t Polynomial(Double_t x, Double_t *params);
53 Bool_t fPrintInfo; // flag to decide if details about PID must be printed
55 Double_t fGamma[6][6]; // Parameter to Compute PID
56 Double_t fHadron[6][6]; // Parameter to Compute PID
57 Double_t fPiZero5to10[6][6]; // Parameter to Compute PID
58 Double_t fPiZero10to60[6][6]; // Parameter to Compute PID
62 Float_t fPIDFinal[AliPID::kSPECIESN+1]; // final PID format
63 Float_t fPIDWeight[3]; // order: gamma, pi0, hadrons,
64 Double_t fProbGamma; // probility to be a Gamma
65 Double_t fProbPiZero; // probility to be a PiO
66 Double_t fProbHadron; // probility to be a Hadron
67 Bool_t fReconstructor; //Fill esdcalocluster when called from EMCALReconstructor
69 ClassDef(AliEMCALPID, 0)
72 #endif // ALIEMCALPID_H