]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGLF/SPECTRA/PiKaPr/TestAOD/AliAnalysisTaskJetSpectraAOD.h
Merge branch 'master' of https://git.cern.ch/reps/AliRoot
[u/mrichter/AliRoot.git] / PWGLF / SPECTRA / PiKaPr / TestAOD / 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),
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