#ifndef ALIANALYSISTASKJETJTJT_H
#define ALIANALYSISTASKJETJTJT_H
class TH1;
class TH2;
class TH3;
class TGraphErrors;
class TProfile;
class AliJetContainer;
class AliParticleContainer;
class AliClusterContainer;
class JTJTEfficiency;
#include "AliAnalysisTaskEmcalJet.h"
class AliAnalysisTaskJetJTJT : public AliAnalysisTaskEmcalJet {
public:
AliAnalysisTaskJetJTJT();
AliAnalysisTaskJetJTJT(const char *name);
virtual ~AliAnalysisTaskJetJTJT();
void UserCreateOutputObjects();
void Terminate(Option_t *option);
void SetTrackArrayName( char *c ) { fTrackArrayName = c; }
void setCentBinBorders( int n, Double_t *c);
void setTriggPtBorders( int n, Double_t *c);
void setAssocPtBorders( int n, Double_t *c);
void setDebug(int n) {debug = n; }
void setRunPeriod(const char *period) {runPeriod = period; cout << "RunPeriod set to " << runPeriod << endl;}
protected:
void ExecOnce();
Bool_t FillHistograms() ;
Bool_t Run() ;
void CheckClusTrackMatching();
Double_t getJt(AliVTrack *track, AliEmcalJet *jet, int reverse);
Double_t getJt(AliVParticle *track, AliEmcalJet *jet, int reverse);
TH1 **fHistTracksPt;
TH1 **fHistTracksJt;
TH1 **fHistClustersPt;
TH1 **fHistLeadingJetPt;
TH1 ***fHistJetsPt;
TH1 ***fHistBackgroundDone;
TH1 ****fHistJTPta;
TH1 ****fHistLogJTPta;
TH1 ****fHistJTPta_all;
TH1 ****fHistJTBg;
TH1 ****fHistLogJTBg;
TH1 ***fHistBgMulti;
TH1 ***fHistBgPt;
TH1 ***fHistJetEta;
TH1 ***fHistJetMulti;
TH1 ***fHistJetTracksPt;
TProfile **fhTrackingEfficiency;
Int_t fNpttBins;
Int_t fNptaBins;
AliJetContainer *fJetsCont;
AliParticleContainer *fTracksCont;
AliClusterContainer *fCaloClustersCont;
private:
TClonesArray *fTracks;
TString fTrackArrayName;
TString runPeriod;
JTJTEfficiency *fEfficiency;
Double_t CentBinBorders[10];
Double_t TriggPtBorders[10];
Double_t AssocPtBorders[10];
AliAnalysisTaskJetJTJT(const AliAnalysisTaskJetJTJT&);
AliAnalysisTaskJetJTJT &operator=(const AliAnalysisTaskJetJTJT&);
Int_t debug;
ClassDef(AliAnalysisTaskJetJTJT, 3)
};
class JTJTEfficiency {
#define JUNUSED(expr) do { (void)(expr); } while (0)
public:
enum Mode { kNotUse, kPeriod, kRunNumber, kAuto };
enum { kJTPCOnly, kJRaa, kJGlobalTightDCA, kJGlobalDCA, kJGlobalSDD , kJHybrid, kJNTrackCuts };
JTJTEfficiency();
JTJTEfficiency(const JTJTEfficiency& obj);
JTJTEfficiency& operator=(const JTJTEfficiency& obj);
void SetMode( int i ){ fMode = i; }
void SetDataPath(TString s ){ fDataPath=s; }
void SetPeriodName(TString s ){ fPeriodStr=s; cout << "Eff: Run Period is set to " << fPeriodStr << endl; }
TString GetName() const { return fName; }
double GetCorrection( double pt, int icut, double cent ) const ;
void SetRunNumber( Long64_t runnum ){ fRunNumber=runnum; }
TString GetEffName() ;
TString GetEffFullName() ;
bool Load();
void PrintOut() const {
cout<<fInputRootName<<endl;
}
private:
int fMode;
int fPeriod;
TString fDataPath;
TString fName;
TString fPeriodStr;
TString fMCPeriodStr;
Long64_t fRunNumber;
TString fTag;
TString fInputRootName;
TFile * fInputRoot;
TDirectory * fEffDir[3];
TGraphErrors * fCorrection[20][20][20];
TAxis * fCentBinAxis;
};
#endif
AliAnalysisTaskJetJTJT.h:1 AliAnalysisTaskJetJTJT.h:2 AliAnalysisTaskJetJTJT.h:3 AliAnalysisTaskJetJTJT.h:4 AliAnalysisTaskJetJTJT.h:5 AliAnalysisTaskJetJTJT.h:6 AliAnalysisTaskJetJTJT.h:7 AliAnalysisTaskJetJTJT.h:8 AliAnalysisTaskJetJTJT.h:9 AliAnalysisTaskJetJTJT.h:10 AliAnalysisTaskJetJTJT.h:11 AliAnalysisTaskJetJTJT.h:12 AliAnalysisTaskJetJTJT.h:13 AliAnalysisTaskJetJTJT.h:14 AliAnalysisTaskJetJTJT.h:15 AliAnalysisTaskJetJTJT.h:16 AliAnalysisTaskJetJTJT.h:17 AliAnalysisTaskJetJTJT.h:18 AliAnalysisTaskJetJTJT.h:19 AliAnalysisTaskJetJTJT.h:20 AliAnalysisTaskJetJTJT.h:21 AliAnalysisTaskJetJTJT.h:22 AliAnalysisTaskJetJTJT.h:23 AliAnalysisTaskJetJTJT.h:24 AliAnalysisTaskJetJTJT.h:25 AliAnalysisTaskJetJTJT.h:26 AliAnalysisTaskJetJTJT.h:27 AliAnalysisTaskJetJTJT.h:28 AliAnalysisTaskJetJTJT.h:29 AliAnalysisTaskJetJTJT.h:30 AliAnalysisTaskJetJTJT.h:31 AliAnalysisTaskJetJTJT.h:32 AliAnalysisTaskJetJTJT.h:33 AliAnalysisTaskJetJTJT.h:34 AliAnalysisTaskJetJTJT.h:35 AliAnalysisTaskJetJTJT.h:36 AliAnalysisTaskJetJTJT.h:37 AliAnalysisTaskJetJTJT.h:38 AliAnalysisTaskJetJTJT.h:39 AliAnalysisTaskJetJTJT.h:40 AliAnalysisTaskJetJTJT.h:41 AliAnalysisTaskJetJTJT.h:42 AliAnalysisTaskJetJTJT.h:43 AliAnalysisTaskJetJTJT.h:44 AliAnalysisTaskJetJTJT.h:45 AliAnalysisTaskJetJTJT.h:46 AliAnalysisTaskJetJTJT.h:47 AliAnalysisTaskJetJTJT.h:48 AliAnalysisTaskJetJTJT.h:49 AliAnalysisTaskJetJTJT.h:50 AliAnalysisTaskJetJTJT.h:51 AliAnalysisTaskJetJTJT.h:52 AliAnalysisTaskJetJTJT.h:53 AliAnalysisTaskJetJTJT.h:54 AliAnalysisTaskJetJTJT.h:55 AliAnalysisTaskJetJTJT.h:56 AliAnalysisTaskJetJTJT.h:57 AliAnalysisTaskJetJTJT.h:58 AliAnalysisTaskJetJTJT.h:59 AliAnalysisTaskJetJTJT.h:60 AliAnalysisTaskJetJTJT.h:61 AliAnalysisTaskJetJTJT.h:62 AliAnalysisTaskJetJTJT.h:63 AliAnalysisTaskJetJTJT.h:64 AliAnalysisTaskJetJTJT.h:65 AliAnalysisTaskJetJTJT.h:66 AliAnalysisTaskJetJTJT.h:67 AliAnalysisTaskJetJTJT.h:68 AliAnalysisTaskJetJTJT.h:69 AliAnalysisTaskJetJTJT.h:70 AliAnalysisTaskJetJTJT.h:71 AliAnalysisTaskJetJTJT.h:72 AliAnalysisTaskJetJTJT.h:73 AliAnalysisTaskJetJTJT.h:74 AliAnalysisTaskJetJTJT.h:75 AliAnalysisTaskJetJTJT.h:76 AliAnalysisTaskJetJTJT.h:77 AliAnalysisTaskJetJTJT.h:78 AliAnalysisTaskJetJTJT.h:79 AliAnalysisTaskJetJTJT.h:80 AliAnalysisTaskJetJTJT.h:81 AliAnalysisTaskJetJTJT.h:82 AliAnalysisTaskJetJTJT.h:83 AliAnalysisTaskJetJTJT.h:84 AliAnalysisTaskJetJTJT.h:85 AliAnalysisTaskJetJTJT.h:86 AliAnalysisTaskJetJTJT.h:87 AliAnalysisTaskJetJTJT.h:88 AliAnalysisTaskJetJTJT.h:89 AliAnalysisTaskJetJTJT.h:90 AliAnalysisTaskJetJTJT.h:91 AliAnalysisTaskJetJTJT.h:92 AliAnalysisTaskJetJTJT.h:93 AliAnalysisTaskJetJTJT.h:94 AliAnalysisTaskJetJTJT.h:95 AliAnalysisTaskJetJTJT.h:96 AliAnalysisTaskJetJTJT.h:97 AliAnalysisTaskJetJTJT.h:98 AliAnalysisTaskJetJTJT.h:99 AliAnalysisTaskJetJTJT.h:100 AliAnalysisTaskJetJTJT.h:101 AliAnalysisTaskJetJTJT.h:102 AliAnalysisTaskJetJTJT.h:103 AliAnalysisTaskJetJTJT.h:104 AliAnalysisTaskJetJTJT.h:105 AliAnalysisTaskJetJTJT.h:106 AliAnalysisTaskJetJTJT.h:107 AliAnalysisTaskJetJTJT.h:108 AliAnalysisTaskJetJTJT.h:109 AliAnalysisTaskJetJTJT.h:110 AliAnalysisTaskJetJTJT.h:111 AliAnalysisTaskJetJTJT.h:112 AliAnalysisTaskJetJTJT.h:113 AliAnalysisTaskJetJTJT.h:114 AliAnalysisTaskJetJTJT.h:115 AliAnalysisTaskJetJTJT.h:116 AliAnalysisTaskJetJTJT.h:117 AliAnalysisTaskJetJTJT.h:118 AliAnalysisTaskJetJTJT.h:119 AliAnalysisTaskJetJTJT.h:120 AliAnalysisTaskJetJTJT.h:121 AliAnalysisTaskJetJTJT.h:122 AliAnalysisTaskJetJTJT.h:123 AliAnalysisTaskJetJTJT.h:124 AliAnalysisTaskJetJTJT.h:125 AliAnalysisTaskJetJTJT.h:126 AliAnalysisTaskJetJTJT.h:127 AliAnalysisTaskJetJTJT.h:128 AliAnalysisTaskJetJTJT.h:129 AliAnalysisTaskJetJTJT.h:130 AliAnalysisTaskJetJTJT.h:131 AliAnalysisTaskJetJTJT.h:132 AliAnalysisTaskJetJTJT.h:133 AliAnalysisTaskJetJTJT.h:134 AliAnalysisTaskJetJTJT.h:135 AliAnalysisTaskJetJTJT.h:136 AliAnalysisTaskJetJTJT.h:137 AliAnalysisTaskJetJTJT.h:138 AliAnalysisTaskJetJTJT.h:139 AliAnalysisTaskJetJTJT.h:140 AliAnalysisTaskJetJTJT.h:141 AliAnalysisTaskJetJTJT.h:142 AliAnalysisTaskJetJTJT.h:143 AliAnalysisTaskJetJTJT.h:144 AliAnalysisTaskJetJTJT.h:145 AliAnalysisTaskJetJTJT.h:146 AliAnalysisTaskJetJTJT.h:147 AliAnalysisTaskJetJTJT.h:148 AliAnalysisTaskJetJTJT.h:149 AliAnalysisTaskJetJTJT.h:150 AliAnalysisTaskJetJTJT.h:151 AliAnalysisTaskJetJTJT.h:152 AliAnalysisTaskJetJTJT.h:153 AliAnalysisTaskJetJTJT.h:154 AliAnalysisTaskJetJTJT.h:155 AliAnalysisTaskJetJTJT.h:156 AliAnalysisTaskJetJTJT.h:157 AliAnalysisTaskJetJTJT.h:158 AliAnalysisTaskJetJTJT.h:159 AliAnalysisTaskJetJTJT.h:160 AliAnalysisTaskJetJTJT.h:161 AliAnalysisTaskJetJTJT.h:162 AliAnalysisTaskJetJTJT.h:163