3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
8 //-------------------------------------------------------
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 //-------------------------------------------------------
15 #include "AliESDtrack.h" // Needed for inline functions
16 #include "AliMCEventHandler.h"
18 //#include "HMPID/AliHMPID.h"
19 //#include "TRD/AliTRDpidESD.h"
21 #include "AliPIDResponse.h"
27 class AliESDpid : public AliPIDResponse {
29 AliESDpid(Bool_t forMC=kFALSE): AliPIDResponse(forMC), fRangeTOFMismatch(5.), fEventHandler(NULL) {;}
30 AliESDpid(const AliESDpid&a): AliPIDResponse(a), fRangeTOFMismatch(a.fRangeTOFMismatch), 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() {}
34 Int_t MakePID(AliESDEvent *event, Bool_t TPCOnly = kFALSE, Float_t timeZeroTOF=9999) const;
35 void MakePIDForTracking(AliESDEvent *event) const;
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;
45 void SetPIDForTracking(AliESDtrack *track) const;
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;
50 void SetNMaxSigmaTOFTPCMismatch(Float_t range) {fRangeTOFMismatch=range;}
51 Float_t GetNMaxSigmaTOFTPCMismatch() const {return fRangeTOFMismatch;}
53 Float_t GetTPCsignalTunedOnData(const AliVTrack *t) const;
54 Float_t GetTOFsignalTunedOnData(const AliVTrack *t) const;
56 void SetEventHandler(AliVEventHandler *event){fEventHandler=event;};
58 virtual Float_t GetSignalDeltaTOFold(const AliVParticle *track, AliPID::EParticleType type, Bool_t ratio=kFALSE) const;
59 virtual Float_t GetNumberOfSigmasTOFold(const AliVParticle *track, AliPID::EParticleType type) const;
63 Float_t fRangeTOFMismatch; // nSigma max for TOF matching with TPC
64 AliVEventHandler *fEventHandler; //! MC event handler
66 ClassDef(AliESDpid,7) // PID calculation class