AliPhysics  7f1bdba (7f1bdba)
AliAnalysisTaskEmcalJetSpectra8TeVTriggerQA.h
Go to the documentation of this file.
1 #ifndef ALIANALYSISTASKEMCALJETSPECTRA8TEVTRIGGERQA_H
2 #define ALIANALYSISTASKEMCALJETSPECTRA8TEVTRIGGERQA_H
3 
4 /**********************************************************************************
5  * Copyright (C) 2018, Copyright Holders of the ALICE Collaboration *
6  * All rights reserved. *
7  * *
8  * Redistribution and use in source and binary forms, with or without *
9  * modification, are permitted provided that the following conditions are met: *
10  * * Redistributions of source code must retain the above copyright *
11  * notice, this list of conditions and the following disclaimer. *
12  * * Redistributions in binary form must reproduce the above copyright *
13  * notice, this list of conditions and the following disclaimer in the *
14  * documentation and/or other materials provided with the distribution. *
15  * * Neither the name of the <organization> nor the *
16  * names of its contributors may be used to endorse or promote products *
17  * derived from this software without specific prior written permission. *
18  * *
19  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND *
20  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED *
21  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE *
22  * DISCLAIMED. IN NO EVENT SHALL ALICE COLLABORATION BE LIABLE FOR ANY *
23  * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES *
24  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; *
25  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND *
26  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT *
27  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS *
28  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
29  * *********************************************************************************/
30 
43 /* Copyright(c) 1998-2018, ALICE Experiment at CERN, All rights reserved. *
44  * See cxx source for full Copyright notice */
45 
46 
47 
49 #include "THistManager.h"
50 #include <string>
51 #include <vector>
54 #include "AliEventCuts.h"
55 #include <TCustomBinning.h>
56 #include <TString.h>
57 
58 class AliOADBContainer;
59 class AliEMCALTriggerPatchInfo;
60 class THistManager;
61 class TObjArray;
62 class TFormula;
63 class TH2F;
64 class TH1F;
65 class TF1;
66 class THnSparse;
67 class TRandom3;
68 class TObjArray;
69 class TClonesArray;
70 class TObject;
71 class TString;
72 class TProfile2D;
73 class AliAODEvent;
74 class AliESDEvent;
75 class AliMCEvent;
76 class AliVEvent;
77 class AliStack;
78 class AliEMCALGeometry;
79 //class AliEMCalJet;
80 class AliEMCALRecoUtils;
81 class AliESDCaloCluster;
82 class AliVTrack;
83 class AliMCEvent;
84 class AliAODEvent;
85 class AliESDEvent;
86 
99 public:
100 
104 
105  void UserCreateOutputObjects() ;
106  void Terminate(Option_t *option) ;
107  void ExtractMainPatch() ;
108 
109  //setters
110  void SetUseSumw2(Bool_t b) { fUseSumw2 = b ; }
111 
112 protected:
113  void ExecOnce() ;
115  Bool_t Run() ;
116 
117  void AllocateJetHistograms() ;
118  void AllocateTrackHistograms() ;
120  void AllocateCellHistograms() ;
122  //void AllocateMCJetHistograms() ;///< MC truth Jet Histograms
123 
124 
125 
126  void DoJetLoop() ;
127  void DoTrackLoop() ;
128  void DoClusterLoop() ;
129  void DoCellLoop() ;
130  void DoParticleLoop() ;
131  //void DoMCJetLoop() ;
132  //Bool_t IsLEDEvent() const ;
133 
135  Bool_t SelectSingleShowerPatch(const AliEMCALTriggerPatchInfo *patch) const;
136  Bool_t SelectJetPatch(const AliEMCALTriggerPatchInfo *patch) const;
138 
139  // Sparse Definition
140  virtual THnSparse* NewTHnSparseF(const char* name, UInt_t entries);
141  virtual void GetDimParams(Int_t iEntry,TString &label, Int_t &nbins, Double_t &xmin, Double_t &xmax);
142  // Binning helper functions
143 
144  // Utilities
145  //Double_t GetZ(const Double_t trkPx, const Double_t trkPy, const Double_t trkPz, const Double_t jetPx, const Double_t jetPy, const Double_t jetPz) const;
146  //Double_t GetSmearedTrackPt(AliVTrack *track) ; //!<! smeared Pt resolution with gaussian
147  //Double_t GetFcross(const AliVCluster *cluster, AliVCaloCells *cells);
148 
149  //AliVEvent *fRecevent ;//!<! Reconstructed event
150  //AliMCEvent *fMCevent ;//!<! Monte-Carlo event
151  //AliMCParticleContainer* fGeneratorLevel ;//!<! generator level container
152  // AliJetContainer* fMCJetContainer ;//!<! truth-level jet container
153 
154 private:
155 
156  //AliEMCALGeometry *fGeom ;//!<! EMCal goemetry utility
157  // AliEMCALRecoUtils *fRecoUtil ;//!<! Reco utility
158  //TF1 *fClusterEResolution ;//!<! Parameterization of cluster energy resolution from 2010 test beam results a = 4.35 b = 9.07 c = 1.63
159  // Double_t fVaryTrkPtRes ;//!<! Variation of tracking momentum resolution
161 
163  TH1F *fHistJetPt ;
169 
170  //THnSparse *fhnMBJetSpectra ;//!<! MB Jet Spectra sparse
171  //THnSparse *fhnTrkQA ;//!<! Charged Track QA Sparse
172  // THnSparse *fhnClusQA ;//!<! EMCal Cluster QA
173 
174 
175  //TH1F *fHistEMCalTowerMult[9] ;//!<! EMCal Tower Multiplicity by SM
176 
179 
183 };
184 #endif
virtual THnSparse * NewTHnSparseF(const char *name, UInt_t entries)
double Double_t
Definition: External.C:58
Definition: External.C:236
void AllocateParticleHistograms()
Generator Level MC Histograms.
AliAnalysisTaskEmcalJetSpectra8TeVTriggerQA & operator=(const AliAnalysisTaskEmcalJetSpectra8TeVTriggerQA &)
Some utilities for cluster and cell treatment.
int Int_t
Definition: External.C:63
Bool_t fUseRecalcPatches
Switch between offline (FEE) and recalc (L1) patches.
unsigned int UInt_t
Definition: External.C:33
Bool_t SelectSingleShowerPatch(const AliEMCALTriggerPatchInfo *patch) const
Implementation of a EMCal spectra task and QA for EMCal triggers.
Bool_t SelectJetPatch(const AliEMCALTriggerPatchInfo *patch) const
Base task in the EMCAL jet framework.
Container class for histograms.
Definition: THistManager.h:99
const char Option_t
Definition: External.C:48
const Int_t nbins
bool Bool_t
Definition: External.C:53
virtual void GetDimParams(Int_t iEntry, TString &label, Int_t &nbins, Double_t &xmin, Double_t &xmax)