updated task to make it possible to run on the grid
[u/mrichter/AliRoot.git] / PWGGA / GammaConv / AliAnalysisTaskConversionQA.h
CommitLineData
2bb2434e 1#ifndef AliAnalysisConversionQA_cxx
2#define AliAnalysisConversionQA_cxx
3
4#include "AliAnalysisTaskSE.h"
5#include "AliConversionPhotonBase.h"
6#include "TH1.h"
7#include "TH2.h"
8#include "TTreeStream.h"
9#include "AliLog.h"
10#include <vector>
11#include "AliV0ReaderV1.h"
12#include "AliConversionCuts.h"
13#include "TList.h"
14#include "AliStack.h"
15#include "TClonesArray.h"
16
17
18using namespace std;
19
20
21class AliAnalysisTaskConversionQA : public AliAnalysisTaskSE{
22
a280ac15 23 public:
2bb2434e 24
a280ac15 25 AliAnalysisTaskConversionQA(const char *name);
26 virtual ~AliAnalysisTaskConversionQA();
2bb2434e 27
a280ac15 28 virtual void UserCreateOutputObjects();
29 virtual void UserExec(Option_t *option);
30 virtual void Terminate(Option_t *);
2bb2434e 31
a280ac15 32 void SetV0Reader(AliV0ReaderV1 *v0Reader){fV0Reader=v0Reader;}
33 void SetConversionCuts(AliConversionCuts* conversionCuts,Bool_t IsHeavyIon ){
34 fConversionCuts=conversionCuts;
35 fIsHeavyIon = IsHeavyIon;
36 }
37 void FillType(Bool_t fillTree, Bool_t fillHistorams){
38 ffillTree = fillTree;
39 ffillHistograms = fillHistorams;
40 }
2bb2434e 41
a280ac15 42 private:
43
44 AliAnalysisTaskConversionQA(const AliAnalysisTaskConversionQA&); // Prevent copy-construction
45 AliAnalysisTaskConversionQA &operator=(const AliAnalysisTaskConversionQA&); // Prevent assignment
2bb2434e 46
a280ac15 47 void ProcessQATree(AliAODConversionPhoton *gamma);
48 void ProcessQA(AliAODConversionPhoton *gamma);
49 void ProcessTrueQA(AliAODConversionPhoton *TruePhotonCandidate, AliESDtrack *elec, AliESDtrack *posi);
50 Bool_t IsTruePhoton(AliAODConversionPhoton *TruePhotonCandidate);
51 void CountESDTracks();
e5b6e8a6 52
a280ac15 53 AliV0ReaderV1 *fV0Reader;
54 TClonesArray *fConversionGammas;
55 AliConversionCuts *fConversionCuts; // Cuts used by the V0Reader
56 AliVEvent *fInputEvent;
57 Int_t fNumberOfESDTracks;
58 AliMCEvent *fMCEvent;
59 AliStack *fMCStack;
60 TTreeSRedirector *fStreamQA;
61 Bool_t fIsHeavyIon;
62 Bool_t ffillTree;
63 Bool_t ffillHistograms;
64 TList *fOutputList;
65 TList *fESDList;
66 TH1F *hVertexZ;
67 TH1I *hNGoodESDTracks;
68 TH1I *hNV0Tracks;
69 TH1I *hNContributorsVertex;
70 TH2F *hITSClusterPhi;
71 TH1F *hGammaPt;
72 TH1F *hGammaPhi;
73 TH1F *hGammaEta;
74 TH1F *hGammaChi2perNDF;
75 TH1F *hGammaPsiPair;
76 TH1F *hGammaQt;
77 TH1F *hGammaCosinePointingAngle;
78 TH2F *hGammaXY;
79 TH2F *hGammaZR;
80 TH2F *hElecPt;
81 TH2F *hElecEta;
82 TH2F *hElecPhi;
83 TH1F *hElecNfindableClsTPC;
84 TH1F *hPosiNfindableClsTPC;
85 TList *fTrueList;
86 TH2F *hTrueResoulutionR;
87 TH2F *hTrueResoulutionZ;
88 TH2F *hTrueResoulutionPhi;
89 TH1F *hTrueGammaPt;
90 TH1F *hTrueGammaPhi;
91 TH1F *hTrueGammaEta;
92 TH1F *hTrueGammaMass;
93 TH1F *hTrueGammaChi2perNDF;
94 TH1F *hTrueGammaPsiPair;
95 TH1F *hTrueGammaQt;
96 TH1F *hTrueGammaCosinePointingAngle;
97 TH2F *hTrueGammaXY;
98 TH2F *hTrueGammaZR;
99 TH2F *hTrueElecPt;
100 TH2F *hTrueElecEta;
101 TH2F *hTrueElecPhi;
102 TH1F *hTrueElecNfindableClsTPC;
103 TH1F *hTruePosiNfindableClsTPC;
e5b6e8a6 104
a280ac15 105 ClassDef(AliAnalysisTaskConversionQA, 1);
2bb2434e 106};
107
108#endif
109