]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGLF/SPECTRA/PiKaPr/TestAOD/AliSpectraAODTrackCuts.h
- Patch for centrality selection applied - signal for reconstructedID added
[u/mrichter/AliRoot.git] / PWGLF / SPECTRA / PiKaPr / TestAOD / AliSpectraAODTrackCuts.h
CommitLineData
c88234ad 1#ifndef ALISPECTRAAODTRACKCUTS_H
2#define ALISPECTRAAODTRACKCUTS_H
3
4/* See cxx source for full Copyright notice */
5
6//-------------------------------------------------------------------------
7// AliSpectraAODTrackCuts
8//
9//
10//
11//
12// Authors: Michele Floris, CERN, Philip Versteeg, UU, Redmer Bertens, UU
13//-------------------------------------------------------------------------
14
15class AliAODEvent;
16class AliSpectraAODHistoManager;
e8b0fe64 17#include "AliAODMCParticle.h"
18#include "AliSpectraAODHistoManager.h"
c88234ad 19#include "TNamed.h"
20
e8b0fe64 21using namespace AliSpectraNameSpace;
00221bed 22
23const char * kBinLabel[] ={"TrkBit",
936e2842 24 "TrkCuts",
00221bed 25 "TrkEta",
26 "TrkDCA",
27 "TrkP",
28 "TrkPt",
29 "TrkPtTOF",
30 "TOFMatching",
31 "kTOFout",
32 "kTIME",
33 "kTOFpid",
34 "Accepted"};
e8b0fe64 35
c88234ad 36class AliSpectraAODTrackCuts : public TNamed
37{
00221bed 38 public:
39
936e2842 40 enum { kTrkBit = 0, kTrkCuts, kTrkEta, kTrkDCA, kTrkP, kTrkPt,kTrkPtTOF,kTOFMatching,kTrTOFout,kTrTIME,kTrTOFpid,kAccepted,kNTrkCuts};
00221bed 41
42
ae0fdd7d 43 AliSpectraAODTrackCuts() : TNamed(), fIsSelected(0), fTrackBits(0), fEtaCut(0), fPCut(0), fPtCut(0), fPtCutTOFMatching(0), fQvecCutMin(0), fQvecCutMax(0), fHistoCuts(0), fHistoNSelectedPos(0), fHistoNSelectedNeg(0), fHistoNMatchedPos(0), fHistoNMatchedNeg(0), fHistoEtaPhiHighPt(0), fTrack(0) {}
00221bed 44
45 AliSpectraAODTrackCuts(const char *name);
46 virtual ~AliSpectraAODTrackCuts() {} // To be implemented
47
e8b0fe64 48 Bool_t IsSelected(AliAODTrack * track);
00221bed 49
50 void SetTrackType(UInt_t bit);
51 Bool_t CheckTrackType();
936e2842 52 Bool_t CheckTrackCuts();
00221bed 53 Bool_t CheckEtaCut();
54 Bool_t CheckYCut(AODParticleSpecies_t specie); // not included in standard cuts
55 Bool_t CheckDCACut();
56 Bool_t CheckPCut();
936e2842 57 Bool_t CheckPtCut();
58 Bool_t CheckTOFMatching();
59 void PrintCuts() const;
60
c88234ad 61 UInt_t GetTrackType() const { return fTrackBits; }
62 TH1I * GetHistoCuts() { return fHistoCuts; }
3d1f02f9 63 TH1F * GetHistoNSelectedPos() { return fHistoNSelectedPos; }
64 TH1F * GetHistoNSelectedNeg() { return fHistoNSelectedNeg; }
65 TH1F * GetHistoNMatchedPos() { return fHistoNMatchedPos; }
66 TH1F * GetHistoNMatchedNeg() { return fHistoNMatchedNeg; }
ae0fdd7d 67 TH2F * GetHistoEtaPhiHighPt() { return fHistoEtaPhiHighPt; }
c88234ad 68 void SetEta(Float_t eta) { fEtaCut = eta; }
69 void SetDCA(Float_t dca) { fDCACut = dca; }
70 void SetP(Float_t p) { fPCut = p; }
71 void SetPt(Float_t pt) { fPtCut = pt; }
e8b0fe64 72 void SetY(Float_t y) { fYCut = y;}
823864bf 73 void SetPtTOFMatching(Float_t pt) { fPtCutTOFMatching = pt; }
74 void SetQvecMin(Float_t qvecmin) { fQvecCutMin = qvecmin; }
75 void SetQvecMax(Float_t qvecmax) { fQvecCutMax = qvecmax; }
c88234ad 76 Float_t GetEta() const { return fEtaCut; }
e8b0fe64 77 Float_t GetY() const { return fYCut; }
c88234ad 78 Float_t GetDCA() const { return fDCACut; }
79 Float_t GetP() const { return fPCut; }
80 Float_t GetPt() const { return fPtCut; }
823864bf 81 Float_t GetPtTOFMatching() const { return fPtCutTOFMatching; }
82 Float_t GetQvecMin() const { return fQvecCutMin; }
83 Float_t GetQvecMax() const { return fQvecCutMax; }
84
85 Long64_t Merge(TCollection* list);
86
87
88 private:
89
e8b0fe64 90 Bool_t fIsSelected; // True if cuts are selected
91 UInt_t fTrackBits; // Type of track to be used
92 Float_t fEtaCut; // Allowed absolute maximum value of Eta
93 Float_t fDCACut; // Maximum value of DCA
94 Float_t fPCut; // Maximum value of P
95 Float_t fPtCut; // Maximum value of Pt
96 Float_t fYCut; // Maximum value of Y
97 Float_t fPtCutTOFMatching; // TOF Matching
98 Float_t fQvecCutMin; // Minimum value of Qvec
99 Float_t fQvecCutMax; // Minimum value of Qvec
e8b0fe64 100 TH1I *fHistoCuts; // Cuts statistics
3d1f02f9 101 TH1F *fHistoNSelectedPos; // Selected positive tracks
102 TH1F *fHistoNSelectedNeg; // Selected negative tracks
103 TH1F *fHistoNMatchedPos; // Matched positive tracks
104 TH1F *fHistoNMatchedNeg; // Matched negative tracks
ae0fdd7d 105 TH2F *fHistoEtaPhiHighPt; // EtaPhi distr at high pt (>1.5 GeV/c)
e8b0fe64 106 AliAODTrack *fTrack; //! Track pointer
c88234ad 107
108 AliSpectraAODTrackCuts(const AliSpectraAODTrackCuts&);
109 AliSpectraAODTrackCuts& operator=(const AliSpectraAODTrackCuts&);
823864bf 110
c88234ad 111 ClassDef(AliSpectraAODTrackCuts, 1);
112};
113#endif
114