1 /* Copyright(c) 1998-2014, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
4 // Short comment describing what this class does needed!
6 //===========================================================
7 // Dummy comment, should be replaced by a real one
8 //===========================================================
10 #ifndef ALIJJETJTANALYSIS_H
11 #define ALIJJETJTANALYSIS_H
14 #include <TObjArray.h>
18 #include "AliJHistManager.h"
19 #include "AliJJetAnalysis.h"
24 class AliJJetJtAnalysis{
29 AliJJetJtAnalysis( AliJCard * card );
30 AliJJetJtAnalysis(const AliJJetJtAnalysis& ap);
31 AliJJetJtAnalysis& operator = (const AliJJetJtAnalysis& ap);
34 //type = charged jet or full jet, js = cone size
36 void FillHistosJets();
38 void AddJets(TObjArray * jets ){
42 fJetListOfList.Add( (TObject*)jets );
44 for( int i=0;i<jets->GetEntriesFast();i++ ){
45 //((AliJJet*)jets->At(i))->ReSum();
47 } // TODO clean before event
49 void SetJTracks(TClonesArray *tracks ){fTracks = tracks ;}
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;}
62 AliJJet & Jet( int i ){ return *(AliJJet*) fJetList->At(i); }
64 void UserCreateOutputObjects();
67 void ClearBeforeEvent();
68 void FillJtHistogram( TObjArray *Jets, int iContainer );
69 void WriteHistograms();
71 int GetBin(TVector *array, double val){
74 for(int i=1; i< array->GetNoElements(); i++){
75 if((*array)[i] <= val && val<(*array)[i+1]){
83 void SetJetFinderName(vector<TString> JetFinderName){ fJetFinderName = JetFinderName; }
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;}
96 TObjArray * fInputList; // comment needed
97 TObjArray * fJetList; // comment needed
98 TObjArray fJetListOfList; // !comment needed
99 //TObjArray * fJetBgList; // comment needed
100 //TObjArray fJetBgListOfList; // !comment needed
101 vector<TClonesArray> fJetBgListOfList;
103 TVector *fJetTriggPtBorders;
104 TVector *fJetConstPtLowLimits;
105 TVector *fJetAssocPtBorders;
106 TVector *fDeltaRBorders;
109 AliJCard * fCard; // comment needed
110 AliJJetAnalysis *fJJetAnalysis;
111 vector<TString> fJetFinderName;
112 vector<double> fConeSizes;
114 AliJEfficiency *fEfficiency;
119 TClonesArray *fTracks;
122 AliJHistManager * fHMG;
124 AliJBin fJetFinderBin;
125 AliJBin fJetTriggerBin;
127 AliJBin fTrkLimPtBin;
137 AliJTH1D fhJtWeightBin;
138 AliJTH1D fhLogJtWeightBin;
139 AliJTH1D fhJtWithPtCutWeightBinBin;
140 AliJTH1D fhLogJtWithPtCutWeightBinBin;
141 AliJTH1D fhJtBinLimBin;
142 AliJTH1D fhJtWeightBinLimBin;
143 AliJTH1D fhLogJtWeightBinLimBin;
147 AliJTH1D fhJetBgPtBin;
152 AliJTH1D fhBgJtWeightBin;
153 AliJTH1D fhBgLogJtWeightBin;
154 AliJTH1D fhBgJtWithPtCutWeightBinBin;
155 AliJTH1D fhBgLogJtWithPtCutWeightBinBin;
159 AliJTH1D fhFullJetEChJetBin;
160 AliJTH1D fhFullChdRChJetBin;
161 AliJTH2D fh2DFullEvsChEdN0;
162 AliJTH2D fh2DFullEvsChEdNnot0;
165 //double fJetPtMinCut;