]>
Commit | Line | Data |
---|---|---|
582efd60 | 1 | #ifndef ALIANALYSISTASKJETSPECTRAAOD_H |
2 | #define ALIANALYSISTASKJETSPECTRAAOD_H | |
3 | ||
4 | class TH1F; | |
5 | class TH2F; | |
6 | class AliAODEvent; | |
7 | class AliSpectraAODTrackCuts; | |
8 | class AliSpectraAODEventCuts; | |
9 | class AliHelperPID; | |
296131cf | 10 | class AliAODJet; |
582efd60 | 11 | |
12 | #include "AliAnalysisTaskSE.h" | |
13 | ||
14 | class AliAnalysisTaskJetSpectraAOD : public AliAnalysisTaskSE | |
15 | { | |
16 | public: | |
17 | ||
18 | // constructors | |
19 | AliAnalysisTaskJetSpectraAOD() : AliAnalysisTaskSE(), | |
20 | fAOD(0), | |
21 | fIsMC(0), | |
22 | fEventCuts(0), | |
23 | fTrackCuts(0), | |
24 | fVZEROside(0), | |
25 | fOutput(0), | |
26 | fAODJets(0), | |
27 | fJetBranchName(""), | |
28 | fListJets(0), | |
29 | fBackgroundBranch(""), | |
296131cf | 30 | fOfflineTrgMask(AliVEvent::kMB), |
582efd60 | 31 | fFilterMask(0), |
32 | fJetPtMin(0), | |
33 | fJetEtaMin(0x0), | |
34 | fJetEtaMax(0x0), | |
296131cf | 35 | fLeadPtMin(0x0), |
582efd60 | 36 | fnCentBins(20), |
37 | fnQvecBins(20), | |
296131cf | 38 | fnptLeadBins(4), |
582efd60 | 39 | fIsQvecCalibMode(0), |
40 | fQvecUpperLim(100), | |
41 | fIsQvecCut(0), | |
42 | fQvecMin(0), | |
296131cf | 43 | fQvecMax(100), |
44 | fHistEvtSelection(0x0), | |
45 | fDebug(0), | |
46 | fMinNcontributors(0), | |
47 | fRejectPileup(0) | |
582efd60 | 48 | {} |
49 | AliAnalysisTaskJetSpectraAOD(const char *name); | |
50 | virtual ~AliAnalysisTaskJetSpectraAOD(); | |
51 | ||
52 | void SetIsMC(Bool_t isMC = kFALSE) {fIsMC = isMC; } | |
53 | Bool_t GetIsMC() const { return fIsMC;} | |
54 | ||
55 | AliSpectraAODTrackCuts * GetTrackCuts() { return fTrackCuts; } | |
56 | AliSpectraAODEventCuts * GetEventCuts() { return fEventCuts; } | |
57 | TList * GetOutputList() { return fOutput; } | |
58 | ||
59 | void SetTrackCuts(AliSpectraAODTrackCuts * tc) { fTrackCuts = tc; } | |
60 | void SetEventCuts(AliSpectraAODEventCuts * vc) { fEventCuts = vc; } | |
61 | void SetnCentBins(Int_t val) { fnCentBins = val; } | |
62 | void SetnQvecBins(Int_t val) { fnQvecBins = val; } | |
296131cf | 63 | void SetnPtLeadBins(Int_t val) { fnptLeadBins = val; } |
582efd60 | 64 | void SetQvecCalibMode(Bool_t mode) { fIsQvecCalibMode = mode; } |
65 | void SetQvecUpperLimit(Double_t val) { fQvecUpperLim = val; } | |
296131cf | 66 | void SetDebugMode (Bool_t val) { fDebug = val; } |
582efd60 | 67 | |
68 | //jet getter | |
69 | void GetBranchNames(TString &branch) const { branch = fJetBranchName; } | |
70 | void GetBackgroundBranchNames(TString &branch) const { branch = fBackgroundBranch; } | |
71 | Float_t GetJetPtMin() const { return fJetPtMin; } | |
72 | Float_t GetJetEtaMin() const { return fJetEtaMin; } | |
73 | Float_t GetJetEtaMax() const { return fJetEtaMax; } | |
74 | //jet setter | |
75 | void SetBranchNames(const TString &branch); | |
76 | void SetRecBackgroundBranch(const TString &bckbranch); | |
296131cf | 77 | void SetOfflineTrgMask(AliVEvent::EOfflineTriggerTypes mask) { fOfflineTrgMask = mask; } |
582efd60 | 78 | void SetFilterMask(UInt_t i){fFilterMask = i;} |
79 | void SetJetPtMin(Float_t pt) { fJetPtMin = pt; } | |
80 | void SetEtaJet(Float_t etamin,Float_t etamax) { fJetEtaMin = etamin; fJetEtaMax = etamax; } | |
81 | ||
82 | void SetVZEROside(Int_t side = 0) {fVZEROside = side; } | |
83 | Int_t GetVZEROside() const { return fVZEROside;} | |
84 | ||
85 | void SetQvecCut(Bool_t qcut) { fIsQvecCut = qcut; } | |
86 | void SetQvecCutLimits(Float_t qmin,Float_t qmax) { fQvecMin = qmin; fQvecMax = qmax; } | |
87 | ||
296131cf | 88 | AliVParticle *LeadingTrackFromJetRefs(AliAODJet* jet); |
89 | void SetleadingTrackPtMin(Double_t val) { fLeadPtMin = val;} | |
90 | ||
91 | ||
92 | void SetMinNcontributors(Int_t val) {fMinNcontributors = val;} | |
93 | void SetPileupRejection(Bool_t val) {fRejectPileup = val;} | |
582efd60 | 94 | |
95 | void UserCreateOutputObjects(); | |
96 | void UserExec(Option_t *option); | |
97 | void Terminate(Option_t *); | |
98 | ||
99 | private: | |
100 | ||
101 | AliAODEvent *fAOD; //! AOD object | |
102 | Bool_t fIsMC;// true if processing MC | |
103 | AliSpectraAODEventCuts * fEventCuts; // Event Cuts | |
104 | AliSpectraAODTrackCuts * fTrackCuts; // Track Cuts | |
105 | ||
106 | Int_t fVZEROside; // 0: VZERO-A 1: VZERO-C | |
107 | ||
108 | TList * fOutput; // output list | |
109 | ||
110 | //jet | |
111 | AliAODEvent * fAODJets; //! AOD jet object | |
112 | TString fJetBranchName; // name of jet branches to compare | |
113 | TList * fListJets; //! jet lists | |
114 | TString fBackgroundBranch; | |
296131cf | 115 | |
116 | AliVEvent::EOfflineTriggerTypes fOfflineTrgMask; // mask of offline trigs | |
582efd60 | 117 | |
118 | UInt_t fFilterMask; // filter bit for slecected tracks | |
119 | Float_t fJetPtMin; // minimum jet pT | |
120 | Float_t fJetEtaMin; // lower bound on eta for found jets | |
121 | Float_t fJetEtaMax; // upper bound on eta for found jets | |
296131cf | 122 | Float_t fLeadPtMin; // leading track pt min. |
582efd60 | 123 | |
124 | Int_t fnCentBins; // number of bins for the centrality axis | |
125 | Int_t fnQvecBins; // number of bins for the q vector axis | |
296131cf | 126 | Int_t fnptLeadBins; // number of bins for the pt of leading particle axis |
582efd60 | 127 | Bool_t fIsQvecCalibMode; // calib mode for Qvector percentile |
128 | Double_t fQvecUpperLim; // Upper limit for Qvector | |
129 | ||
130 | Bool_t fIsQvecCut; // Q-vec cut switch | |
131 | Double_t fQvecMin; // lower bound for Qvec | |
132 | Double_t fQvecMax; // upper bound for Qvec | |
296131cf | 133 | |
134 | TH1I *fHistEvtSelection; //! event selection statistic | |
135 | Bool_t fDebug; | |
136 | Int_t fMinNcontributors; | |
137 | Bool_t fRejectPileup; | |
582efd60 | 138 | |
139 | AliAnalysisTaskJetSpectraAOD(const AliAnalysisTaskJetSpectraAOD&); | |
140 | AliAnalysisTaskJetSpectraAOD& operator=(const AliAnalysisTaskJetSpectraAOD&); | |
141 | ||
296131cf | 142 | ClassDef(AliAnalysisTaskJetSpectraAOD, 2); |
582efd60 | 143 | }; |
144 | ||
145 | #endif |