AliPhysics  e59a9ba (e59a9ba)
 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 
6 #include "AliAnalysisTaskSE.h"
7 #include <string>
8 
9 class TArrayD;
10 class THistManager;
11 class TString;
12 class AliAnalysisUtils;
14 class AliEMCALGeometry;
15 
16 namespace EMCalTriggerPtAnalysis {
17 
18 class AliEmcalTriggerOfflineSelection;
19 
29 class AliAnalysisTaskChargedParticlesRef : public AliAnalysisTaskSE {
30 public:
32  kpPb = 1,
33  kPbp = -1
34  };
36  AliAnalysisTaskChargedParticlesRef(const char *name);
38 
40  void UserExec(Option_t *);
41  void Terminate(Option_t *) {}
42 
43  void SetRapidityShift(Double_t yshift) { fYshift = yshift; }
44  void SetBeamDirection(BeamDirection_t beamdir) { fEtaSign = static_cast<Double_t>(beamdir); }
45  void UseTriggerPatches(Bool_t doUse) { fTriggerStringFromPatches = doUse; }
46 
48  void InitializeTrackCuts(TString cutname, bool isAOD);
50  void SetAnalysisUtil(AliAnalysisUtils *util) { fAnalysisUtil = util; }
51  void SetEtaLabCut(double etamin, double etamax) { fEtaLabCut[0] = etamin; fEtaLabCut[1] = etamax; }
52  void SetEtaCMSCut(double etamin, double etamax) { fEtaCmsCut[0] = etamin; fEtaCmsCut[1] = etamax; }
53 
54 protected:
55  void CreateOldPtBinning(TArrayD &binning) const;
56  void CreateNewPtBinning(TArrayD &binning) const;
57 
58  void FillEventCounterHists(const std::string &triggerclass, double vtxz, bool isSelected);
59  void FillTrackHistos(const std::string &eventclass, Double_t pt, Double_t eta, Double_t etacent, Double_t phi, Bool_t etacut, Bool_t inEmcal, Bool_t hasTRD);
60  void FillPIDHistos(const std::string &eventclass, const AliVTrack &track);
61  TString GetFiredTriggerClassesFromPatches(const TClonesArray* triggerpatches) const;
62 
64  AliAnalysisUtils *fAnalysisUtil;
67  AliEMCALGeometry *fGeometry;
68 
70  Double_t fYshift;
71  Double_t fEtaSign;
72 
73  Double_t fEtaLabCut[2];
74  Double_t fEtaCmsCut[2];
75 
76 private:
79 
83 };
84 
85 } /* namespace EMCalTriggerPtAnalysis */
86 
87 #endif /* ALIANALYSISTASKCHARGEDPARTICLESREF_H */
Interface for virtual track selection.
Double_t fEtaSign
Sign of the eta distribution (swaps when beam directions swap): p-Pb: +1, Pb-p: -1.
AliEmcalTriggerOfflineSelection * fTriggerSelection
Offline trigger selection.
AliEmcalTrackSelection * fTrackCuts
Standard track selection.
TString GetFiredTriggerClassesFromPatches(const TClonesArray *triggerpatches) const
const Double_t etamin
Bool_t fTriggerStringFromPatches
Do rebuild the trigger string from trigger patches.
void FillPIDHistos(const std::string &eventclass, const AliVTrack &track)
void FillEventCounterHists(const std::string &triggerclass, double vtxz, bool isSelected)
Double_t fEtaCmsCut[2]
Cut applied in Eta centre-of-mass frame.
const Double_t etamax
Container class for histograms for the high- charged particle analysis.
Definition: THistManager.h:43
AliAnalysisTaskChargedParticlesRef & operator=(const AliAnalysisTaskChargedParticlesRef &)
void FillTrackHistos(const std::string &eventclass, Double_t pt, Double_t eta, Double_t etacent, Double_t phi, Bool_t etacut, Bool_t inEmcal, Bool_t hasTRD)