]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGGA/GammaConv/AliAnalysisTaskConversionQA.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGGA / GammaConv / AliAnalysisTaskConversionQA.h
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 "AliConversionPhotonCuts.h"
13 #include "TList.h"
14 #include "AliStack.h"
15 #include "TClonesArray.h"
16
17
18 using namespace std;
19
20
21 class AliAnalysisTaskConversionQA : public AliAnalysisTaskSE{
22
23         public:
24         
25                 AliAnalysisTaskConversionQA();
26                 AliAnalysisTaskConversionQA(const char *name);
27                 virtual ~AliAnalysisTaskConversionQA();
28
29                 virtual void   UserCreateOutputObjects();
30                 virtual Bool_t Notify();
31                 virtual void   UserExec(Option_t *option);
32                 virtual void   Terminate(Option_t *);
33
34                 void SetV0Reader(AliV0ReaderV1 *v0Reader){fV0Reader=v0Reader;}
35                 void SetConversionCuts(AliConversionPhotonCuts* conversionCuts,Bool_t IsHeavyIon ){
36                         fConversionCuts=conversionCuts;
37                         fIsHeavyIon = IsHeavyIon;
38                 }
39                 void SetEventCuts(AliConvEventCuts* conversionCuts,Bool_t IsHeavyIon ){
40                         fEventCuts=conversionCuts;
41                         fIsHeavyIon = IsHeavyIon;
42                 }
43
44                 void FillType(Bool_t fillTree, Bool_t fillHistorams){
45                         ffillTree = fillTree;
46                         ffillHistograms = fillHistorams;
47                 }
48                 void SetIsMC(Bool_t isMC){fIsMC = isMC;}
49         
50         private:
51                         
52                 AliAnalysisTaskConversionQA(const AliAnalysisTaskConversionQA&); // Prevent copy-construction
53                 AliAnalysisTaskConversionQA &operator=(const AliAnalysisTaskConversionQA&); // Prevent assignment
54
55                 void ProcessQATree(AliAODConversionPhoton *gamma);
56                 void ProcessQA(AliAODConversionPhoton *gamma);
57                 void RelabelAODPhotonCandidates(Bool_t mode);
58                 void ProcessTrueQAESD(AliAODConversionPhoton *TruePhotonCandidate, AliESDtrack *elec, AliESDtrack *posi);
59                 void ProcessTrueQAAOD(AliAODConversionPhoton *TruePhotonCandidate, AliAODTrack *elec, AliAODTrack *posi);
60                 UInt_t IsTruePhotonESD(AliAODConversionPhoton *TruePhotonCandidate);
61                 UInt_t IsTruePhotonAOD(AliAODConversionPhoton *TruePhotonCandidate);
62                 void CountTracks();
63                 void SetLogBinningXTH2(TH2* histoRebin);
64                         
65                 AliV0ReaderV1                   *fV0Reader;                                     //
66                 TClonesArray                    *fConversionGammas;                             //
67                 AliConversionPhotonCuts         *fConversionCuts;                               // Cuts used by the V0Reader
68                 AliConvEventCuts                *fEventCuts;                                    // Cuts used by the V0Reader
69                 AliVEvent                               *fInputEvent;                                   //
70                 Int_t                                   fNumberOfESDTracks;                             //
71                 AliMCEvent                              *fMCEvent;                                              //
72                 AliStack                                *fMCStack;                                              //
73                 TTree                                   *fTreeQA;                                               //
74                 Bool_t                                  fIsHeavyIon;                                    //
75                 Bool_t                                  ffillTree;                                              //
76                 Bool_t                                  ffillHistograms;                                //
77                 TList                                   *fOutputList;                                   //
78                 TList                                   *fTreeList;                                             //
79                 TList                                   *fESDList;                                              //
80                 TH1F                                    *hVertexZ;                                              //
81                 TH1I                                    *hNGoodESDTracks;                               //
82                 TH1I                                    *hNV0Tracks;                                    //
83                 TH1I                                    *hNContributorsVertex;                  //
84                 TH2F                                    *hITSClusterPhi;                                //
85                 TH1F                                    *hGammaPt;                                              //
86                 TH1F                                    *hGammaPhi;                                             //
87                 TH1F                                    *hGammaPhi_Pos;                                 //
88                 TH1F                                    *hGammaPhi_Neg;                                 //
89                 TH1F                                    *hGammaEta;                                             //
90                 TH1F                                    *hGammaChi2perNDF;                              //
91                 TH1F                                    *hGammaPsiPair;                                 //
92                 TH2F                                    *hGammaArmenteros;                              //
93                 TH1F                                    *hGammaCosinePointingAngle;             //
94                 TH1F                                    *hGammaInvMass;                                 //
95                 TH2F                                    *hElecPt;                                               //
96                 TH2F                                    *hElecEta;                                              //
97                 TH2F                                    *hElecPhi;                                              //
98                 TH1F                                    *hElecNfindableClsTPC;                  //
99                 TH1F                                    *hPosiNfindableClsTPC;                  //
100                 TH1F                                    *hElecClsTPC;                                   //
101                 TH1F                                    *hPosiClsTPC;                                   //
102                 TH2F                                    *hElectrondEdxP;                                //
103                 TH2F                                            *hElectronITSdEdxP;                             //
104                 TH2F                                            *hElectronTOFP;                                 //
105                 TH2F                                    *hElectronNSigmadEdxP;                  //
106                 TH2F                                    *hElectronNSigmadEdxEta;                //
107                 TH2F                                    *hElectronNSigmaPiondEdxP;              //
108                 TH2F                                    *hElectronNSigmaITSP;                   //
109                 TH2F                                    *hElectronNSigmaTOFP;                   //
110                 TH2F                                    *hPositrondEdxP;                                //
111                 TH2F                                    *hPositronITSdEdxP;                             //
112                 TH2F                                    *hPositronTOFP;                                 //
113                 TH2F                                    *hPositronNSigmadEdxP;                  //
114                 TH2F                                    *hPositronNSigmadEdxEta;                //
115                 TH2F                                    *hPositronNSigmaPiondEdxP;              //
116                 TH2F                                    *hPositronNSigmaITSP;                   //
117                 TH2F                                    *hPositronNSigmaTOFP;                   //
118                 //    TH2F                                              *hElecAsymP;                                    //
119                 //    TH2F                                              *hGammaXY;                                              //
120                 //    TH2F                                              *hGammaZR;                                      //
121                 //    TList                                     *fTrueList;                                             //
122                 //    TH2F                                              *hTrueResolutionR;                              //
123                 //    TH2F                                              *hTrueResolutionZ;                              //
124                 //    TH2F                                              *hTrueResolutionPhi;                    //
125                 //    TH1F                                              *hTrueGammaPt;                                  //
126                 //    TH1F                                              *hTrueGammaPhi;                                 //
127                 //    TH1F                                              *hTrueGammaEta;                                 //
128                 //    TH1F                                              *hTrueGammaMass;                                //
129                 //    TH1F                                              *hTrueGammaChi2perNDF;                  //
130                 //    TH1F                                              *hTrueGammaPsiPair;                             //
131                 //    TH1F                                              *hTrueGammaQt;                                  //
132                 //    TH1F                                              *hTrueGammaCosinePointingAngle; //
133                 //    TH2F                                              *hTrueGammaXY;                                  //
134                 //    TH2F                                              *hTrueGammaZR;                                  //
135                 //    TH2F                                              *hTrueElecPt;                                   //
136                 //    TH2F                                              *hTrueElecEta;                                  //
137                 //    TH2F                                              *hTrueElecPhi;                                  //
138                 //    TH1F                                              *hTrueElecNfindableClsTPC;              //
139                 //    TH1F                                              *hTruePosiNfindableClsTPC;              //
140                 //    TH2F                                              *hTrueElecAsymP;                                //
141                 Float_t                                         fGammaPt;                                               //
142                 Float_t                                         fGammaTheta;                                    //
143                 Float_t                                         fGammaChi2NDF;                                  //
144                 TVectorF                                fGammaPhotonProp;                               //
145                 TVectorF                                fGammaConvCoord;                                //
146                 TVectorF                                fDaughterProp;                                  //
147                 UInt_t                                  fKind;                                                  //
148                 Bool_t                                  fIsMC;                                                  //
149                 Int_t                                   fnGammaCandidates;                              //
150                 Int_t                                   *fMCStackPos;                                   //[fnGammaCandidates]
151                 Int_t                                   *fMCStackNeg;                                   //[fnGammaCandidates]
152                 
153                 ClassDef(AliAnalysisTaskConversionQA, 5);
154 };
155
156 #endif
157