]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - PWGJE/EMCALJetTasks/AliAnalysisTaskRhoBase.h
add options for on-the-fly analysis of toy mc jet v2 events
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / AliAnalysisTaskRhoBase.h
... / ...
CommitLineData
1#ifndef ALIANALYSISTASKRHOBASE_H
2#define ALIANALYSISTASKRHOBASE_H
3
4// $Id$
5
6class TString;
7class TF1;
8class TH1F;
9class TH2F;
10class AliRhoParameter;
11
12#include "AliAnalysisTaskEmcalJet.h"
13
14class AliAnalysisTaskRhoBase : public AliAnalysisTaskEmcalJet {
15 public:
16 AliAnalysisTaskRhoBase();
17 AliAnalysisTaskRhoBase(const char *name, Bool_t histo=kFALSE);
18 virtual ~AliAnalysisTaskRhoBase() {}
19
20 void UserCreateOutputObjects();
21
22 void SetOutRhoName(const char *name) { fOutRhoName = name ;
23 fOutRhoScaledName = Form("%s_Scaled",name) ; }
24 void SetCompareRhoName(const char *name) { fCompareRhoName = name ; }
25 void SetCompareRhoScaledName(const char *name) { fCompareRhoScaledName = name ; }
26 void SetScaleFunction(TF1* sf) { fScaleFunction = sf ; }
27 void SetRhoFunction(TF1* rf) { fRhoFunction = rf ; }
28 void SetInEventSigmaRho(Double_t s) { fInEventSigmaRho = s ; }
29 void SetAttachToEvent(Bool_t a) { fAttachToEvent = a ; }
30
31 const TString& GetOutRhoName() const { return fOutRhoName; }
32 const TString& GetOutRhoScaledName() const { return fOutRhoScaledName; }
33
34 protected:
35 void ExecOnce();
36 Bool_t Run();
37 Bool_t FillHistograms();
38
39 virtual Double_t GetRhoFactor(Double_t cent);
40 virtual Double_t GetScaleFactor(Double_t cent);
41
42 TString fOutRhoName; // name of output rho object
43 TString fOutRhoScaledName; // name of output scaled rho object
44 TString fCompareRhoName; // name of rho object to compare
45 TString fCompareRhoScaledName; // name of scaled rho object to compare
46 TF1 *fRhoFunction; // pre-computed rho as a function of centrality
47 TF1 *fScaleFunction; // pre-computed scale factor as a function of centrality
48 Double_t fInEventSigmaRho; // in-event sigma rho
49 Bool_t fAttachToEvent; // whether or not attach rho to the event objects list
50
51 AliRhoParameter *fOutRho; //!output rho object
52 AliRhoParameter *fOutRhoScaled; //!output scaled rho object
53 AliRhoParameter *fCompareRho; //!rho object to compare
54 AliRhoParameter *fCompareRhoScaled; //!scaled rho object to compare
55
56 TH2F *fHistJetPtvsCent; //!jet pt vs. centrality
57 TH2F *fHistJetAreavsCent; //!jet area vs. centrality
58 TH2F *fHistJetRhovsCent; //!jet pt/area vs. centrality
59 TH2F *fHistNjetvsCent; //!no. of jets vs. centrality
60 TH2F *fHistJetPtvsNtrack; //!jet pt vs. no. of tracks
61 TH2F *fHistJetAreavsNtrack; //!jet area vs. no. of tracks
62 TH2F *fHistNjetvsNtrack; //!no. of jets vs. no. of tracks
63 TH2F *fHistNjUEoverNjVsNj[12]; //!ratio no. of jets below rho*A+sigma_rho over. no. of jets vs. no. of jets
64 TH2F *fHistJetNconstVsPt[4]; //!jet no. of constituents vs. pt
65 TH2F *fHistJetRhovsEta[4]; //!rho vs. eta
66 TH2F *fHistRhovsCent; //!rho vs. centrality
67 TH2F *fHistRhoScaledvsCent; //!rhoscaled vs. centrality
68 TH2F *fHistDeltaRhovsCent; //!delta rho vs. centrality
69 TH2F *fHistDeltaRhoScalevsCent; //!delta rhoscaled vs. centrality
70
71 TH2F *fHistRhovsNtrack; //!rho vs. no. of tracks
72 TH2F *fHistRhoScaledvsNtrack; //!rhoscaled vs. no. of tracks
73 TH2F *fHistDeltaRhovsNtrack; //!delta rho vs. no. of tracks
74 TH2F *fHistDeltaRhoScalevsNtrack; //!delta rho scaled vs. no. of tracks
75
76 TH2F *fHistRhovsNcluster; //!rho vs. no. of clusters
77 TH2F *fHistRhoScaledvsNcluster; //!rhoscaled vs. no. of clusters
78
79 AliAnalysisTaskRhoBase(const AliAnalysisTaskRhoBase&); // not implemented
80 AliAnalysisTaskRhoBase& operator=(const AliAnalysisTaskRhoBase&); // not implemented
81
82 ClassDef(AliAnalysisTaskRhoBase, 10); // Rho base task
83};
84#endif