Changes by Salvatore
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / AliAnalysisTaskDeltaPt.h
CommitLineData
a487deae 1#ifndef ALIANALYSISTASKDELTAPT_H
2#define ALIANALYSISTASKDELTAPT_H
3
4// $Id$
5
6class TClonesArray;
7class TString;
8class TH1F;
9class TH2F;
10class AliRhoParameter;
11
12#include "AliAnalysisTaskEmcalJet.h"
13
14class AliAnalysisTaskDeltaPt : public AliAnalysisTaskEmcalJet {
15 public:
16
17 AliAnalysisTaskDeltaPt();
18 AliAnalysisTaskDeltaPt(const char *name);
19 virtual ~AliAnalysisTaskDeltaPt();
20
21 void UserCreateOutputObjects();
22 void Terminate(Option_t *option);
23
24 void SetJetMinRC2LJ(Float_t d) { fMinRC2LJ = d ; }
25 void SetEmbJetsName(const char *n) { fEmbJetsName = n ; }
26 void SetEmbTracksName(const char *n) { fEmbTracksName = n ; }
27 void SetEmbClusName(const char *n) { fEmbCaloName = n ; }
28 void SetRandTracksName(const char *n) { fRandTracksName = n ; }
29 void SetRandClusName(const char *n) { fRandCaloName = n ; }
30 void SetMC(Bool_t m) { fMCAna = m ; }
31 void SetRCperEvent(Int_t n) { fRCperEvent = n ; }
32
33 protected:
34 void ExecOnce() ;
35 Bool_t FillHistograms() ;
36 void GetLeadingJets(Int_t &maxJetIndex, Int_t &max2JetIndex) ;
59f16b27 37 void DoEmbJetLoop(AliEmcalJet* &embJet, TObject* &embPart) ;
a487deae 38 void DoEmbTrackLoop() ;
39 void DoEmbClusterLoop() ;
40 void GetRandomCone(Float_t &pt, Float_t &eta, Float_t &phi,
41 AliEmcalJet *jet = 0, TClonesArray* tracks = 0, TClonesArray* clusters = 0) const;
42
43 Bool_t fMCAna; // =true MC analysis (toy model)
44 Float_t fMinRC2LJ; // Minimum distance random cone to leading jet
45 TString fEmbJetsName; // Name of embedded jet collection
46 TString fEmbTracksName; // Name of embedded track collection
47 TString fEmbCaloName; // Name of embedded calo cluster collection
48 TString fRandTracksName; // Name of randomized track collection
49 TString fRandCaloName; // Name of randomized calo cluster collection
50 Int_t fRCperEvent; // No. of random cones per event
51
52 TClonesArray *fEmbJets; //!Embedded jets
53 TClonesArray *fEmbTracks; //!Embedded tracks
54 TClonesArray *fEmbCaloClusters; //!Embedded clusters
55 TClonesArray *fRandTracks; //!Randomized tracks
56 TClonesArray *fRandCaloClusters; //!Randomized clusters
57 Int_t fEmbeddedClusterId; //!Embedded cluster id
58 Int_t fEmbeddedTrackId; //!Embedded track id
59
60 // Random cones
61 TH2F *fHistRCPhiEta; //!Phi-Eta distribution of random cones
62 TH1F *fHistRCPt[4]; //!Random cone pt
63 TH1F *fHistRCPtExLJ[4]; //!Random cone pt, imposing min distance from leading jet
64 TH1F *fHistRCPtRand[4]; //!Random cone pt, randomized particles
65 TH2F *fHistRCPtExLJVSDPhiLJ; //!Random cone pt, imposing min distance from leading jet, vs. deltaPhi leading jet
59f16b27 66 TH2F *fHistRhoVSRCPt[4]; //!Area(RC) * rho vs. Pt(RC)
a487deae 67 TH1F *fHistDeltaPtRC[4]; //!deltaPt = Pt(RC) - A * rho
68 TH1F *fHistDeltaPtRCExLJ[4]; //!deltaPt = Pt(RC) - A * rho, imposing min distance from leading jet
69 TH1F *fHistDeltaPtRCRand[4]; //!deltaPt = Pt(RC) - A * rho, randomzied particles
70
71 // Jet embedding
72 TH2F *fHistEmbNotFoundPhiEta[4]; //!Phi-Eta of "not found" embedded particles
1f9c287f 73 TH2F *fHistEmbJetsPtArea[4]; //!Pt vs. area of embedded jets
74 TH2F *fHistEmbJetsCorrPtArea[4]; //!Pt-rho*A vs. area of embedded jets
a487deae 75 TH1F *fHistEmbPartPt[4]; //!Pt distribution of embedded particle
76 TH2F *fHistEmbJetPhiEta; //!Phi-Eta distribution of embedded jets
77 TH2F *fHistEmbPartPhiEta; //!Phi-Eta distribution of embedded particles
78 TH1F *fHistDistEmbPartJetAxis[4]; //!Distance between embedded particle and jet axis
1f9c287f 79 TH2F *fHistEmbBkgArea[4]; //!Pt(embjet) - Pt(embtrack) vs. area of embedded jets
59f16b27 80 TH2F *fHistRhoVSEmbBkg[4]; //!Area(embjet) * rho vs. Pt(embjet) - Pt(embtrack)
1f9c287f 81 TH2F *fHistDeltaPtEmbArea[4]; //!deltaPt = Pt(embjet) - Area(embjet) * rho - Pt(embtrack)
a487deae 82
83 private:
84 AliAnalysisTaskDeltaPt(const AliAnalysisTaskDeltaPt&); // not implemented
85 AliAnalysisTaskDeltaPt &operator=(const AliAnalysisTaskDeltaPt&); // not implemented
86
1f9c287f 87 ClassDef(AliAnalysisTaskDeltaPt, 2) // deltaPt analysis task
a487deae 88};
89#endif