ROOT logo
#ifndef ALIANALYSISTASKSAJF_H
#define ALIANALYSISTASKSAJF_H

class TH2;
class THnSparse;

#include <TH3F.h>

#include "AliAnalysisTaskEmcalJet.h"

class AliAnalysisTaskSAJF : public AliAnalysisTaskEmcalJet {
 public:

  AliAnalysisTaskSAJF();
  AliAnalysisTaskSAJF(const char *name);
  virtual ~AliAnalysisTaskSAJF() {;}

  void                        UserCreateOutputObjects();

  void                        SetHistoType(Int_t t) { fHistoType = t; }

 protected:
  void                        AllocateTHX();
  void                        AllocateTHnSparse();

  Bool_t                      FillHistograms();
  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, 
					   Double_t NEF, Double_t z, Int_t n, Double_t leadingpt);

  Int_t                       fHistoType;                      // histogram type (0=TH2, 1=THnSparse)

  TH2                       **fHistRejectionReason;         //!Rejection reason vs. jet pt
  TH2                       **fHistTracksJetPt;             //!Track pt vs. jet pt
  TH2                       **fHistClustersJetPt;           //!Cluster pt vs. jet pt
  TH2                       **fHistTracksPtDist;            //!Track pt vs. distance form jet axis
  TH2                       **fHistClustersPtDist;          //!Cluster pt vs. distance form jet axis

  // Inclusive jets histograms
  THnSparse                  *fHistJetObservables;          //!Jet observables

  // TH2/TH3 versions
  TH3                       **fHistJetPtEtaPhi;             //!Jet Pt vs. Eta vs. Phi
  TH2                       **fHistJetPtArea;               //!Jet Pt vs. Area
  TH2                       **fHistJetPtEP;                 //!Jet Pt vs. event plane
  TH2                       **fHistJetPtNEF;                //!Jet Pt vs. neutral energy fraction
  TH2                       **fHistJetPtZ;                  //!Jet Pt vs. z
  TH2                       **fHistJetPtLeadingPartPt;      //!Jet Pt vs. leading particle pt
  TH3                       **fHistJetCorrPtEtaPhi;         //!Jet corrPt vs. Eta vs. Phi
  TH2                       **fHistJetCorrPtArea;           //!Jet corrPt vs. Area
  TH2                       **fHistJetCorrPtEP;             //!Jet corrPt vs. event plane
  TH2                       **fHistJetCorrPtNEF;            //!Jet corrPt vs. neutral energy fraction
  TH2                       **fHistJetCorrPtZ;              //!Jet corrPt vs. z
  TH2                       **fHistJetCorrPtLeadingPartPt;  //!Jet corrPt vs. leading particle pt
  TH2                       **fHistJetPtCorrPt;             //!Jet Pt vs. corrPt
  TH2                       **fHistJetPtMCPt;               //!Jet Pt vs. MCPt
  TH2                       **fHistJetMCPtCorrPt;           //!Jet MCPt vs. corrPt

 private:
  AliAnalysisTaskSAJF(const AliAnalysisTaskSAJF&);            // not implemented
  AliAnalysisTaskSAJF &operator=(const AliAnalysisTaskSAJF&); // not implemented

  ClassDef(AliAnalysisTaskSAJF, 17) // jet analysis task
};
#endif
 AliAnalysisTaskSAJF.h:1
 AliAnalysisTaskSAJF.h:2
 AliAnalysisTaskSAJF.h:3
 AliAnalysisTaskSAJF.h:4
 AliAnalysisTaskSAJF.h:5
 AliAnalysisTaskSAJF.h:6
 AliAnalysisTaskSAJF.h:7
 AliAnalysisTaskSAJF.h:8
 AliAnalysisTaskSAJF.h:9
 AliAnalysisTaskSAJF.h:10
 AliAnalysisTaskSAJF.h:11
 AliAnalysisTaskSAJF.h:12
 AliAnalysisTaskSAJF.h:13
 AliAnalysisTaskSAJF.h:14
 AliAnalysisTaskSAJF.h:15
 AliAnalysisTaskSAJF.h:16
 AliAnalysisTaskSAJF.h:17
 AliAnalysisTaskSAJF.h:18
 AliAnalysisTaskSAJF.h:19
 AliAnalysisTaskSAJF.h:20
 AliAnalysisTaskSAJF.h:21
 AliAnalysisTaskSAJF.h:22
 AliAnalysisTaskSAJF.h:23
 AliAnalysisTaskSAJF.h:24
 AliAnalysisTaskSAJF.h:25
 AliAnalysisTaskSAJF.h:26
 AliAnalysisTaskSAJF.h:27
 AliAnalysisTaskSAJF.h:28
 AliAnalysisTaskSAJF.h:29
 AliAnalysisTaskSAJF.h:30
 AliAnalysisTaskSAJF.h:31
 AliAnalysisTaskSAJF.h:32
 AliAnalysisTaskSAJF.h:33
 AliAnalysisTaskSAJF.h:34
 AliAnalysisTaskSAJF.h:35
 AliAnalysisTaskSAJF.h:36
 AliAnalysisTaskSAJF.h:37
 AliAnalysisTaskSAJF.h:38
 AliAnalysisTaskSAJF.h:39
 AliAnalysisTaskSAJF.h:40
 AliAnalysisTaskSAJF.h:41
 AliAnalysisTaskSAJF.h:42
 AliAnalysisTaskSAJF.h:43
 AliAnalysisTaskSAJF.h:44
 AliAnalysisTaskSAJF.h:45
 AliAnalysisTaskSAJF.h:46
 AliAnalysisTaskSAJF.h:47
 AliAnalysisTaskSAJF.h:48
 AliAnalysisTaskSAJF.h:49
 AliAnalysisTaskSAJF.h:50
 AliAnalysisTaskSAJF.h:51
 AliAnalysisTaskSAJF.h:52
 AliAnalysisTaskSAJF.h:53
 AliAnalysisTaskSAJF.h:54
 AliAnalysisTaskSAJF.h:55
 AliAnalysisTaskSAJF.h:56
 AliAnalysisTaskSAJF.h:57
 AliAnalysisTaskSAJF.h:58
 AliAnalysisTaskSAJF.h:59
 AliAnalysisTaskSAJF.h:60
 AliAnalysisTaskSAJF.h:61
 AliAnalysisTaskSAJF.h:62
 AliAnalysisTaskSAJF.h:63
 AliAnalysisTaskSAJF.h:64