Taking into account properly the analyzed phase space + mimor improvements to the...
[u/mrichter/AliRoot.git] / PWG4 / JetTasks / AliAnalysisTaskJetSpectrum.h
CommitLineData
f3050824 1#ifndef ALIANALYSISTASKJETSPECTRUM_H
2#define ALIANALYSISTASKJETSPECTRUM_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7#include "AliAnalysisTaskSE.h"
8class AliJetHeader;
9class AliESDEvent;
10class AliAODEvent;
11class AliAODJet;
12class AliGenPythiaEventHeader;
13
14class TList;
15class TChain;
16class TH2F;
17class TH3F;
18
19class AliAnalysisTaskJetSpectrum : public AliAnalysisTaskSE
20{
21 public:
22 AliAnalysisTaskJetSpectrum();
23 AliAnalysisTaskJetSpectrum(const char* name);
24 virtual ~AliAnalysisTaskJetSpectrum() {;}
25 // Implementation of interface methods
26 virtual void UserCreateOutputObjects();
27 virtual void Init();
28 virtual void LocalInit() { Init(); }
29 virtual void UserExec(Option_t *option);
30 virtual void Terminate(Option_t *option);
31
32 virtual void SetExternalWeight(Float_t f){fExternalWeight = f;}
33 virtual void SetUseExternalWeightOnly(Bool_t b){fUseExternalWeightOnly = b;}
34 virtual void SetAODInput(Bool_t b){fUseAODInput = b;}
35 virtual void SetLimitGenJetEta(Bool_t b){fLimitGenJetEta = b;}
36 virtual void SetAnalysisType(Int_t i){fAnalysisType = i;}
37 virtual void SetBranchGen(char* c){fBranchGen = c;}
38 virtual void SetBranchRec(char* c){fBranchRec = c;}
39
40 // Helper
41 static void GetClosestJets(AliAODJet *genJets,Int_t &nGenJets,
42 AliAODJet *recJets,Int_t &nRecJets,
43 Int_t *iGenIndex,Int_t *iRecIndex,Int_t iDebug = 0);
44
45 //
46
47 enum {kAnaMC = 0x1};
48
49 private:
50
51 AliAnalysisTaskJetSpectrum(const AliAnalysisTaskJetSpectrum&);
52 AliAnalysisTaskJetSpectrum& operator=(const AliAnalysisTaskJetSpectrum&);
53
54
55 enum {kMaxJets = 5};
56
57 AliJetHeader *fJetHeaderRec;
58 AliJetHeader *fJetHeaderGen;
59 AliAODEvent *fAOD; // where we take the jets from can be input or output AOD
60
61 TString fBranchRec; // AOD branch name for reconstructed
62 TString fConfigRec; // Name of the Config file
63 TString fBranchGen; // AOD brnach for genereated
64 TString fConfigGen; // Name of the Config file (if any)
65
66 Bool_t fUseAODInput;
67 Bool_t fUseExternalWeightOnly;
68 Bool_t fLimitGenJetEta;
69 Int_t fAnalysisType;
70 Float_t fExternalWeight;
71
72 TH1F* fh1PtHard; // Pt har of the event...
73 TH1F* fh1PtHard_NoW; // Pt har of the event...
74 TH1F* fh1PtHard_Trials; // Number of trials
75 TH1F* fh1NGenJets;
76 TH1F* fh1NRecJets;
77 TH1F* fh1E[kMaxJets]; // Jet Energy
78 TH1F* fh1PtRecIn[kMaxJets]; // Jet pt for all
79 TH1F* fh1PtRecOut[kMaxJets]; // Jet pt with corellated generated jet
80 TH1F* fh1PtGenIn[kMaxJets]; // Detection efficiency for given p_T.gen
81 TH1F* fh1PtGenOut[kMaxJets]; //
82
83
84
85 TH2F* fh2PtFGen[kMaxJets]; //
86 TH2F* fh2Frag[kMaxJets]; // fragmentation function
87 TH2F* fh2FragLn[kMaxJets]; //
88
89 TH3F* fh3PtRecGenHard[kMaxJets]; //
90 TH3F* fh3PtRecGenHard_NoW[kMaxJets]; //
91 TH3F* fh3RecEtaPhiPt[kMaxJets]; //
92 TH3F* fh3RecEtaPhiPt_NoGen[kMaxJets]; //
93 TH3F* fh3GenEtaPhiPt_NoFound[kMaxJets]; //
94 TH3F* fh3GenEtaPhiPt[kMaxJets]; //
95 // ========= Multiplicity dependence ======
96
97 // ==========TODO , flavaor dependence ========
98 // ============================================
99
100
101 // ============= TODO , phi dependence ========
102 // ============================================
103
104 TList *fHistList; // Output list
105
106
107 ClassDef(AliAnalysisTaskJetSpectrum, 1) // Analysis task for standard jet analysis
108};
109
110#endif