#ifndef ALIRSNCUTSETDAUGHTERPARTICLE_H
#define ALIRSNCUTSETDAUGHTERPARTICLE_H
#include "AliVTrack.h"
#include "AliRsnCut.h"
#include "AliRsnCutSet.h"
#include "AliRsnCutTrackQuality.h"
#include "AliRsnCutPIDNSigma.h"
#include "AliRsnCutTOFMatch.h"
#include "AliRsnCutPhi.h"
class AliRsnCutSetDaughterParticle : public AliRsnCutSet {
public:
enum ERsnDaughterCutSet {
kNoCuts,
kQualityStd2010,
kQualityStd2011,
kQualityStd2011HighPt,
kTOFMatch,
kFastTPCpidNsigma,
kFastTOFpidNsigma,
kTPCTOFpidKstarPP2010,
kTOFpidKstarPbPb2010,
kTOFTPCmismatchKstarPbPb2010,
kTOFMatchTRD2010,
kTOFMatchNoTRD2010,
kTOFpidKstarPbPbTRD2010,
kTOFpidKstarPbPbNoTRD2010,
kTOFMatchTPCpidNsigma,
kQualityStd2010TRD,
kQualityStd2010NoTRD,
kTOFMatchPPB2011,
kTPCpidKstarPPB2011,
kTOFpidKstarPPB2011,
kTPCTOFpidKstarPPB2011,
kTPCTOFtightPidKStarPPB2011,
kTPCpidMatchPPB2011,
kTPCpidTOFveto4s,
kTPCpidTOFveto3s,
kCombinedPidBestPtDep,
kTPCPidPtDep,
kTOFPidPtDep,
kTPCRejPtDepTOFNsigma,
kTPCNsigmaTOFVetoPtDep,
kTPCTOFpidLstar,
kNDaughterCuts
};
enum ECustomQualityCuts {
kDisableCustom = -1,
kFilterBitCustom,
kStdLooserDCAXY,
kStdLooserDCAZ,
kStdCrossedRows60,
kStdCrossedRows80,
kStdRowsToCls075,
kStdRowsToCls085,
kStdCls70,
kStdChi2TPCCls35,
kStdUseTPCNcls,
kNcustomQualityCuts
};
AliRsnCutSetDaughterParticle();
AliRsnCutSetDaughterParticle(const char *name,
AliRsnCutSetDaughterParticle::ERsnDaughterCutSet cutSetID,
AliPID::EParticleType pid,
Float_t nsigmaFast,
Int_t AODfilterBit,
Bool_t useTPCCrossedRows);
AliRsnCutSetDaughterParticle(const char *name,
AliRsnCutTrackQuality *rsnTrackQualityCut,
AliRsnCutSetDaughterParticle::ERsnDaughterCutSet cutSetID,
AliPID::EParticleType pid,
Float_t nSigmaFast);
AliRsnCutSetDaughterParticle(const AliRsnCutSetDaughterParticle ©);
AliRsnCutSetDaughterParticle &operator=(const AliRsnCutSetDaughterParticle ©);
virtual ~AliRsnCutSetDaughterParticle();
void Init();
void InitStdQualityCuts(Bool_t useTPCCrossedRows=kTRUE);
void SetNsigmaForFastTPCpid(Float_t nsigma) {fNsigmaTPC=nsigma; return;};
void SetNsigmaForFastTOFpid(Float_t nsigma) {fNsigmaTOF=nsigma; return;};
void SetAODTrackCutFilterBit(Int_t ibit) {fAODTrkCutFilterBit=ibit; return;}
void SetUseFilterBitOnly(Bool_t useFilterBitOnly=kTRUE) {fCheckOnlyFilterBit=useFilterBitOnly; return;}
void EnableCustomCuts(Bool_t useCustom=kFALSE) {fUseCustomQualityCuts=useCustom; return;}
void SetPtRange(Double_t a, Double_t b) {fPtRange[0] = TMath::Min(a, b); fPtRange[1] = TMath::Max(a, b); return;}
void SetEtaRange(Double_t a, Double_t b) {fEtaRange[0] = TMath::Min(a, b); fEtaRange[1] = TMath::Max(a, b); return;}
void SetUse2011StdQualityCuts(Bool_t use2011=kFALSE) {fIsUse2011stdQualityCuts=use2011; return;}
void SetUse2011StdQualityCutsHighPt(Bool_t use2011HighPt=kFALSE) {fIsUse2011stdQualityCutsHighPt=use2011HighPt; return;}
const char *GetAppliedDaughterCutSetName() { return GetName();}
Int_t GetAppliedDaughterCutSetId() { return fAppliedCutSetID;}
const AliRsnCutTrackQuality *GetQualityCut() {return fCutQuality;};
void PrintTrackQualityCuts();
private:
AliPID::EParticleType fPID;
AliRsnCutSetDaughterParticle::ERsnDaughterCutSet fAppliedCutSetID;
Float_t fNsigmaTPC;
Float_t fNsigmaTOF;
AliRsnCutTrackQuality *fCutQuality;
Int_t fAODTrkCutFilterBit;
Bool_t fCheckOnlyFilterBit;
Bool_t fUseCustomQualityCuts;
Float_t fPtRange[2];
Float_t fEtaRange[2];
Bool_t fIsUse2011stdQualityCuts;
Bool_t fIsUse2011stdQualityCutsHighPt;
ClassDef(AliRsnCutSetDaughterParticle, 5)
};
#endif
AliRsnCutSetDaughterParticle.h:1 AliRsnCutSetDaughterParticle.h:2 AliRsnCutSetDaughterParticle.h:3 AliRsnCutSetDaughterParticle.h:4 AliRsnCutSetDaughterParticle.h:5 AliRsnCutSetDaughterParticle.h:6 AliRsnCutSetDaughterParticle.h:7 AliRsnCutSetDaughterParticle.h:8 AliRsnCutSetDaughterParticle.h:9 AliRsnCutSetDaughterParticle.h:10 AliRsnCutSetDaughterParticle.h:11 AliRsnCutSetDaughterParticle.h:12 AliRsnCutSetDaughterParticle.h:13 AliRsnCutSetDaughterParticle.h:14 AliRsnCutSetDaughterParticle.h:15 AliRsnCutSetDaughterParticle.h:16 AliRsnCutSetDaughterParticle.h:17 AliRsnCutSetDaughterParticle.h:18 AliRsnCutSetDaughterParticle.h:19 AliRsnCutSetDaughterParticle.h:20 AliRsnCutSetDaughterParticle.h:21 AliRsnCutSetDaughterParticle.h:22 AliRsnCutSetDaughterParticle.h:23 AliRsnCutSetDaughterParticle.h:24 AliRsnCutSetDaughterParticle.h:25 AliRsnCutSetDaughterParticle.h:26 AliRsnCutSetDaughterParticle.h:27 AliRsnCutSetDaughterParticle.h:28 AliRsnCutSetDaughterParticle.h:29 AliRsnCutSetDaughterParticle.h:30 AliRsnCutSetDaughterParticle.h:31 AliRsnCutSetDaughterParticle.h:32 AliRsnCutSetDaughterParticle.h:33 AliRsnCutSetDaughterParticle.h:34 AliRsnCutSetDaughterParticle.h:35 AliRsnCutSetDaughterParticle.h:36 AliRsnCutSetDaughterParticle.h:37 AliRsnCutSetDaughterParticle.h:38 AliRsnCutSetDaughterParticle.h:39 AliRsnCutSetDaughterParticle.h:40 AliRsnCutSetDaughterParticle.h:41 AliRsnCutSetDaughterParticle.h:42 AliRsnCutSetDaughterParticle.h:43 AliRsnCutSetDaughterParticle.h:44 AliRsnCutSetDaughterParticle.h:45 AliRsnCutSetDaughterParticle.h:46 AliRsnCutSetDaughterParticle.h:47 AliRsnCutSetDaughterParticle.h:48 AliRsnCutSetDaughterParticle.h:49 AliRsnCutSetDaughterParticle.h:50 AliRsnCutSetDaughterParticle.h:51 AliRsnCutSetDaughterParticle.h:52 AliRsnCutSetDaughterParticle.h:53 AliRsnCutSetDaughterParticle.h:54 AliRsnCutSetDaughterParticle.h:55 AliRsnCutSetDaughterParticle.h:56 AliRsnCutSetDaughterParticle.h:57 AliRsnCutSetDaughterParticle.h:58 AliRsnCutSetDaughterParticle.h:59 AliRsnCutSetDaughterParticle.h:60 AliRsnCutSetDaughterParticle.h:61 AliRsnCutSetDaughterParticle.h:62 AliRsnCutSetDaughterParticle.h:63 AliRsnCutSetDaughterParticle.h:64 AliRsnCutSetDaughterParticle.h:65 AliRsnCutSetDaughterParticle.h:66 AliRsnCutSetDaughterParticle.h:67 AliRsnCutSetDaughterParticle.h:68 AliRsnCutSetDaughterParticle.h:69 AliRsnCutSetDaughterParticle.h:70 AliRsnCutSetDaughterParticle.h:71 AliRsnCutSetDaughterParticle.h:72 AliRsnCutSetDaughterParticle.h:73 AliRsnCutSetDaughterParticle.h:74 AliRsnCutSetDaughterParticle.h:75 AliRsnCutSetDaughterParticle.h:76 AliRsnCutSetDaughterParticle.h:77 AliRsnCutSetDaughterParticle.h:78 AliRsnCutSetDaughterParticle.h:79 AliRsnCutSetDaughterParticle.h:80 AliRsnCutSetDaughterParticle.h:81 AliRsnCutSetDaughterParticle.h:82 AliRsnCutSetDaughterParticle.h:83 AliRsnCutSetDaughterParticle.h:84 AliRsnCutSetDaughterParticle.h:85 AliRsnCutSetDaughterParticle.h:86 AliRsnCutSetDaughterParticle.h:87 AliRsnCutSetDaughterParticle.h:88 AliRsnCutSetDaughterParticle.h:89 AliRsnCutSetDaughterParticle.h:90 AliRsnCutSetDaughterParticle.h:91 AliRsnCutSetDaughterParticle.h:92 AliRsnCutSetDaughterParticle.h:93 AliRsnCutSetDaughterParticle.h:94 AliRsnCutSetDaughterParticle.h:95 AliRsnCutSetDaughterParticle.h:96 AliRsnCutSetDaughterParticle.h:97 AliRsnCutSetDaughterParticle.h:98 AliRsnCutSetDaughterParticle.h:99 AliRsnCutSetDaughterParticle.h:100 AliRsnCutSetDaughterParticle.h:101 AliRsnCutSetDaughterParticle.h:102 AliRsnCutSetDaughterParticle.h:103 AliRsnCutSetDaughterParticle.h:104 AliRsnCutSetDaughterParticle.h:105 AliRsnCutSetDaughterParticle.h:106 AliRsnCutSetDaughterParticle.h:107 AliRsnCutSetDaughterParticle.h:108 AliRsnCutSetDaughterParticle.h:109 AliRsnCutSetDaughterParticle.h:110 AliRsnCutSetDaughterParticle.h:111 AliRsnCutSetDaughterParticle.h:112 AliRsnCutSetDaughterParticle.h:113 AliRsnCutSetDaughterParticle.h:114 AliRsnCutSetDaughterParticle.h:115 AliRsnCutSetDaughterParticle.h:116 AliRsnCutSetDaughterParticle.h:117 AliRsnCutSetDaughterParticle.h:118 AliRsnCutSetDaughterParticle.h:119 AliRsnCutSetDaughterParticle.h:120 AliRsnCutSetDaughterParticle.h:121 AliRsnCutSetDaughterParticle.h:122 AliRsnCutSetDaughterParticle.h:123 AliRsnCutSetDaughterParticle.h:124 AliRsnCutSetDaughterParticle.h:125 AliRsnCutSetDaughterParticle.h:126 AliRsnCutSetDaughterParticle.h:127 AliRsnCutSetDaughterParticle.h:128