AliPhysics  v5-07-15-01 (b3d7633)
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Macros
AliAnalysisTaskEventSelectionRef.h
Go to the documentation of this file.
1 #ifndef ALIANALYSISTASKEVENTSELECTIONREF_H
2 #define ALIANALYSISTASKEVENTSELECTIONREF_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 
8 class TArrayD;
9 class TClonesArray;
10 class TObjArray;
11 class TString;
12 
13 class AliAnalysisUtils;
14 class AliAODTrack;
15 class AliESDtrack;
16 class AliESDtrackCuts;
17 class AliEmcalTriggerPatchInfo;
18 class AliEMCALGeometry;
19 class AliVCluster;
20 class AliVTrack;
21 
22 namespace EMCalTriggerPtAnalysis {
23 
24 class AliEMCalHistoContainer;
25 
26 class AliAnalysisTaskEventSelectionRef : public AliAnalysisTaskSE {
27 public:
29  kCPREL0 = 0,
35  };
37  AliAnalysisTaskEventSelectionRef(const char *name);
39 
40  virtual void UserCreateOutputObjects();
41  virtual void UserExec(Option_t *);
42 
43  void SetOfflineEnergyThreshold(EmcalTriggerClass trgcls, double threshold) { fOfflineEnergyThreshold[trgcls] = threshold; }
44  void SetClusterContainer(TString name) { fClusterContainerName = name; }
45 
46 protected:
47  void FillEventCounterHists(const char *triggerclass, double vtxz, bool isSelected, bool isOfflineSelected);
48  Bool_t IsOfflineSelected(EmcalTriggerClass trgcls, const TClonesArray * const triggerpatches) const;
49 
50  void ProcessTrack(const char *triggerclass, const AliVTrack * track, bool isOfflineSelected);
51  void ProcessCluster(const char *triggerclass, const AliVCluster *clust, bool isOfflineSelected);
52  void ProcessOfflinePatch(const char * triggerclass, const AliEmcalTriggerPatchInfo * patch, bool isOfflineSelected);
53 
54  Bool_t TrackSelectionESD(AliESDtrack* track) ;
55  Bool_t TrackSelectionAOD(AliAODTrack* track);
56 
57  void CreatePtBinning(TArrayD& binning) const;
58  void CreateEnergyBinning(TArrayD& binning) const;
59 
61  AliAnalysisUtils *fAnalysisUtils;
62  AliESDtrackCuts *fTrackCuts;
64  AliEMCALGeometry *fGeometry;
65  TClonesArray *fTriggerPatchContainer;
66  TClonesArray *fClusterContainer;
67  TObjArray *fTrackContainer;
69 
71 };
72 
73 } /* namespace EMCalTriggerPtAnalysis */
74 
75 #endif
void FillEventCounterHists(const char *triggerclass, double vtxz, bool isSelected, bool isOfflineSelected)
void ProcessCluster(const char *triggerclass, const AliVCluster *clust, bool isOfflineSelected)
Container class for histograms for the high- charged particle analysis.
void ProcessTrack(const char *triggerclass, const AliVTrack *track, bool isOfflineSelected)
Bool_t IsOfflineSelected(EmcalTriggerClass trgcls, const TClonesArray *const triggerpatches) const
ClassDef(AliAnalysisTaskEventSelectionRef, 1)
void ProcessOfflinePatch(const char *triggerclass, const AliEmcalTriggerPatchInfo *patch, bool isOfflineSelected)
void SetOfflineEnergyThreshold(EmcalTriggerClass trgcls, double threshold)