]>
Commit | Line | Data |
---|---|---|
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 | |
21 | class AliJEfficiency; | |
22 | class TString; | |
23 | ||
24 | class 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 |