]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGJE/UserTasks/AliAnalysisTaskJetHadronCorrelation.h
changes for running on AOD
[u/mrichter/AliRoot.git] / PWGJE / UserTasks / AliAnalysisTaskJetHadronCorrelation.h
1 #ifndef AliAnalysisTaskJetHadronCorrelation_cxx\r
2 #define AliAnalysisTaskJetHadronCorrelation_cxx\r
3 \r
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *\r
5  * See cxx source for full Copyright notice                               */\r
6 \r
7 class AliJetHeader;\r
8 class AliESDEvent;\r
9 class AliAODEvent;\r
10 class AliAODJet;\r
11 class AliGenPythiaEventHeader;\r
12 class AliCFManager;\r
13 \r
14 class TList;\r
15 class TChain;\r
16 class TH2F;\r
17 class TH1F;\r
18 class TH3F;\r
19 class TProfile;\r
20 \r
21 \r
22 #include "AliAnalysisTaskSE.h"\r
23 #include  "THnSparse.h" // cannot forward declare ThnSparseF  \r
24 #include <TList.h>\r
25 #include <TH1F.h>\r
26 #include <TH2F.h>\r
27 \r
28 class AliAnalysisTaskJetHadronCorrelation : public AliAnalysisTaskSE \r
29 {\r
30         public:\r
31                 AliAnalysisTaskJetHadronCorrelation();\r
32                 AliAnalysisTaskJetHadronCorrelation(const char *name);\r
33                 virtual ~AliAnalysisTaskJetHadronCorrelation() {;}\r
34 \r
35                 // Implementation of interface methods\r
36                 virtual void   UserCreateOutputObjects();\r
37                 virtual void   Init();\r
38                 virtual Bool_t Notify();\r
39                 virtual void   UserExec(Option_t *option);\r
40                 virtual void   Terminate(Option_t *);\r
41                 virtual void   SetDebug(Int_t debug = 0) {fDebug = debug;}\r
42                 virtual void   SetAlgorithm(TString jf="ANTIKT"){JFAlg=jf;}\r
43                 virtual void   SetRadius(Float_t radius=0.4){Radius=radius;}\r
44                 virtual void   SetFilterMask(UInt_t filter=256){Filtermask=filter;}\r
45                 virtual void   SetBackSubMode(Int_t backM=0){BackM=backM;}\r
46                 virtual void   SetTrackPtCut(Float_t tPtcut=0){TrackPtcut=tPtcut;}\r
47                 virtual void   SetSkipCone(Int_t skipCone=0){SkipCone=skipCone;}\r
48                 virtual void   SetMC(Bool_t ismc=true){IsMC=ismc;}\r
49                 virtual void   FinishTaskOutput();\r
50                 //virtual Float_t GetTotalEvents(const char* currFile);\r
51                 virtual Double_t DeltaPhi(Double_t phi1,Double_t phi2);\r
52 \r
53 \r
54                 enum {kNPTBINS=10};\r
55 \r
56                 // 0 all jets\r
57                 // 1 all jet in eta window\r
58                 // 2 all jets with partner\r
59                 // 3 all jets in eta window with partner\r
60                 // 4 all jets with partner in eta window\r
61                 enum {kStep0 = 0, kStep1, kStep2, kStep3, kStep4,kMaxStep};\r
62 \r
63 \r
64 \r
65         private:\r
66                 AliAnalysisTaskJetHadronCorrelation(const AliAnalysisTaskJetHadronCorrelation &det); // not implemented\r
67                 AliAnalysisTaskJetHadronCorrelation& operator=(const AliAnalysisTaskJetHadronCorrelation &det); // not implemented\r
68 \r
69                 Int_t GetListOfJets(TList *list,TClonesArray *jarray,Int_t type);\r
70                 Bool_t JetSelected(AliAODJet *jet);\r
71 \r
72                 Bool_t        fUseAODInput; // read jets from input AOD\r
73                 Bool_t        fFillAOD;     // option to fill AOD branch\r
74                 TString       fJetBranch;   // jet branch to read\r
75                 TString       fNonStdFile;\r
76 \r
77                 AliAODEvent   *fAODIn;      // AOD event\r
78                 AliAODEvent   *fAODOut;      // AOD event\r
79                 AliAODExtension *fAODExtension;\r
80                 TString         JFAlg;\r
81                 Float_t         Radius;\r
82                 UInt_t          Filtermask;\r
83                 Int_t           BackM;\r
84                 Float_t         TrackPtcut;\r
85                 Int_t           SkipCone;\r
86                 Bool_t          IsMC;\r
87 \r
88 \r
89                 Float_t       fxsec;\r
90                 Float_t       ftrial;\r
91                 Float_t       fJetRecEtaWindow;       // eta window for rec jets\r
92                 Float_t       fMinJetPt;              // limits the jet p_T in addition to what already is done in the jet finder, this is important for jet matching for JF with lo threshold\r
93 \r
94                 TList        *fHistList; // Output list\r
95     Int_t        fIfiles;//!count no. of files\r
96 \r
97 \r
98                 TH1F         *fH1Events;\r
99                 TProfile     *fH1Xsec;\r
100                 TH1F         *fH1Trials;\r
101                 //for Reconstructed Jet (Data&MC)\r
102                 TH1F         *fH1JetAKT04_pt                ;\r
103                 TH1F         *fH1leadJetAKT04_pt            ;\r
104                 TH1F         *fH1leadJetAKT04_pt_dijet      ;\r
105                 TH1F         *fH1subJetAKT04_pt_dijet       ;\r
106                 TH2F         *fH2JetsJetAKT04_dphi          ;\r
107                 TH2F         *fH2JetsJetAKT04_deta          ;\r
108                 TH2F         *fH2JetsJetAKT04_Aj            ;\r
109                 TH2F         *fH2JetsJetAKT04_pt            ;\r
110 \r
111                 TH1F         *fH1AKT04_ndiJ_ediv            [5];\r
112                 TH1F         *fH1JetHadronAKT04_dphi_ediv           [5][5];\r
113                 TH1F         *fH1JetHadronAKT04_dphi_tptweight_ediv [5][5];\r
114                 TH1F         *fH1JetHadronAKT04_dphi_tJptweight_ediv[5][5];\r
115 \r
116                 //for Generated Jet (MC)\r
117 \r
118                 TH1F         *fH1JetMCAKT04_pt                ;\r
119                 TH1F         *fH1leadJetMCAKT04_pt            ;\r
120                 TH1F         *fH1leadJetMCAKT04_pt_dijet      ;\r
121                 TH1F         *fH1subJetMCAKT04_pt_dijet       ;\r
122                 TH2F         *fH2JetsJetMCAKT04_dphi          ;\r
123                 TH2F         *fH2JetsJetMCAKT04_deta          ;\r
124                 TH2F         *fH2JetsJetMCAKT04_Aj            ;\r
125                 TH2F         *fH2JetsJetMCAKT04_pt            ;\r
126                 TH1F         *fH1leadJetMCAKT04_dphiResolution[5];\r
127                 TH1F         *fH1subJetMCAKT04_dphiResolution [5];\r
128 \r
129                 ClassDef(AliAnalysisTaskJetHadronCorrelation, 13); // Analysis task for standard dijet analysis\r
130 };\r
131 \r
132 #endif\r