]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGGA/EMCALJetTasks/AliAnalysisTaskRho.h
adapted to one-to-many arrays from Salvatore. Needs checks.
[u/mrichter/AliRoot.git] / PWGGA / EMCALJetTasks / AliAnalysisTaskRho.h
CommitLineData
020052e4 1#ifndef ALIANALYSISTASKRHO_cxx
2#define ALIANALYSISTASKRHO_cxx
3
5b5bad1d 4// $Id$
192fc3f4 5
020052e4 6class TList;
7class TH1F;
8class TH2F;
9class TClonesArray;
10class TString;
192fc3f4 11class TF1;
12
13#include <TParameter.h>
020052e4 14
192fc3f4 15#include "AliAnalysisTaskRhoBase.h"
020052e4 16
192fc3f4 17class AliAnalysisTaskRho : public AliAnalysisTaskRhoBase {
020052e4 18
19 public:
20 AliAnalysisTaskRho();
21 AliAnalysisTaskRho(const char *name);
5d845887 22 AliAnalysisTaskRho(const char *name, Bool_t histo);
020052e4 23 virtual ~AliAnalysisTaskRho() {}
24
192fc3f4 25 virtual void UserCreateOutputObjects();
26 virtual void UserExec(Option_t*);
27 virtual void Terminate(Option_t*);
020052e4 28
192fc3f4 29 void SetAreaCut(Double_t a = 0.0) { fAreaCut = a ; }
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 ; }
32 void SetJetsName(const char *n) { fJetsName = n ; }
33 void SetScaleFunction(TF1* sf) { fScaleFunction = sf ; }
34 void SetTracksName(const char *n) { fTracksName = n ; }
c60e0a21 35 void SetExcludeLeadJets(UInt_t n) { fNExclLeadJets = n ; }
020052e4 36
37 protected:
c60e0a21 38 virtual Double_t GetScaleFactor(Double_t cent);
020052e4 39
020052e4 40 TString fTracksName; // name of track collection
41 TString fJetsName; // name of jet collection
192fc3f4 42 TString fRhoScaledName; // name of scaled rho object
43 Double_t fPhiMin; // minimum phi
44 Double_t fPhiMax; // maximum phi
45 Double_t fEtaMin; // minimum eta
46 Double_t fEtaMax; // maximum eta
47 Double_t fAreaCut; // cut on jet area
c60e0a21 48 UInt_t fNExclLeadJets; // number of leading jets to be excluded from the median calculation
192fc3f4 49 TF1 *fScaleFunction; // pre-computed scale factor as a function of centrality
c60e0a21 50 Bool_t fCreateHisto; // whether or not create histograms
192fc3f4 51 TList *fOutputList; //!output list
52 TH1F *fHistCentrality; //!centrality distribution
53 TH1F *fHistJetPt; //!jet pt distribution
54 TH1F *fHistJetArea; //!jet area
55 TH2F *fHistRhovsCent; //!rho vs. centrality
56 TH2F *fHistDeltaRhovsCent; //!delta rho vs. centrality
57 TH2F *fHistDeltaRhoScalevsCent; //!delta rhoscaled vs. centrality
58 TH2F *fHistJetPtvsCent; //!jet pt vs. centrality
59 TH2F *fHistJetAreavsCent; //!jet area vs. centrality
60 TH2F *fHistNjetvsCent; //!no. of jets vs. centrality
61
62 TH2F *fHistRhovsNtrack; //!rho vs. no. of tracks
63 TH2F *fHistDeltaRhovsNtrack; //!delta rho vs. no. of tracks
64 TH2F *fHistDeltaRhoScalevsNtrack; //!delta rho scaled vs. no. of tracks
65 TH2F *fHistJetPtvsNtrack; //!jet pt vs. no. of tracks
66 TH2F *fHistJetAreavsNtrack; //!jet area vs. no. of tracks
67 TH2F *fHistNjetvsNtrack; //!no. of jets vs. no. of tracks
68 TParameter<Double_t> *fRhoScaled; //!per event scaled rho
020052e4 69
70 AliAnalysisTaskRho(const AliAnalysisTaskRho&); // not implemented
71 AliAnalysisTaskRho& operator=(const AliAnalysisTaskRho&); // not implemented
72
5b5bad1d 73 ClassDef(AliAnalysisTaskRho, 4); // Rho task
020052e4 74};
020052e4 75#endif