]>
Commit | Line | Data |
---|---|---|
7e1f5ba5 | 1 | #ifndef ALIESDPIDCUTS_H |
2 | #define ALIESDPIDCUTS_H | |
3 | ||
4 | #ifndef ALIANALYSISCUTS_H | |
5 | #include "AliAnalysisCuts.h" | |
6 | #endif | |
7 | ||
8 | #ifndef ALIPID_H | |
9 | #include "AliPID.h" | |
10 | #endif | |
11 | ||
12 | class TCollection; | |
13 | class TH1F; | |
14 | class TH1I; | |
15 | class TH2I; | |
16 | class TList; | |
17 | class AliESDtrack; | |
18 | class AliTPCpidESD; | |
19 | class AliTOFpidESD; | |
20 | ||
21 | class AliESDpidCuts : public AliAnalysisCuts{ | |
22 | enum{ | |
23 | kHasHistograms = BIT(17) | |
24 | }; | |
25 | public: | |
26 | AliESDpidCuts(const Char_t *name = "AliESDpidCuts", const Char_t *title = ""); | |
27 | AliESDpidCuts(const AliESDpidCuts &ref); // Copy constructor | |
28 | AliESDpidCuts &operator=(const AliESDpidCuts &ref); | |
29 | virtual ~AliESDpidCuts(); | |
30 | ||
31 | virtual void Copy(TObject &c) const; | |
32 | virtual Long64_t Merge(TCollection *coll); | |
33 | ||
34 | Bool_t HasHistograms() const { return TestBit(kHasHistograms); } | |
35 | void DefineHistograms(Color_t color = kRed); | |
36 | void DrawHistograms(); | |
37 | void SaveHistograms(const Char_t *location = NULL); | |
38 | virtual Bool_t IsSelected(TObject *o); | |
39 | virtual Bool_t IsSelected(TList *) { return kTRUE; } | |
40 | virtual Bool_t AcceptTrack(const AliESDtrack *track); | |
41 | ||
42 | void SetTPCclusterRatioCut(Float_t clr) { fCutTPCclusterRatio = clr; } | |
43 | void SetTPCnSigmaCut(AliPID::EParticleType itype, Float_t nSigma){ fCutTPCnSigma[itype] = nSigma; } | |
44 | void SetTOFnSigmaCut(AliPID::EParticleType itype, Float_t nSigma){ fCutTOFnSigma[itype] = nSigma; } | |
45 | void SetMinMomentumTOF(Float_t mom) { fMinMomentumTOF = mom; } | |
46 | ||
47 | protected: | |
48 | static const Int_t kNcuts; // Number of Cuts | |
49 | AliTPCpidESD *fTPCpid; //! TPC PID (n-sigma cut) | |
50 | AliTOFpidESD *fTOFpid; //! TOF PID (n-sigma-cut) | |
51 | Float_t fCutTPCnSigma[AliPID::kSPECIES]; // Species dependent cut on the distance to the TPC dE/dx line | |
52 | Float_t fCutTOFnSigma[AliPID::kSPECIES]; // Species dependent cut on the distance to the TOF calculated time of flight line | |
53 | Float_t fCutTPCclusterRatio; // Cut on Ratio of found clusters with repect to findable clusters in the TPC | |
54 | Float_t fMinMomentumTOF; // Apply TOF PID only above a certain momentum | |
55 | ||
56 | //------------------------------------------ | |
57 | // QA histograms | |
58 | TH1I *fHcutStatistics; // Cut Statistics | |
59 | TH2I *fHcutCorrelation; // Cut Correlation | |
60 | TH1F *fHclusterRatio[2]; // TPC cluster Ratio | |
61 | TH1F *fHnSigmaTPC[AliPID::kSPECIES][2]; // TPC n-sigma cut | |
62 | TH1F *fHnSigmaTOF[AliPID::kSPECIES][2]; // TOF n-sigma cut | |
63 | //------------------------------------------ | |
64 | ||
65 | ClassDef(AliESDpidCuts, 1) | |
66 | }; | |
67 | #endif |