AliPhysics  ff1d528 (ff1d528)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliAnalysisTaskChargedParticlesRef.h
Go to the documentation of this file.
1 #ifndef ALIANALYSISTASKCHARGEDPARTICLESREF_H
2 #define ALIANALYSISTASKCHARGEDPARTICLESREF_H
3 /* Copyright(c) 1998-2015, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice */
5 
7 #include "AliCutValueRange.h"
8 #include <vector>
9 #include <TCustomBinning.h>
10 #include <TString.h>
11 
12 class THistManager;
14 
15 namespace EMCalTriggerPtAnalysis {
16 
30 public:
31 
41  kpPb = 1,
42  kPbp = -1
43  };
44 
49 
54  AliAnalysisTaskChargedParticlesRef(const char *name);
55 
60 
69  void EnableSumw2(Bool_t doEnable) { fEnableSumw2 = doEnable; }
70 
79  void InitializeTrackCuts(TString cutname, bool isAOD);
80 
86  void SetRapidityShift(Double_t yshift) { fYshift = yshift; }
87 
92  void SetBeamDirection(BeamDirection_t beamdir) { fEtaSign = static_cast<Double_t>(beamdir); }
93 
98  void SetPlotPID(Bool_t plotPID) { fStudyPID = plotPID; }
99 
107 
113  void SetEtaLabCut(double etamin, double etamax) { fEtaLabCut.SetLimits(etamin, etamax); }
114 
120  void SetEtaCMSCut(double etamin, double etamax) { fEtaCmsCut.SetLimits(etamin, etamax); }
121 
127  void SetTrackPhiCut(double phimin, double phimax) { fPhiCut.SetLimits(phimin, phimax); }
128 
133  void SetMinPtTracks(Double_t minpt) { fMinPt = minpt; }
134 
139  void SetStudyEMCALgeo(Bool_t doStudy) { fStudyEMCALgeo = doStudy; }
140 
147 
154 
155 protected:
156 
160  virtual void CreateUserHistos();
161 
169  virtual void CreateUserObjects();
170 
179  virtual bool Run();
180 
186  virtual void UserFillHistosBeforeEventSelection();
187 
193  virtual void UserFillHistosAfterEventSelection();
194 
205  void FillTrackHistos(const TString &eventclass, Bool_t posCharge, Double_t pt, Double_t eta, Double_t etacent, Double_t phi, Bool_t inEmcal);
206 
212  void FillPIDHistos(const TString &eventclass, const AliVTrack &track);
213 
215 
218 
223 
227 
228 private:
229 
234  class PtBinning : public TCustomBinning{
235  public:
236 
240  PtBinning();
241 
245  virtual ~PtBinning() {}
246  };
247 
250 
254 };
255 
256 } /* namespace EMCalTriggerPtAnalysis */
257 
258 #endif /* ALIANALYSISTASKCHARGEDPARTICLESREF_H */
Interface for virtual track selection.
BeamDirection_t
Direction of the beams in an asymmetric collision system.
virtual bool Run()
Simple task testing particle spectra in triggered events.
double Double_t
Definition: External.C:58
Double_t fEtaSign
Sign of the eta distribution (swaps when beam directions swap): p-Pb: +1, Pb-p: -1.
static AliAnalysisTaskChargedParticlesRef * AddTaskChargedParticlesRef(const TString &suffix)
Pre-configure task so that it can be used in subwagons.
void SetTrackPhiCut(double phimin, double phimax)
Define cut on used to select tracks.
void EnableSumw2(Bool_t doEnable)
Enable Sumw2 when creating the histograms.
void SetEtaLabCut(double etamin, double etamax)
Define cut on used to select tracks.
virtual void UserFillHistosBeforeEventSelection()
Implementation of framework function UserFillHistosBeforeEventSelection.
void SetPlotPID(Bool_t plotPID)
Enable PID-related plots (THnSparses, might be big)
const Double_t etamin
Bool_t fStudyEMCALgeo
Add histograms for tracks pointing to the EMCAL acceptance.
void SetRapidityShift(Double_t yshift)
Define rapidity shift applied to convert to .
static AliAnalysisTaskChargedParticlesRef * AddTaskChargedParticlesRefDefault(const TString &cutname="standard")
Fully configure task, not intended for subwagons. Using a default cut configuration.
void FillTrackHistos(const TString &eventclass, Bool_t posCharge, Double_t pt, Double_t eta, Double_t etacent, Double_t phi, Bool_t inEmcal)
Fill track (kinematic) histograms.
void SetStudyEMCALgeo(Bool_t doStudy)
Add histograms for tracks pointing to EMCAL supermodules.
void SetEMCALTrackSelection(AliEmcalTrackSelection *sel)
Set the virtual track selection.
Helper class creating user defined custom binning.
void SetMinPtTracks(Double_t minpt)
Set minimum used to select track candidate.
void SetBeamDirection(BeamDirection_t beamdir)
Specify directions of the incoming beams (p-Pb or Pb-p)
void SetEtaCMSCut(double etamin, double etamax)
Define cut on used to select tracks.
void FillPIDHistos(const TString &eventclass, const AliVTrack &track)
Fill PID-related histograms.
const Double_t etamax
Container class for histograms.
Definition: THistManager.h:99
void InitializeTrackCuts(TString cutname, bool isAOD)
Set the track selection.
AliAnalysisTaskChargedParticlesRef & operator=(const AliAnalysisTaskChargedParticlesRef &)
bool Bool_t
Definition: External.C:53
virtual void UserFillHistosAfterEventSelection()
Implementation of framework function UserFillHistosAfterEventSelection.
const Double_t phimin