histogram title fix and jetjt update from beomkyu
[u/mrichter/AliRoot.git] / PWGCF / Correlations / JCORRAN / AliJJetJtAnalysis.h
CommitLineData
0d693eab 1/* Copyright(c) 1998-2014, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
3
4// Short comment describing what this class does needed!
5
6//===========================================================
7// Dummy comment, should be replaced by a real one
8//===========================================================
9
10#ifndef ALIJJETJTANALYSIS_H
11#define ALIJJETJTANALYSIS_H
12
13#include <vector>
14#include <TObjArray.h>
15#include <TVector.h>
16#include "AliJCard.h"
17#include "AliJJet.h"
18#include "AliJHistManager.h"
c962be25 19#include "AliJJetAnalysis.h"
0d693eab 20
21class AliJEfficiency;
22class TString;
23
24class AliJJetJtAnalysis{
25 public:
26
27
28 AliJJetJtAnalysis();
29 AliJJetJtAnalysis( AliJCard * card );
30 AliJJetJtAnalysis(const AliJJetJtAnalysis& ap);
31 AliJJetJtAnalysis& operator = (const AliJJetJtAnalysis& ap);
32 ~AliJJetJtAnalysis();
33
34 //type = charged jet or full jet, js = cone size
35
36 void FillHistosJets();
37
38 void AddJets(TObjArray * jets ){
39 if( !jets ) {
40 //return;
41 }
42 fJetListOfList.Add( (TObject*)jets );
43 //if( !jets ) return;
44 for( int i=0;i<jets->GetEntriesFast();i++ ){
45 //((AliJJet*)jets->At(i))->ReSum();
46 }
47 } // TODO clean before event
48
49 void SetJTracks(TClonesArray *tracks ){fTracks = tracks ;}
50
51
52 int GetNJets(){ return GetJetList()->GetEntriesFast(); }
53 TObjArray* GetJetList(){ return fJetList; }
54 //Double_t GetJetEtaRange(){ return fJetEtaRange; }
55 //void SetJetEtaRange(double eta){ fJetEtaRange=eta; }
56 void SetJetList(TObjArray* jetlist){ fJetList=jetlist; }
57 void SetInputList(TObjArray * ilist){ fInputList = ilist;}
58 //void SetTrackJetMap(std::vector<int> * v){ fTrackJetMap=v;}
59 //void SetJetPtBin( TVector * b){ fJetPtBins=b; }
60 void SetCard(AliJCard * card) {fCard = card;}
61
62 AliJJet & Jet( int i ){ return *(AliJJet*) fJetList->At(i); }
63
64 void UserCreateOutputObjects();
65 void UserExec();
66
67 void ClearBeforeEvent();
68 void FillJtHistogram( TObjArray *Jets, int iContainer );
69 void WriteHistograms();
70
71 int GetBin(TVector *array, double val){
72
73 int iBin=-1;
74 for(int i=1; i< array->GetNoElements(); i++){
75 if((*array)[i] <= val && val<(*array)[i+1]){
76 iBin=i-1;
77 break;
78 }
79 }
80
81 return iBin;
82 }
83 void SetJetFinderName(vector<TString> JetFinderName){ fJetFinderName = JetFinderName; }
84
85 // Need for event loop
86 void SetCentralityBin( int cbin) { cBin = cbin;}
87 void SetCentrality( float cent) { fcent = cent;}
88 void SetZVertex( float zvtx) { zVert = zvtx;}
89 void SetZVertexBin( int zbin) { zBin = zbin;}
90 void SetNumberOfJetFinders( int njfinder ) { nJetContainer = njfinder;}
91 AliJEfficiency* GetAliJEfficiency() { return fEfficiency;}
92
93
94
95 private:
96 TObjArray * fInputList; // comment needed
97 TObjArray * fJetList; // comment needed
98 TObjArray fJetListOfList; // !comment needed
598ff595 99 //TObjArray * fJetBgList; // comment needed
100 //TObjArray fJetBgListOfList; // !comment needed
101 vector<TClonesArray> fJetBgListOfList;
102
0d693eab 103 TVector *fJetTriggPtBorders;
104 TVector *fJetConstPtLowLimits;
105 TVector *fJetAssocPtBorders;
c962be25 106 TVector *fDeltaRBorders;
0d693eab 107 int nJetContainer;
108
109 AliJCard * fCard; // comment needed
c962be25 110 AliJJetAnalysis *fJJetAnalysis;
0d693eab 111 vector<TString> fJetFinderName;
112 vector<double> fConeSizes;
113 // Need for events
114 AliJEfficiency *fEfficiency;
115 int cBin;
116 float fcent;
117 int zBin;
118 float zVert;
119 TClonesArray *fTracks;
120
121 //Histograms
122 AliJHistManager * fHMG;
598ff595 123
0d693eab 124 AliJBin fJetFinderBin;
125 AliJBin fJetTriggerBin;
126 AliJBin fTrkPtBin;
127 AliJBin fTrkLimPtBin;
c962be25 128 AliJBin fdRBin;
598ff595 129 AliJTH1D fhNumber;
130 AliJTH1D fhKNumber;
0d693eab 131 AliJTH1D fhJetPt ;
132 AliJTH1D fhJetPtBin;
133 AliJTH1D fhZ ;
134 AliJTH1D fhZBin;
135 AliJTH1D fhJt ;
136 AliJTH1D fhJtBin;
137 AliJTH1D fhJtWeightBin;
138 AliJTH1D fhLogJtWeightBin;
139 AliJTH1D fhJtWithPtCutWeightBinBin;
140 AliJTH1D fhLogJtWithPtCutWeightBinBin;
141 AliJTH1D fhJtBinLimBin;
142 AliJTH1D fhJtWeightBinLimBin;
143 AliJTH1D fhLogJtWeightBinLimBin;
144
145
146 AliJTH1D fhJetBgPt ;
147 AliJTH1D fhJetBgPtBin;
148 AliJTH1D fhBgZ ;
149 AliJTH1D fhBgZBin;
150 AliJTH1D fhBgJt ;
151 AliJTH1D fhBgJtBin;
152 AliJTH1D fhBgJtWeightBin;
153 AliJTH1D fhBgLogJtWeightBin;
154 AliJTH1D fhBgJtWithPtCutWeightBinBin;
155 AliJTH1D fhBgLogJtWithPtCutWeightBinBin;
c962be25 156
157 AliJTH1D fhdeltaE;
158 AliJTH1D fhdeltaN;
159 AliJTH1D fhFullJetEChJetBin;
160 AliJTH1D fhFullChdRChJetBin;
598ff595 161 AliJTH2D fh2DFullEvsChEdN0;
162 AliJTH2D fh2DFullEvsChEdNnot0;
c962be25 163
0d693eab 164
165 //double fJetPtMinCut;
166};
167
168#endif
169