AliPhysics  db95e02 (db95e02)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
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"
25 //#include "AliAnalysisTaskEmcalJetLight.h"
27 
35 
36 public:
37 
38  struct EventQA_t {
39  EventQA_t() : fCent(0), fNTracks(0), fMaxTrack() { fNClusters[0] = 0; fNClusters[1] = 0; fNClusters[2] = 0;}
45  };
46 
47  enum ClusterType {
48  kNA = -1,
49  kEMCal = 0,
50  kDCal = 1,
51  kPHOS = 2
52  };
53 
55  AliAnalysisTaskPWGJEQA(const char *name);
56  virtual ~AliAnalysisTaskPWGJEQA();
57 
59 
60  void SetCellEnergyCut(Float_t cut) { fCellEnergyCut = cut ; }
61  void SetGeneratorLevelName(const char* name) { fGeneratorLevelName = name ; }
62  void SetDetectorLevelName(const char* name) { fDetectorLevelName = name ; }
63 
64  void SetDoTrackQA(Bool_t b) { fDoTrackQA = b; }
65  void SetDoCaloQA(Bool_t b) { fDoCaloQA = b; }
66  void SetDoJetQA(Bool_t b) { fDoJetQA = b; }
67  void SetDoEventQA(Bool_t b) { fDoEventQA = b; }
69  void SetIsPtHard(Bool_t b) {fIsPtHard = b; }
70 
71 protected:
72 
73  void ExecOnce() ;
76  Bool_t UserNotify() ;
77 
79  void AllocateCellHistograms() ;
81  void AllocateJetHistograms() ;
83 
84  void FillTrackHistograms() ;
85  void FillCellHistograms() ;
86  void FillClusterHistograms() ;
87  void FillJetHistograms() ;
88  void FillEventQAHistograms() ;
89 
90  void GenerateHistoBins() ;
94  void FillDetectorLevelTHnSparse(Double_t cent, Double_t trackEta, Double_t trackPhi, Double_t trackPt,
95  Double_t sigma1OverPt, Byte_t trackType);
96  void FillGeneratorLevelTHnSparse(Double_t cent, Double_t partEta, Double_t partPhi, Double_t partPt, Byte_t findable);
97  void FillMatchedParticlesTHnSparse(Double_t cent, Double_t partEta, Double_t partPhi, Double_t partPt,
98  Double_t trackEta, Double_t trackPhi, Double_t trackPt, Byte_t trackType);
99 
114 
115  // Service fields (non-streamed)
132  AliPHOSGeometry* fPHOSGeo; ;
133 
135 
136 private:
137  AliAnalysisTaskPWGJEQA(const AliAnalysisTaskPWGJEQA&); // not implemented
138  AliAnalysisTaskPWGJEQA &operator=(const AliAnalysisTaskPWGJEQA&); // not implemented
139 
141  ClassDef(AliAnalysisTaskPWGJEQA, 3);
143 };
144 #endif
Double_t * fEtaHistBins
number of eta bins
Double_t * fPtResHistBins
number of pt res bins
void SetRejectOutlierEvents(Bool_t b)
Bool_t fDoEventQA
Set whether to enable event QA.
double Double_t
Definition: External.C:58
Definition: External.C:244
Int_t fNPtResHistBins
pt relative difference bins
AliTrackContainer * fDetectorLevel
generator level container
Container with name, TClonesArray and cuts for particles.
Declaration of class AliTLorentzVector.
AliAnalysisTaskPWGJEQA()
Default constructor for ROOT I/O purposes.
THistManager fHistManager
! phos geometry
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 fDoTrackQA
Set whether to enable track QA.
void SetCellEnergyCut(Float_t cut)
Double_t * fPtHistBins
number of pt bins
int Int_t
Definition: External.C:63
float Float_t
Definition: External.C:68
AliAnalysisTaskPWGJEQA & operator=(const AliAnalysisTaskPWGJEQA &)
AliPHOSGeometry * fPHOSGeo
integer bins
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
number of pt relative difference bins
Int_t fNPtHistBins
detector level container
void SetGeneratorLevelName(const char *name)
Int_t fNIntegerHistBins
pt res bins
Double_t * fIntegerHistBins
number of 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. Based on code from Salvatore ...
Base task in the EMCAL jet framework.
Container class for histograms.
Definition: THistManager.h:43
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
bool Bool_t
Definition: External.C:53
Double_t * fCentHistBins
number of cent bins
Container for MC-true particles within the EMCAL framework.
Definition: External.C:196
Double_t * fPhiHistBins
number of phi bins
AliTLorentzVector fLeadingCluster[3]
!Leading cluster in current event (EMCal/DCal)