AliPhysics  d2444a6 (d2444a6)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliAnalysisTaskEmcalClustersRef.h
Go to the documentation of this file.
1 #ifndef ALIANALYSISTASKEMCALCLUSTERSREF_H
2 #define ALIANALYSISTASKEMCALCLUSTERSREF_H
3 /* Copyright(c) 1998-2015, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice */
5 
6 #include "AliAnalysisTaskSE.h"
7 #include "AliCutValueRange.h"
8 #include <TCustomBinning.h>
9 #include <TString.h>
10 
11 class AliAnalysisUtils;
12 class AliEMCALGeometry;
13 class AliOADBContainer;
14 
15 class TArrayD;
16 class TClonesArray;
17 class THistManager;
18 class TList;
19 class TObjArray;
20 class TString;
21 
22 namespace EMCalTriggerPtAnalysis {
23 
24 class AliEmcalTriggerOfflineSelection;
25 
26 class AliAnalysisTaskEmcalClustersRef : public AliAnalysisTaskSE {
27 public:
29  AliAnalysisTaskEmcalClustersRef(const char *name);
31 
33  void UserExec(Option_t *);
34  void Terminate(Option_t *) {}
35 
37  void SetClusterContainer(TString clustercontname) { fClusterContainer = clustercontname; }
38  void SetCreateTriggerStringFromPatches(Bool_t doUsePatches) { fTriggerStringFromPatches = doUsePatches; }
39 
40  void SetRequestAnalysisUtil(Bool_t doRequest) { fRequestAnalysisUtil = doRequest; }
41  void SetCentralityRange(double min, double max) { fCentralityRange.SetLimits(min, max); fRequestCentrality = true; }
42  void SetVertexRange(double min, double max) { fVertexRange.SetLimits(min, max); }
43  void SetDownscaleOADB(TString oadbname) { fNameDownscaleOADB = oadbname; }
44 
45 protected:
46 
47  virtual void ExecOnce();
48  virtual void RunChanged(Int_t runnumber);
49 
50  Double_t GetTriggerWeight(const TString &triggerclass) const;
51  void GetPatchBoundaries(TObject *o, Double_t *boundaries) const;
52  bool IsOfflineSimplePatch(TObject *o) const;
53  bool SelectDCALPatch(TObject *o) const;
54  bool SelectSingleShowerPatch(TObject *o) const;
55  bool SelectJetPatch(TObject *o) const;
56  double GetPatchEnergy(TObject *o) const;
57 
58  void FillClusterHistograms(const TString &triggerclass, double energy, double transversenergy, double eta, double phi, TList *triggerpatches);
59  void FillEventHistograms(const TString &triggerclass, double centrality, double vertexz);
60  TString GetFiredTriggerClassesFromPatches(const TClonesArray* triggerpatches) const;
61  void FindPatchesForTrigger(TString triggerclass, const TClonesArray * triggerpatches, TList &foundpatches) const;
62  Bool_t CorrelateToTrigger(Double_t etaclust, Double_t phiclust, TList *triggerpatches) const;
63 
64  AliAnalysisUtils *fAnalysisUtil;
67  AliEMCALGeometry *fGeometry;
68  TClonesArray *fTriggerPatches;
70 
76 
78  AliOADBContainer *fDownscaleOADB;
79  TObjArray *fDownscaleFactors;
80 
81  Int_t fCurrentRun;
82  Bool_t fInitialized;
83 
84 private:
85 
86  class EnergyBinning : public TCustomBinning {
87  public:
88  EnergyBinning();
89  virtual ~EnergyBinning() {}
90  };
91 
94 
98 };
99 
100 } /* namespace EMCalTriggerPtAnalysis */
101 
102 #endif /* ALIANALYSISTASKEMCALCLUSTERSREF_H */
void GetPatchBoundaries(TObject *o, Double_t *boundaries) const
Bool_t CorrelateToTrigger(Double_t etaclust, Double_t phiclust, TList *triggerpatches) const
TClonesArray * fTriggerPatches
! Container with trigger patches
AliAnalysisTaskEmcalClustersRef & operator=(const AliAnalysisTaskEmcalClustersRef &)
centrality
Bool_t fRequestCentrality
Swich on request for centrality range.
void FillEventHistograms(const TString &triggerclass, double centrality, double vertexz)
AliAnalysisUtils * fAnalysisUtil
Analysis utils for additional event selection / pileup rejection.
void FillClusterHistograms(const TString &triggerclass, double energy, double transversenergy, double eta, double phi, TList *triggerpatches)
AliEmcalTriggerOfflineSelection * fTriggerSelection
EMCAL offline trigger selection tool.
void SetOfflineTriggerSelection(AliEmcalTriggerOfflineSelection *sel)
TString fClusterContainer
Name of the cluster container in the event.
Bool_t fTriggerStringFromPatches
Build trigger string from trigger patches.
Helper class creating user defined custom binning.
AliOADBContainer * fDownscaleOADB
! Container with downscale factors for different triggers
energy
Int_t fCurrentRun
Current run number (for RunChange method)
AliCutValueRange< double > fCentralityRange
Selected centrality range.
TString GetFiredTriggerClassesFromPatches(const TClonesArray *triggerpatches) const
AliCutValueRange< double > fVertexRange
Selected vertex range.
Container class for histograms for the high- charged particle analysis.
Definition: THistManager.h:43
Bool_t fRequestAnalysisUtil
Switch on request for event selection using analysis utils.
TString fNameDownscaleOADB
Name of the downscale OADB container.
void FindPatchesForTrigger(TString triggerclass, const TClonesArray *triggerpatches, TList &foundpatches) const