1 #ifndef AliAnalysisConversionQA_cxx
2 #define AliAnalysisConversionQA_cxx
4 #include "AliAnalysisTaskSE.h"
5 #include "AliConversionPhotonBase.h"
8 #include "TTreeStream.h"
11 #include "AliV0ReaderV1.h"
12 #include "AliConversionCuts.h"
15 #include "TClonesArray.h"
21 class AliAnalysisTaskConversionQA : public AliAnalysisTaskSE{
25 AliAnalysisTaskConversionQA();
26 AliAnalysisTaskConversionQA(const char *name);
27 virtual ~AliAnalysisTaskConversionQA();
29 virtual void UserCreateOutputObjects();
30 virtual Bool_t Notify();
31 virtual void UserExec(Option_t *option);
32 virtual void Terminate(Option_t *);
34 void SetV0Reader(AliV0ReaderV1 *v0Reader){fV0Reader=v0Reader;}
35 void SetConversionCuts(AliConversionCuts* conversionCuts,Bool_t IsHeavyIon ){
36 fConversionCuts=conversionCuts;
37 fIsHeavyIon = IsHeavyIon;
39 void FillType(Bool_t fillTree, Bool_t fillHistorams){
41 ffillHistograms = fillHistorams;
43 void SetIsMC(Bool_t isMC){fIsMC = isMC;}
47 AliAnalysisTaskConversionQA(const AliAnalysisTaskConversionQA&); // Prevent copy-construction
48 AliAnalysisTaskConversionQA &operator=(const AliAnalysisTaskConversionQA&); // Prevent assignment
50 void ProcessQATree(AliAODConversionPhoton *gamma);
51 void ProcessQA(AliAODConversionPhoton *gamma);
52 void RelabelAODPhotonCandidates(Bool_t mode);
53 void ProcessTrueQAESD(AliAODConversionPhoton *TruePhotonCandidate, AliESDtrack *elec, AliESDtrack *posi);
54 void ProcessTrueQAAOD(AliAODConversionPhoton *TruePhotonCandidate, AliAODTrack *elec, AliAODTrack *posi);
55 UInt_t IsTruePhotonESD(AliAODConversionPhoton *TruePhotonCandidate);
56 UInt_t IsTruePhotonAOD(AliAODConversionPhoton *TruePhotonCandidate);
58 void SetLogBinningXTH2(TH2* histoRebin);
60 AliV0ReaderV1 *fV0Reader;
61 TClonesArray *fConversionGammas;
62 AliConversionCuts *fConversionCuts; // Cuts used by the V0Reader
63 AliVEvent *fInputEvent;
64 Int_t fNumberOfESDTracks;
70 Bool_t ffillHistograms;
75 TH1I *hNGoodESDTracks;
77 TH1I *hNContributorsVertex;
82 TH1F *hGammaChi2perNDF;
84 TH2F *hGammaArmenteros;
85 TH1F *hGammaCosinePointingAngle;
90 TH1F *hElecNfindableClsTPC;
91 TH1F *hPosiNfindableClsTPC;
95 TH2F* hElectronITSdEdxP;
97 TH2F* hElectronNSigmadEdxP;
98 TH2F* hElectronNSigmadEdxEta;
99 TH2F* hElectronNSigmaPiondEdxP;
100 TH2F* hElectronNSigmaITSP;
101 TH2F* hElectronNSigmaTOFP;
102 TH2F* hPositrondEdxP;
103 TH2F* hPositronITSdEdxP;
105 TH2F* hPositronNSigmadEdxP;
106 TH2F* hPositronNSigmadEdxEta;
107 TH2F* hPositronNSigmaPiondEdxP;
108 TH2F* hPositronNSigmaITSP;
109 TH2F* hPositronNSigmaTOFP;
114 // TH2F *hTrueResolutionR;
115 // TH2F *hTrueResolutionZ;
116 // TH2F *hTrueResolutionPhi;
117 // TH1F *hTrueGammaPt;
118 // TH1F *hTrueGammaPhi;
119 // TH1F *hTrueGammaEta;
120 // TH1F *hTrueGammaMass;
121 // TH1F *hTrueGammaChi2perNDF;
122 // TH1F *hTrueGammaPsiPair;
123 // TH1F *hTrueGammaQt;
124 // TH1F *hTrueGammaCosinePointingAngle;
125 // TH2F *hTrueGammaXY;
126 // TH2F *hTrueGammaZR;
127 // TH2F *hTrueElecPt;
128 // TH2F *hTrueElecEta;
129 // TH2F *hTrueElecPhi;
130 // TH1F *hTrueElecNfindableClsTPC;
131 // TH1F *hTruePosiNfindableClsTPC;
132 // TH2F *hTrueElecAsymP;
135 Float_t fGammaChi2NDF;
136 TVectorF fGammaPhotonProp;
137 TVectorF fGammaConvCoord;
138 TVectorF fDaughterProp;
141 Int_t fnGammaCandidates;
142 Int_t *fMCStackPos; //[fnGammaCandidates]
143 Int_t *fMCStackNeg; //[fnGammaCandidates]
144 ClassDef(AliAnalysisTaskConversionQA, 4);