]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGGA/EMCALJetTasks/AliAnalysisTaskRho.h
including task for user mconnors
[u/mrichter/AliRoot.git] / PWGGA / EMCALJetTasks / AliAnalysisTaskRho.h
CommitLineData
1b3d7f8f 1#ifndef ALIANALYSISTASKRHO_H
2#define ALIANALYSISTASKRHO_H
020052e4 3
5b5bad1d 4// $Id$
192fc3f4 5
6a12db52 6class TClonesArray;
7class TF1;
020052e4 8class TH1F;
9class TH2F;
6a12db52 10class TList;
020052e4 11class TString;
1b3d7f8f 12class AliRhoParameter;
020052e4 13
192fc3f4 14#include "AliAnalysisTaskRhoBase.h"
020052e4 15
192fc3f4 16class AliAnalysisTaskRho : public AliAnalysisTaskRhoBase {
020052e4 17
18 public:
19 AliAnalysisTaskRho();
f09b22c5 20 AliAnalysisTaskRho(const char *name, Bool_t histo=kFALSE);
020052e4 21 virtual ~AliAnalysisTaskRho() {}
22
81e01e82 23 void UserCreateOutputObjects();
24 void UserExec(Option_t*);
020052e4 25
6a12db52 26 const char *GetRhoScaled() const { return fRhoScaledName ; }
27 void SetAreaCut(Double_t a = 0.05) { fAreaCut = a ; }
28 void SetAreaEmcCut(Double_t a = 0.99) { fAreaEmcCut = a ; }
29 void SetExcludeLeadJets(UInt_t n) { fNExclLeadJets = n ; }
192fc3f4 30 void SetJetEta(Double_t emin, Double_t emax) { fEtaMin = emin ; fEtaMax = emax ; }
31 void SetJetPhi(Double_t pmin, Double_t pmax) { fPhiMin = pmin ; fPhiMax = pmax ; }
6a12db52 32 void SetJetsName(const char *n) { fJetsName = n ; }
f09b22c5 33 void SetRhoName(const char *name) { fRhoName = name ;
6a12db52 34 fRhoScaledName = name ;
35 fRhoScaledName += "_Scaled"; }
36 void SetScaleFunction(TF1* sf) { fScaleFunction = sf ; }
37 void SetTracksName(const char *n) { fTracksName = n ; }
f09b22c5 38
020052e4 39 protected:
f09b22c5 40 virtual void ExecOnce();
c60e0a21 41 virtual Double_t GetScaleFactor(Double_t cent);
020052e4 42
020052e4 43 TString fTracksName; // name of track collection
44 TString fJetsName; // name of jet collection
192fc3f4 45 TString fRhoScaledName; // name of scaled rho object
46 Double_t fPhiMin; // minimum phi
47 Double_t fPhiMax; // maximum phi
48 Double_t fEtaMin; // minimum eta
49 Double_t fEtaMax; // maximum eta
6a12db52 50 Double_t fAreaCut; // minimum cut on jet area
51 Double_t fAreaEmcCut; // minimum cut on jet emcal area
c60e0a21 52 UInt_t fNExclLeadJets; // number of leading jets to be excluded from the median calculation
192fc3f4 53 TF1 *fScaleFunction; // pre-computed scale factor as a function of centrality
c60e0a21 54 Bool_t fCreateHisto; // whether or not create histograms
f09b22c5 55 TClonesArray *fTracks; //!ptr to input tracks
56 TClonesArray *fJets; //!ptr to input jets
192fc3f4 57 TList *fOutputList; //!output list
58 TH1F *fHistCentrality; //!centrality distribution
59 TH1F *fHistJetPt; //!jet pt distribution
60 TH1F *fHistJetArea; //!jet area
61 TH2F *fHistRhovsCent; //!rho vs. centrality
62 TH2F *fHistDeltaRhovsCent; //!delta rho vs. centrality
63 TH2F *fHistDeltaRhoScalevsCent; //!delta rhoscaled vs. centrality
64 TH2F *fHistJetPtvsCent; //!jet pt vs. centrality
65 TH2F *fHistJetAreavsCent; //!jet area vs. centrality
66 TH2F *fHistNjetvsCent; //!no. of jets vs. centrality
192fc3f4 67 TH2F *fHistRhovsNtrack; //!rho vs. no. of tracks
68 TH2F *fHistDeltaRhovsNtrack; //!delta rho vs. no. of tracks
69 TH2F *fHistDeltaRhoScalevsNtrack; //!delta rho scaled vs. no. of tracks
70 TH2F *fHistJetPtvsNtrack; //!jet pt vs. no. of tracks
71 TH2F *fHistJetAreavsNtrack; //!jet area vs. no. of tracks
72 TH2F *fHistNjetvsNtrack; //!no. of jets vs. no. of tracks
1b3d7f8f 73 AliRhoParameter *fRhoScaled; //!per event scaled rho
020052e4 74
75 AliAnalysisTaskRho(const AliAnalysisTaskRho&); // not implemented
76 AliAnalysisTaskRho& operator=(const AliAnalysisTaskRho&); // not implemented
77
6a12db52 78 ClassDef(AliAnalysisTaskRho, 7); // Rho task
020052e4 79};
020052e4 80#endif