]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGJE/EMCALJetTasks/UserTasks/AliAnalysisTaskSAJF.h
Merge remote-tracking branch 'origin/master' into flatdev
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / UserTasks / AliAnalysisTaskSAJF.h
1 #ifndef ALIANALYSISTASKSAJF_H
2 #define ALIANALYSISTASKSAJF_H
3
4 // $Id$
5
6 class TH2;
7 class THnSparse;
8
9 #include <TH3F.h>
10
11 #include "AliAnalysisTaskEmcalJet.h"
12
13 class AliAnalysisTaskSAJF : public AliAnalysisTaskEmcalJet {
14  public:
15
16   AliAnalysisTaskSAJF();
17   AliAnalysisTaskSAJF(const char *name);
18   virtual ~AliAnalysisTaskSAJF() {;}
19
20   void                        UserCreateOutputObjects();
21
22   void                        SetHistoType(Int_t t) { fHistoType = t; }
23
24  protected:
25   void                        AllocateTHX();
26   void                        AllocateTHnSparse();
27
28   Bool_t                      FillHistograms();
29   void                        FillJetHisto(Double_t cent, Double_t ep, Double_t eta, Double_t phi, Double_t pt, Double_t MCpt, Double_t corrpt, Double_t area, 
30                                            Double_t NEF, Double_t z, Int_t n, Double_t leadingpt);
31
32   Int_t                       fHistoType;                      // histogram type (0=TH2, 1=THnSparse)
33
34   // Inclusive jets histograms
35   THnSparse                  *fHistJetObservables;             //!Jet-wise observables
36
37   // TH2/TH3 versions
38   TH3                        *fHistJetPtEtaPhi[4];             //!Jet Pt vs. Eta vs. Phi
39   TH2                        *fHistJetPtArea[4];               //!Jet Pt vs. Area
40   TH2                        *fHistJetPtEP[4];                 //!Jet Pt vs. event plane
41   TH2                        *fHistJetPtNEF[4];                //!Jet Pt vs. neutral energy fraction
42   TH2                        *fHistJetPtZ[4];                  //!Jet Pt vs. z
43   TH2                        *fHistJetPtLeadingPartPt[4];      //!Jet Pt vs. leading particle pt
44   TH3                        *fHistJetCorrPtEtaPhi[4];         //!Jet corrPt vs. Eta vs. Phi
45   TH2                        *fHistJetCorrPtArea[4];           //!Jet corrPt vs. Area
46   TH2                        *fHistJetCorrPtEP[4];             //!Jet corrPt vs. event plane
47   TH2                        *fHistJetCorrPtNEF[4];            //!Jet corrPt vs. neutral energy fraction
48   TH2                        *fHistJetCorrPtZ[4];              //!Jet corrPt vs. z
49   TH2                        *fHistJetCorrPtLeadingPartPt[4];  //!Jet corrPt vs. leading particle pt
50   TH2                        *fHistJetPtCorrPt[4];             //!Jet Pt vs. corrPt
51   TH2                        *fHistJetPtMCPt[4];               //!Jet Pt vs. MCPt
52   TH2                        *fHistJetMCPtCorrPt[4];           //!Jet MCPt vs. corrPt
53
54   TH2                        *fHistTracksJetPt[4];             //!Track pt vs. jet pt
55   TH2                        *fHistClustersJetPt[4];           //!Cluster pt vs. jet pt
56   TH2                        *fHistTracksPtDist[4];            //!Track pt vs. distance form jet axis
57   TH2                        *fHistClustersPtDist[4];          //!Cluster pt vs. distance form jet axis
58
59  private:
60   AliAnalysisTaskSAJF(const AliAnalysisTaskSAJF&);            // not implemented
61   AliAnalysisTaskSAJF &operator=(const AliAnalysisTaskSAJF&); // not implemented
62
63   ClassDef(AliAnalysisTaskSAJF, 17) // jet analysis task
64 };
65 #endif