AliRoot Core  ee782a0 (ee782a0)
AliESDpid.h
Go to the documentation of this file.
1 #ifndef ALIESDPID_H
2 #define ALIESDPID_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice */
5 
6 /* $Id$ */
7 
8 //-------------------------------------------------------
9 // Combined PID class
10 // for the Event Summary Data class
11 // Origin: Iouri Belikov, CERN, Jouri.Belikov@cern.ch
12 // Modified: Jens Wiechula, Uni Tuebingen, jens.wiechula@cern.ch
13 //-------------------------------------------------------
14 #include <Rtypes.h>
15 #include "AliESDtrack.h" // Needed for inline functions
16 #include "AliMCEventHandler.h"
17 
18 //#include "HMPID/AliHMPID.h"
19 //#include "TRD/AliTRDpidESD.h"
20 
21 #include "AliPIDResponse.h"
22 
23 class AliESDEvent;
24 class AliVEvent;
25 class AliVParticle;
26 
27 class AliESDpid : public AliPIDResponse {
28 public:
29  AliESDpid(Bool_t forMC=kFALSE): AliPIDResponse(forMC), fRangeTOFMismatch(5.), fEventHandler(NULL) {;}
31 AliESDpid& operator=(const AliESDpid& a){if (this==&a) return *this; AliPIDResponse::operator=(a); fRangeTOFMismatch=a.fRangeTOFMismatch; fEventHandler=NULL; return *this;};
32  virtual ~AliESDpid() {}
33 
34  Int_t MakePID(AliESDEvent *event, Bool_t TPCOnly = kFALSE, Float_t timeZeroTOF=9999) const;
35  void MakePIDForTracking(AliESDEvent *event) const;
36 
37  void MakeTPCPID(AliESDtrack *track) const;
38  void MakeITSPID(AliESDtrack *track) const;
39  void MakeTOFPID(AliESDtrack *track, Float_t /*timeZeroTOF*/) const;
40  Bool_t CheckTOFMatching(AliESDtrack *track) const;
41  // void MakeHMPIDPID(AliESDtrack *track);
42  void MakeTRDPID(AliESDtrack *track) const;
43  void CombinePID(AliESDtrack *track) const;
44 
45  void SetPIDForTracking(AliESDtrack *track) const;
46 
47 // Float_t NumberOfSigmasTOF(const AliVParticle *track, AliPID::EParticleType type) const {return AliPIDResponse::NumberOfSigmasTOF(track,type);}
48 // Float_t GetNumberOfSigmasTOF(const AliVParticle *track, AliPID::EParticleType type, const Float_t timeZeroTOF) const;
49 
52 
54 
55  static void SetUseElectronExclusionBands(Bool_t val);
57  static void SetNSpeciesForTracking(Int_t n);
59 
60 
61  protected:
62  virtual Float_t GetSignalDeltaTOFold(const AliVParticle *track, AliPID::EParticleType type, Bool_t ratio=kFALSE) const;
63  virtual Float_t GetNumberOfSigmasTOFold(const AliVParticle *track, AliPID::EParticleType type) const;
64 
65 private:
66 
67  Float_t fRangeTOFMismatch; // nSigma max for TOF matching with TPC
69 
70  static Bool_t fgUseElectronExclusionBands; // if true, exclude electron tag in e/K and e/p crossing (a la Run1)
71  static Int_t fgNSpeciesForTracking; // number of species to consider for tracking PID
72 
73  ClassDef(AliESDpid,7) // PID calculation class
74 };
75 
76 
77 #endif
78 
79 
void SetEventHandler(AliVEventHandler *event)
Definition: AliESDpid.h:53
AliPIDResponse & operator=(const AliPIDResponse &other)
virtual Float_t GetNumberOfSigmasTOFold(const AliVParticle *track, AliPID::EParticleType type) const
Definition: AliESDpid.cxx:372
virtual ~AliESDpid()
Definition: AliESDpid.h:32
virtual Float_t GetSignalDeltaTOFold(const AliVParticle *track, AliPID::EParticleType type, Bool_t ratio=kFALSE) const
Definition: AliESDpid.cxx:351
void MakeTPCPID(AliESDtrack *track) const
Definition: AliESDpid.cxx:76
AliESDpid(const AliESDpid &a)
Definition: AliESDpid.h:30
Float_t GetNMaxSigmaTOFTPCMismatch() const
Definition: AliESDpid.h:51
void CombinePID(AliESDtrack *track) const
Definition: AliESDpid.cxx:269
EParticleType
Definition: AliPID.h:27
AliTPCfastTrack * track
Float_t fRangeTOFMismatch
Definition: AliESDpid.h:67
void MakePIDForTracking(AliESDEvent *event) const
Definition: AliESDpid.cxx:441
static void SetUseElectronExclusionBands(Bool_t val)
Definition: AliESDpid.cxx:452
AliESDpid & operator=(const AliESDpid &a)
Definition: AliESDpid.h:31
static Int_t fgNSpeciesForTracking
Definition: AliESDpid.h:71
AliESDpid(Bool_t forMC=kFALSE)
Definition: AliESDpid.h:29
static Bool_t GetUseElectronExclusionBands()
Definition: AliESDpid.h:56
Float_t range[5]
static void SetNSpeciesForTracking(Int_t n)
Definition: AliESDpid.cxx:460
void SetPIDForTracking(AliESDtrack *track) const
Definition: AliESDpid.cxx:388
void SetNMaxSigmaTOFTPCMismatch(Float_t range)
Definition: AliESDpid.h:50
void MakeTOFPID(AliESDtrack *track, Float_t) const
Definition: AliESDpid.cxx:184
Int_t MakePID(AliESDEvent *event, Bool_t TPCOnly=kFALSE, Float_t timeZeroTOF=9999) const
Definition: AliESDpid.cxx:45
Bool_t CheckTOFMatching(AliESDtrack *track) const
Definition: AliESDpid.cxx:310
static Bool_t fgUseElectronExclusionBands
MC event handler.
Definition: AliESDpid.h:70
static Int_t GetNSpeciesForTracking()
Definition: AliESDpid.h:58
void MakeITSPID(AliESDtrack *track) const
Definition: AliESDpid.cxx:117
AliVEventHandler * fEventHandler
Definition: AliESDpid.h:68
void MakeTRDPID(AliESDtrack *track) const
Definition: AliESDpid.cxx:259