#ifndef ALIAODPIDHF_H #define ALIAODPIDHF_H /* Copyright(c) 1998-2006, ALICE Experiment at CERN, All rights reserved. * * See cxx source for full Copyright notice */ /* $Id$ */ //*********************************************************** //// Class AliAODPidHF //// class for PID with AliAODRecoDecayHF //// Authors: D. Caffarri caffarri@pd.infn.it, A.Dainese andrea.dainese@pd.infn.it, S. Dash dash@to.infn.it, F. Prino prino@to.infn.it, R. Romita r.romita@gsi.de, Y. Wang yifei@pi0.physi.uni-heidelberg.de ////*********************************************************** #include #include #include "AliAODPid.h" #include "AliAODTrack.h" #include "AliPIDResponse.h" #include "AliPIDCombined.h" #include "AliPID.h" class AliAODPidHF : public AliAODPid{ public: enum ECombDetectors { kTPC, kTOF, kTPCTOF, kTPCITS }; AliAODPidHF(); AliAODPidHF(const AliAODPidHF& pid); AliAODPidHF& operator=(const AliAODPidHF& pid); virtual ~AliAODPidHF(); //Setters void SetSigma(Double_t *sigma){ for(Int_t i=0; iSetSelectedSpecies(ispecies);}; void SetPriorDistribution(AliPID::EParticleType type,TH1F *prior); void DrawPrior(AliPID::EParticleType type); void SetPriorsHistos(TString priorFileName); void SetUpCombinedPID(); void SetUseCombined(Bool_t useCombined=kTRUE) {fUseCombined=useCombined;} Int_t ApplyPidTPCRaw(AliAODTrack *track,Int_t specie) const; Int_t ApplyPidTOFRaw(AliAODTrack *track,Int_t specie) const; Int_t ApplyPidITSRaw(AliAODTrack *track,Int_t specie) const; protected: private: Int_t fnNSigma; // number of sigmas Double_t *fnSigma; // [fnNSigma], sigma for the raw signal PID: 0-2 for TPC, 3 for TOF, 4 for ITS Double_t fTOFSigma; // TOF precision Int_t fnPriors; //number of priors Double_t *fPriors; // [fnPriors], set of priors Int_t fnPLimit; //number of Plimit Double_t *fPLimit; // [fnPLimit], limit of p intervals for asimmetric PID: fPLimitfPLimit[1] Bool_t fAsym; // asimmetric PID required Bool_t fTPC; //switch to include or exclude TPC Bool_t fTOF; // switch to include or exclude TOF Bool_t fITS; //switch to include or exclude ITS Bool_t fTRD; // switch to include or exclude TRD Int_t fMatch; //switch to combine the info from more detectors: 1 = || , 2 = &, 3 = p region Bool_t fCompat; // compatibility region : useful only if fMatch=1 Double_t fPCompatTOF; // compatibility p limit for TOF Int_t fnNSigmaCompat; // number of sigmas Double_t *fnSigmaCompat; //[fnNSigmaCompat] 0: n sigma for TPC compatibility band, 1: for TOF Bool_t fMC; // MC(kTRUE) or real data (kFALSE, default option) Bool_t fOnePad; // real data with one pad clusters Bool_t fMCLowEn2011; // MC for low energy MC Bool_t fppLowEn2011; // Data for low energy pp 2011 Bool_t fPbPb; // real data PbPb Bool_t fTOFdecide; // real data PbPb Bool_t fOldPid; // old PID method implemented Double_t fPtThresholdTPC; // pT threshold to use TPC PID Double_t fMaxTrackMomForCombinedPID; // momentum threshold to use PID AliPIDResponse *fPidResponse; //! pid response AliPIDCombined* fPidCombined; //! combined PID object AliTPCPIDResponse* fTPCResponse; //! TPC response TH1F* fPriorsH[AliPID::kSPECIES]; // priors histos ECombDetectors fCombDetectors; // detectors to be involved for combined PID Bool_t fUseCombined; // detectors to be involved for combined PID ClassDef(AliAODPidHF,19) // AliAODPid for heavy flavor PID }; #endif