AliPhysics  vAN-20150827 (3e81cbb)
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Macros
AliAnalysisTaskChargedParticlesRefMC.h
Go to the documentation of this file.
1 #ifndef ALIANALYSISTASKCHARGEDPARTICLESREFMC_H
2 #define ALIANALYSISTASKCHARGEDPARTICLESREFMC_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 <TString.h>
8 
9 class TArrayD;
10 class TClonesArray;
11 
12 class AliAnalysisUtils;
13 class AliAODTrack;
14 class AliESDtrack;
15 class AliESDtrackCuts;
16 class AliGenPythiaEventHeader;
17 class AliVParticle;
18 class AliMCEvent;
19 
20 namespace EMCalTriggerPtAnalysis {
21 
22 class AliEMCalHistoContainer;
27 class AliAnalysisTaskChargedParticlesRefMC: public AliAnalysisTaskSE {
28 public:
30  kpPb = 1,
31  kPbp = -1
32  };
34  AliAnalysisTaskChargedParticlesRefMC(const char *name);
36 
38  void UserExec(Option_t *);
39  Bool_t UserNotify();
40  void Terminate(Option_t *) {}
41 
42  void SetRapidityShift(Double_t yshift) { fYshift = yshift; }
43  void SetBeamDirection(BeamDirection_t beamdir) { fEtaSign = static_cast<Double_t>(beamdir); }
44 
45 protected:
46  void CreateOldPtBinning(TArrayD &binning) const;
47  void CreateNewPtBinning(TArrayD &binning) const;
48 
49  void FillTrackHistos(const char *eventclass, Double_t pt, Double_t eta, Double_t etacent, Double_t phi, Bool_t etacut, Bool_t inEmcal);
50 
51  Bool_t TrackSelectionESD(AliESDtrack *track);
52  Bool_t TrackSelectionAOD(AliAODTrack *track);
53  TString GetFiredTriggerClasses(const TClonesArray * triggerpatches);
54  Bool_t PythiaInfoFromFile(const char* currFile, Float_t &fXsec, Float_t &fTrials, Int_t &pthard) const;
55  AliGenPythiaEventHeader *GetPythiaHeader() const;
56  Bool_t IsPhysicalPrimary(const AliVParticle *const part, AliMCEvent *const mcevent);
57 
58 
59  AliESDtrackCuts *fTrackCuts;
60  AliAnalysisUtils *fAnalysisUtil;
62 
63  // Monte-Carlo specific information
64  Double_t fPtHard;
65  Int_t fPtHardBin;
66  Int_t fNTrials;
67  Float_t fXsection;
68 
69  Double_t fYshift;
70  Double_t fEtaSign;
71 
72 private:
75 
79 };
80 
81 } /* namespace EMCalTriggerPtAnalysis */
82 
83 #endif /* ALIANALYSISTASKCHARGEDPARTICLESREFMC_H */
Container class for histograms for the high- charged particle analysis.
AliAnalysisTaskChargedParticlesRefMC & operator=(const AliAnalysisTaskChargedParticlesRefMC &)
Bool_t IsPhysicalPrimary(const AliVParticle *const part, AliMCEvent *const mcevent)
Bool_t PythiaInfoFromFile(const char *currFile, Float_t &fXsec, Float_t &fTrials, Int_t &pthard) const
Unit test class for charged particle distributions (MC case)
void FillTrackHistos(const char *eventclass, Double_t pt, Double_t eta, Double_t etacent, Double_t phi, Bool_t etacut, Bool_t inEmcal)
Double_t fEtaSign
Sign of the eta distribution (swaps when beam directions swap): p-Pb: +1, Pb-p: -1.