AliPhysics  608b256 (608b256)
AliAnalysisTaskGammaTriggerQA.h
Go to the documentation of this file.
1 #ifndef ALIANLYSISTASKGAMMATRIGGERQA_cxx
2 #define ALIANLYSISTASKGAMMATRIGGERQA_cxx
3 
4 #include "AliAnalysisTaskSE.h"
5 #include "AliESDtrack.h"
6 #include "AliV0ReaderV1.h"
10 #include "AliCaloPhotonCuts.h"
11 #include "AliConvEventCuts.h"
13 #include "AliConversionMesonCuts.h"
14 #include "AliAnalysisManager.h"
15 #include "TProfile2D.h"
16 #include "TH3.h"
17 #include "TH3F.h"
18 #include <vector>
19 #include <map>
20 
22  public:
23 
25  AliAnalysisTaskGammaTriggerQA(const char *name);
27 
28  virtual void UserCreateOutputObjects();
29  virtual Bool_t Notify();
30  virtual void UserExec(Option_t *);
31  virtual void Terminate(const Option_t*);
32  void InitBack();
33 
34  void SetV0ReaderName(TString name){fV0ReaderName=name; return;}
35  void SetIsHeavyIon(Int_t flag){
36  fIsHeavyIon = flag;
37  }
38 
39  // base functions for selecting photon and meson candidates in reconstructed data
40  void ProcessClusters();
41 
42  // MC functions
44 
45  // switches for additional analysis streams or outputs
46  void SetLightOutput(Bool_t flag){fDoLightOutput = flag;}
47  void SetDetailedQAFlag (Int_t flag) {fQADetailed = flag;}
48 
49  // Setting the cut lists for the conversion photons
50  void SetEventCutList(Int_t nCuts, TList *CutArray){
51  fnCuts = nCuts;
52  fEventCutArray = CutArray;
53  }
54 
55  // Setting the cut lists for the calo photons
56  void SetCaloCutList(Int_t nCuts, TList *CutArray){
57  fnCuts = nCuts;
58  fClusterCutArray = CutArray;
59  }
60 
61  // Function to set correction task setting
63 
64  protected:
65  AliV0ReaderV1* fV0Reader; // basic photon Selection Task
68  AliVEvent* fInputEvent; // current event
69  AliMCEvent* fMCEvent; // corresponding MC event
70  TList** fCutFolder; // Array of lists for containers belonging to cut
71  TList** fESDList; // Array of lists with histograms with reconstructed properties
72  TList* fOutputContainer; // Output container
74  TList* fEventCutArray; // List with Event Cuts
75  AliConvEventCuts* fEventCuts; // EventCutObject
76  TList* fClusterCutArray; // List with Cluster Cuts
77  AliCaloPhotonCuts* fCaloPhotonCuts; // CaloPhotonCutObject
78 
79  // histograms for rec photon clusters
82 
83  // event histograms
84  TH1F** fHistoNEvents;
87  TH1F** fHistoCent;
88  TH1F** fHistoVertexZ;
93  TH1F** fHistoNV0Tracks;
96  TProfile** fProfileEtaShift;
99 
100  // tree
101  TList** fTreeList; // array for lists with Tree
103  Float_t fCent; // cent
104  Short_t fT0Trigg; // T0 trigg info
105  UInt_t fV0Mult; // offline V0 multiplicity
106  UInt_t fV0Trigg; // online V0 multiplicity
107  UInt_t fTPCMult; // TPC multiplicity
108  UInt_t fSPDHit; // SPD hit multiplicity
109  UInt_t fSPDTracklet; // SPD tracklet multiplicity
110  Float_t fZVertex; // Z vertex position
111 
112  // additional variables
113  Double_t fEventPlaneAngle; // EventPlaneAngle
114  TRandom3 fRandom; // random
115  Int_t fnCuts; // number of cuts to be analysed in parallel
116  Int_t fiCut; // current cut
117  Int_t fIsHeavyIon; // switch for pp = 0, PbPb = 1, pPb = 2
118  Bool_t fDoLightOutput; // switch for running light output, kFALSE -> normal mode, kTRUE -> light mode
119  Int_t fQADetailed; // switch for detailed QA
120  Int_t fIsMC; // flag for MC information
121  Double_t fWeightJetJetMC; // weight for Jet-Jet MC
122  Int_t fNCurrentClusterBasic; // current number of cluster without minE
123 
124  private:
125  AliAnalysisTaskGammaTriggerQA(const AliAnalysisTaskGammaTriggerQA&); // Prevent copy-construction
127 
128  ClassDef(AliAnalysisTaskGammaTriggerQA, 3);
129 };
130 
131 #endif
TH1F ** fHistoNEventsWOWeight
array of histos with event information
TList ** fTreeList
array of histos with ntrials for jetjet
double Double_t
Definition: External.C:58
TH1F ** fHistoNV0Trigger
array of histos with V0 counts
Definition: External.C:236
TH1F ** fHistoJetJetNTrials
array of profiles with xsection for jetjet
TH1F ** fHistoVertexZ
array of histos with centrality slices
AliAnalysisTaskGammaTriggerQA & operator=(const AliAnalysisTaskGammaTriggerQA &)
TH1F ** fHistoCent
array of histos with number of good tracks (2010 Standard track cuts)
int Int_t
Definition: External.C:63
Class handling all kinds of selection cuts for Gamma Calo analysis.
TH1F ** fHistoNGoodESDTracks
array of histos with event information without event weights
TH1F ** fHistoNEvents
array of histos with cluster, E
unsigned int UInt_t
Definition: External.C:33
float Float_t
Definition: External.C:68
TH2F ** fHistoNV0TriggerTracks
array of histos with V0 trigger
TH1F ** fHistoClusGammaE
array of histos with cluster, pt
TH2F ** fHistoSPDClusterTrackletBackground
array of histos with number of good tracks vs gamma candidates
TProfile ** fProfileJetJetXSection
array of profiles with eta shift
TProfile ** fProfileEtaShift
array of histos with V0 trigger vs tracks
short Short_t
Definition: External.C:23
void SetCaloCutList(Int_t nCuts, TList *CutArray)
Bool_t isMC
Float_t fCent
Array of lists with tree.
TH1F ** fHistoNGammaCandidatesBasic
array of histos with number of gamma candidates per event
void SetEventCutList(Int_t nCuts, TList *CutArray)
TH2F ** fHistoNGoodESDTracksVsNGammaCandidates
array of histos with number of gamma candidates per event for basic cluster cut
virtual void Terminate(const Option_t *)
Class handling all kinds of selection cuts for Gamma Conversion analysis.
const char Option_t
Definition: External.C:48
bool Bool_t
Definition: External.C:53
TH1F ** fHistoNV0Tracks
array of histos with SPD tracklets vs SPD clusters for background rejection
TList * fEventCutArray
current list of cluster candidates
TH1F ** fHistoNGammaCandidates
array of histos with vertex z distribution for selected events