]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGLF/spectraJET/AliAnalysisTaskJetSpectraAOD.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGLF / spectraJET / AliAnalysisTaskJetSpectraAOD.h
CommitLineData
582efd60 1#ifndef ALIANALYSISTASKJETSPECTRAAOD_H
2#define ALIANALYSISTASKJETSPECTRAAOD_H
3
4class TH1F;
5class TH2F;
6class AliAODEvent;
7class AliSpectraAODTrackCuts;
8class AliSpectraAODEventCuts;
9class AliHelperPID;
296131cf 10class AliAODJet;
582efd60 11
12#include "AliAnalysisTaskSE.h"
13
14class 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),
9a924571 47 fRejectPileup(0),
1b8d95a7 48 fR(0.4),
49 fZvertexDiff(1),
50 fZvertex(10.)
582efd60 51 {}
52 AliAnalysisTaskJetSpectraAOD(const char *name);
53 virtual ~AliAnalysisTaskJetSpectraAOD();
54
55 void SetIsMC(Bool_t isMC = kFALSE) {fIsMC = isMC; }
56 Bool_t GetIsMC() const { return fIsMC;}
57
58 AliSpectraAODTrackCuts * GetTrackCuts() { return fTrackCuts; }
59 AliSpectraAODEventCuts * GetEventCuts() { return fEventCuts; }
60 TList * GetOutputList() { return fOutput; }
61
62 void SetTrackCuts(AliSpectraAODTrackCuts * tc) { fTrackCuts = tc; }
63 void SetEventCuts(AliSpectraAODEventCuts * vc) { fEventCuts = vc; }
64 void SetnCentBins(Int_t val) { fnCentBins = val; }
65 void SetnQvecBins(Int_t val) { fnQvecBins = val; }
296131cf 66 void SetnPtLeadBins(Int_t val) { fnptLeadBins = val; }
582efd60 67 void SetQvecCalibMode(Bool_t mode) { fIsQvecCalibMode = mode; }
68 void SetQvecUpperLimit(Double_t val) { fQvecUpperLim = val; }
296131cf 69 void SetDebugMode (Bool_t val) { fDebug = val; }
582efd60 70
71 //jet getter
72 void GetBranchNames(TString &branch) const { branch = fJetBranchName; }
73 void GetBackgroundBranchNames(TString &branch) const { branch = fBackgroundBranch; }
74 Float_t GetJetPtMin() const { return fJetPtMin; }
75 Float_t GetJetEtaMin() const { return fJetEtaMin; }
76 Float_t GetJetEtaMax() const { return fJetEtaMax; }
77 //jet setter
78 void SetBranchNames(const TString &branch);
79 void SetRecBackgroundBranch(const TString &bckbranch);
296131cf 80 void SetOfflineTrgMask(AliVEvent::EOfflineTriggerTypes mask) { fOfflineTrgMask = mask; }
582efd60 81 void SetFilterMask(UInt_t i){fFilterMask = i;}
82 void SetJetPtMin(Float_t pt) { fJetPtMin = pt; }
83 void SetEtaJet(Float_t etamin,Float_t etamax) { fJetEtaMin = etamin; fJetEtaMax = etamax; }
84
85 void SetVZEROside(Int_t side = 0) {fVZEROside = side; }
86 Int_t GetVZEROside() const { return fVZEROside;}
87
88 void SetQvecCut(Bool_t qcut) { fIsQvecCut = qcut; }
89 void SetQvecCutLimits(Float_t qmin,Float_t qmax) { fQvecMin = qmin; fQvecMax = qmax; }
90
296131cf 91 AliVParticle *LeadingTrackFromJetRefs(AliAODJet* jet);
92 void SetleadingTrackPtMin(Double_t val) { fLeadPtMin = val;}
93
94
95 void SetMinNcontributors(Int_t val) {fMinNcontributors = val;}
96 void SetPileupRejection(Bool_t val) {fRejectPileup = val;}
9a924571 97
1b8d95a7 98 void SetZvertexDiff (Bool_t val) { fZvertexDiff = val; }
99
9a924571 100 void SetJetParameterR(Double_t val) {fR = val;}
582efd60 101
102 void UserCreateOutputObjects();
103 void UserExec(Option_t *option);
104 void Terminate(Option_t *);
105
106 private:
107
108 AliAODEvent *fAOD; //! AOD object
109 Bool_t fIsMC;// true if processing MC
110 AliSpectraAODEventCuts * fEventCuts; // Event Cuts
111 AliSpectraAODTrackCuts * fTrackCuts; // Track Cuts
112
113 Int_t fVZEROside; // 0: VZERO-A 1: VZERO-C
114
115 TList * fOutput; // output list
116
117 //jet
118 AliAODEvent * fAODJets; //! AOD jet object
119 TString fJetBranchName; // name of jet branches to compare
120 TList * fListJets; //! jet lists
121 TString fBackgroundBranch;
296131cf 122
123 AliVEvent::EOfflineTriggerTypes fOfflineTrgMask; // mask of offline trigs
582efd60 124
125 UInt_t fFilterMask; // filter bit for slecected tracks
126 Float_t fJetPtMin; // minimum jet pT
127 Float_t fJetEtaMin; // lower bound on eta for found jets
128 Float_t fJetEtaMax; // upper bound on eta for found jets
296131cf 129 Float_t fLeadPtMin; // leading track pt min.
582efd60 130
131 Int_t fnCentBins; // number of bins for the centrality axis
132 Int_t fnQvecBins; // number of bins for the q vector axis
296131cf 133 Int_t fnptLeadBins; // number of bins for the pt of leading particle axis
582efd60 134 Bool_t fIsQvecCalibMode; // calib mode for Qvector percentile
135 Double_t fQvecUpperLim; // Upper limit for Qvector
136
137 Bool_t fIsQvecCut; // Q-vec cut switch
138 Double_t fQvecMin; // lower bound for Qvec
139 Double_t fQvecMax; // upper bound for Qvec
296131cf 140
141 TH1I *fHistEvtSelection; //! event selection statistic
142 Bool_t fDebug;
143 Int_t fMinNcontributors;
144 Bool_t fRejectPileup;
582efd60 145
9a924571 146 Double_t fR; // cone radius
147
1b8d95a7 148 Bool_t fZvertexDiff;
149 Double_t fZvertex;
150
582efd60 151 AliAnalysisTaskJetSpectraAOD(const AliAnalysisTaskJetSpectraAOD&);
152 AliAnalysisTaskJetSpectraAOD& operator=(const AliAnalysisTaskJetSpectraAOD&);
153
1b8d95a7 154 ClassDef(AliAnalysisTaskJetSpectraAOD, 4);
582efd60 155};
156
157#endif