AliPhysics  vAN-20150924 (e816f45)
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Macros
AliAnalysisTaskTracksInJet.h
Go to the documentation of this file.
1 #ifndef ALIANALYSISTASKTRACKSINJET_H
2 #define ALIANALYSISTASKTRACKSINJET_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 TTree;
9 class AliAnalysisUtils;
10 class AliAODTrack;
11 class AliESDtrack;
12 class AliESDtrackCuts;
13 class AliGenPythiaEventHeader;
14 class AliMCEvent;
15 class AliVParticle;
16 
17 namespace EMCalTriggerPtAnalysis {
18 
19 class AliEMCalHistoContainer;
20 
25 class AliAnalysisTaskTracksInJet: public AliAnalysisTaskSE {
26 public:
28  AliAnalysisTaskTracksInJet(const char *taskname);
30 
31  virtual void UserCreateOutputObjects();
32  virtual Bool_t UserNotify();
33  virtual void UserExec(Option_t *);
34  virtual void Terminate(Option_t *) {}
35 
36  void SetMC(Bool_t isMC) { fIsMC = isMC; }
37  void SetOutlierCut(double fracpthard = 1.2) { fFracPtHard = fracpthard; }
38 
39 
40 protected:
41  struct JetData{
42  Double_t fPvecJet[3];
43  Double_t fPvecLead[3];
44  Double_t fPvecSubLead[3];
45  Int_t fIsData;
46 
48  {
49  Reset();
50  }
51 
52  void Reset(){
53  memset(fPvecJet, 0, sizeof(Double_t) * 3);
54  memset(fPvecLead, 0, sizeof(Double_t) * 3);
55  memset(fPvecSubLead, 0, sizeof(Double_t) * 3);
56  fIsData = 0;
57  }
58  };
59 
60  Bool_t PythiaInfoFromFile(const char* currFile, Float_t &fXsec, Float_t &fTrials, Int_t &pthard) const;
61  Bool_t IsPhysicalPrimary(const AliVParticle* const part, AliMCEvent* const mcevent) const;
62  AliGenPythiaEventHeader *GetPythiaHeader() const;
63  Bool_t IsOutlier(AliGenPythiaEventHeader * const header) const;
64  Bool_t TrackSelectionESD(AliESDtrack* track) const;
65  Bool_t TrackSelectionAOD(AliAODTrack* track) const;
66 
68  TTree *fJetTree;
69  AliAnalysisUtils *fAnalysisUtils;
70  AliESDtrackCuts *fTrackCuts;
71  AliESDtrackCuts *fHybridCuts;
72 
73  Bool_t fIsMC;
74  Double_t fFracPtHard;
75 
76  // Histos for MC
78 
79 private:
80 
83 
85 };
86 
87 } /* namespace EMCalTriggerPtAnalysis */
88 
89 #endif /* ALIANALYSISTASKTRACKSINJET_H */
Bool_t TrackSelectionAOD(AliAODTrack *track) const
Bool_t PythiaInfoFromFile(const char *currFile, Float_t &fXsec, Float_t &fTrials, Int_t &pthard) const
AliAnalysisTaskTracksInJet & operator=(const AliAnalysisTaskTracksInJet &ref)
Bool_t IsPhysicalPrimary(const AliVParticle *const part, AliMCEvent *const mcevent) const
Bool_t IsOutlier(AliGenPythiaEventHeader *const header) const
Container class for histograms for the high- charged particle analysis.
Bool_t TrackSelectionESD(AliESDtrack *track) const
Stores p-vector of jet, leading track and subleading track.
Bool_t isMC
AliGenPythiaEventHeader * GetPythiaHeader() const