1 /**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3 * See cxx source for full Copyright notice *
4 **************************************************************************/
6 /* $Id: AliRsnPID.h,v 1.5 2007/02/21 14:33:25 pulvir Exp $ */
8 //-------------------------------------------------------------------------
10 // Simple collection of reconstructed tracks, selected from an ESD event
12 // author: A. Pulvirenti (email: alberto.pulvirenti@ct.infn.it)
13 //-------------------------------------------------------------------------
22 class AliRsnPID : public TObject
27 AliRsnPID(const AliRsnPID& copy);
28 AliRsnPID& operator=(const AliRsnPID& copy);
29 virtual ~AliRsnPID() {}
42 // identification method enum
50 // conversions from PDG code to local type
51 static EType InternalType(Int_t pdgCode);
53 // retrieve particle informations from internal type
54 static Int_t PDGCode(EType pid);
55 static const char * ParticleName(EType pid, Bool_t shortName = kTRUE);
56 static const char * ParticleNameLatex(EType pid);
57 static Double_t ParticleMass(EType pid);
59 // identification routines
60 Bool_t Identify(AliRsnDaughter *d);
61 Bool_t Identify(AliRsnEvent *e);
62 Bool_t IdentifiedAs(AliRsnDaughter *d, EType type, Short_t charge = 0);
65 void SetMethod(EMethod method) {fMethod = method;}
66 void SetPriorProbability(EType type, Double_t p);
67 void SetMinProb(Double_t p) {fMinProb = p;}
68 void SetMaxPt(Double_t p) {fMaxPt = p;}
71 EMethod GetMethod() {return fMethod;}
75 // identification routines
76 Bool_t IdentifyPerfect(AliRsnDaughter *d);
77 Bool_t IdentifyRealistic(AliRsnDaughter *d);
78 Bool_t Unidentify(AliRsnDaughter *d, Double_t value = 1.0);
80 EMethod fMethod; // PID method
82 Double_t fPrior[kSpecies]; // prior probabilities
83 Double_t fMaxPt; // realistic PID is done for Pt < this parameter
84 Double_t fMinProb; // threshold on acceptable largest probability
86 static const char* fgkParticleNameShort[kSpecies+1];
87 static const char* fgkParticleNameLong[kSpecies+1];
88 static const char* fgkParticleNameLatex[kSpecies+1];
89 static const Int_t fgkParticlePDG[kSpecies+1];
91 ClassDef(AliRsnPID,1);