AliPhysics  5364b50 (5364b50)
AliAnalysisTaskPWGJEQA.h
Go to the documentation of this file.
1 
11 #ifndef ALIANALYSISTASKPWGJEQA_H
12 #define ALIANALYSISTASKPWGJEQA_H
13 
14 /* Copyright(c) 1998-2016, ALICE Experiment at CERN, All rights reserved. *
15  * See cxx source for full Copyright notice */
16 
17 class TH1;
18 class TH2;
19 class TH3;
20 class THnSparse;
21 class AliPHOSGeometry;
22 
23 #include "THistManager.h"
24 #include "AliTLorentzVector.h"
26 
44 
45 public:
46 
47  struct EventQA_t {
48  EventQA_t() : fCent(0), fNTracks(0), fMaxTrack() { fNClusters[0] = 0; fNClusters[1] = 0; fNClusters[2] = 0;}
54  };
55 
56  enum ClusterType {
57  kNA = -1,
58  kEMCal = 0,
59  kDCal = 1,
60  kPHOS = 2
61  };
62 
64  AliAnalysisTaskPWGJEQA(const char *name);
65  virtual ~AliAnalysisTaskPWGJEQA();
66 
68 
69  void SetCellEnergyCut(Float_t cut) { fCellEnergyCut = cut ; }
70  void SetGeneratorLevelName(const char* name) { fGeneratorLevelName = name ; }
71  void SetDetectorLevelName(const char* name) { fDetectorLevelName = name ; }
72 
73  void SetDoTrackQA(Bool_t b) { fDoTrackQA = b; }
74  void SetDoCaloQA(Bool_t b) { fDoCaloQA = b; }
75  void SetDoJetQA(Bool_t b) { fDoJetQA = b; }
76  void SetDoEventQA(Bool_t b) { fDoEventQA = b; }
78  void SetIsPtHard(Bool_t b) {fIsPtHard = b; }
79 
80 protected:
81 
82  void ExecOnce() ;
85  Bool_t UserNotify() ;
86 
88  void AllocateCellHistograms() ;
90  void AllocateJetHistograms() ;
92 
93  void FillTrackHistograms() ;
94  void FillCellHistograms() ;
95  void FillClusterHistograms() ;
96  void FillJetHistograms() ;
97  void FillEventQAHistograms() ;
98 
99  void GenerateHistoBins() ;
103  void FillDetectorLevelTHnSparse(Double_t cent, Double_t trackEta, Double_t trackPhi, Double_t trackPt,
104  Double_t sigma1OverPt, Byte_t trackType);
105  void FillGeneratorLevelTHnSparse(Double_t cent, Double_t partEta, Double_t partPhi, Double_t partPt, Byte_t findable);
106  void FillMatchedParticlesTHnSparse(Double_t cent, Double_t partEta, Double_t partPhi, Double_t partPt,
107  Double_t trackEta, Double_t trackPhi, Double_t trackPt, Byte_t trackType);
108 
123 
124  // Service fields (non-streamed)
141  AliPHOSGeometry* fPHOSGeo ;
142 
144 
145 private:
146  AliAnalysisTaskPWGJEQA(const AliAnalysisTaskPWGJEQA&); // not implemented
147  AliAnalysisTaskPWGJEQA &operator=(const AliAnalysisTaskPWGJEQA&); // not implemented
148 
150  ClassDef(AliAnalysisTaskPWGJEQA, 5);
152 };
153 #endif
Double_t * fEtaHistBins
! eta bins
Double_t * fPtResHistBins
! pt res bins
void SetRejectOutlierEvents(Bool_t b)
Bool_t fDoEventQA
Set whether to enable event QA.
Int_t fNEtaHistBins
! number of eta bins
double Double_t
Definition: External.C:58
Definition: External.C:244
Int_t fNPtResHistBins
! number of pt res bins
AliTrackContainer * fDetectorLevel
! detector level container
Int_t fNPhiHistBins
! number of phi bins
Bool_t RetrieveEventObjects()
Retrieve common objects from event.
Container with name, TClonesArray and cuts for particles.
Declaration of class AliTLorentzVector.
AliAnalysisTaskPWGJEQA()
Default constructor for ROOT I/O purposes.
THistManager fHistManager
Histogram manager.
Bool_t fRejectOutlierEvents
flag to reject pythia pt-hard jet outlier events
Int_t fNTotClusters[3]
!Total number of accepted clusters in current event (DCal/EMCal)
TString fDetectorLevelName
detector level container name
Bool_t FillHistograms()
Function filling histograms.
Bool_t fDoTrackQA
Set whether to enable track QA.
void SetCellEnergyCut(Float_t cut)
Double_t * fPtHistBins
! pt bins
int Int_t
Definition: External.C:63
float Float_t
Definition: External.C:68
AliAnalysisTaskPWGJEQA & operator=(const AliAnalysisTaskPWGJEQA &)
AliPHOSGeometry * fPHOSGeo
! phos geometry
void FillDetectorLevelTHnSparse(Double_t cent, Double_t trackEta, Double_t trackPhi, Double_t trackPt, Double_t sigma1OverPt, Byte_t trackType)
Int_t fNTotTracks
!Total number of accepted tracks in current event
Float_t fCellEnergyCut
Energy cell cut.
Double_t * fPtRelDiffHistBins
! pt relative difference bins
Int_t fNPtHistBins
! number of pt bins
void SetGeneratorLevelName(const char *name)
Int_t fNIntegerHistBins
! number of integer bins
Int_t fNCentHistBins
! number of cent bins
void ExecOnce()
Perform steps needed to initialize the analysis.
Double_t * fIntegerHistBins
! integer bins
void SetDetectorLevelName(const char *name)
void FillMatchedParticlesTHnSparse(Double_t cent, Double_t partEta, Double_t partPhi, Double_t partPt, Double_t trackEta, Double_t trackPhi, Double_t trackPt, Byte_t trackType)
void FillGeneratorLevelTHnSparse(Double_t cent, Double_t partEta, Double_t partPhi, Double_t partPt, Byte_t findable)
AliTLorentzVector fLeadingTrack
!Leading track in current event
Definition: External.C:220
void GenerateHistoBins()
Generate histogram binning arrays.
Bool_t fDoCaloQA
Set whether to enable cell/cluster QA.
This is a task used to do basic PWGJE QA on tracks, clusters, and jets.
Base task in the EMCAL jet framework.
Container class for histograms.
Definition: THistManager.h:99
Bool_t fIsPtHard
flag to enable pt-hard histos and make available outlier cut
Bool_t fDoJetQA
Set whether to enable jet QA.
TString fGeneratorLevelName
generator level container name
Float_t fMaxPt
Histogram pt limit.
AliMCParticleContainer * fGeneratorLevel
! generator level container
bool Bool_t
Definition: External.C:53
Double_t * fCentHistBins
! cent bins
Container for MC-true particles within the EMCAL framework.
Int_t fNPtRelDiffHistBins
! number of pt relative difference bins
Definition: External.C:196
Double_t * fPhiHistBins
! phi bins
AliTLorentzVector fLeadingCluster[3]
!Leading cluster in current event (EMCal/DCal)