]>
Commit | Line | Data |
---|---|---|
2bb2434e | 1 | #ifndef ALIANLYSISTASKGAMMACONVV1_cxx |
2 | #define ALIANLYSISTASKGAMMACONVV1_cxx | |
3 | ||
4 | #include "AliAnalysisTaskSE.h" | |
5 | #include "AliESDtrack.h" | |
6 | #include "AliV0ReaderV1.h" | |
7 | #include "AliKFConversionPhoton.h" | |
8 | #include "AliGammaConversionAODBGHandler.h" | |
e5b6e8a6 | 9 | #include "AliConversionAODBGHandlerRP.h" |
ca91a3e1 | 10 | #include "AliConversionMesonCuts.h" |
2bb2434e | 11 | #include "TH3.h" |
e5b6e8a6 | 12 | #include "TH3F.h" |
2bb2434e | 13 | |
14 | class AliAnalysisTaskGammaConvV1 : public AliAnalysisTaskSE { | |
ca91a3e1 | 15 | public: |
2bb2434e | 16 | |
ca91a3e1 | 17 | AliAnalysisTaskGammaConvV1(); |
18 | AliAnalysisTaskGammaConvV1(const char *name); | |
19 | virtual ~AliAnalysisTaskGammaConvV1(); | |
2bb2434e | 20 | |
ca91a3e1 | 21 | virtual void UserCreateOutputObjects(); |
22 | virtual void UserExec(Option_t *); | |
23 | virtual void Terminate(const Option_t*); | |
24 | void InitBack(); | |
2bb2434e | 25 | |
0a2b2b4b | 26 | void SetIsHeavyIon(Int_t flag){ |
27 | if (flag == 1 || flag ==2 ){ | |
28 | fIsHeavyIon = 1; | |
29 | } else { | |
30 | fIsHeavyIon = 0; | |
31 | } | |
32 | } | |
ca91a3e1 | 33 | void SetDoMesonAnalysis(Bool_t flag){fDoMesonAnalysis = flag;} |
0a2b2b4b | 34 | void SetDoMesonQA(Bool_t flag){fDoMesonQA = flag;} |
35 | void SetDoPhotonQA(Bool_t flag){fDoPhotonQA = flag;} | |
ca91a3e1 | 36 | void ProcessPhotonCandidates(); |
37 | void CalculatePi0Candidates(); | |
38 | void CalculateBackground(); | |
e5b6e8a6 | 39 | void CalculateBackgroundRP(); |
ca91a3e1 | 40 | void ProcessMCParticles(); |
41 | void ProcessTruePhotonCandidates( AliAODConversionPhoton* TruePhotonCandidate); | |
42 | void ProcessTrueMesonCandidates( AliAODConversionMother *Pi0Candidate, AliAODConversionPhoton *TrueGammaCandidate0, AliAODConversionPhoton *TrueGammaCandidate1); | |
43 | void RotateParticle(AliAODConversionPhoton *gamma); | |
44 | void SetConversionCutList(Int_t nCuts, TList *CutArray){ | |
45 | fnCuts = nCuts; | |
46 | fCutArray = CutArray; | |
47 | } | |
48 | void SetMesonCutList(Int_t nCuts, TList *CutArray){ | |
49 | fnCuts = nCuts; | |
50 | fMesonCutArray = CutArray; | |
51 | } | |
2bb2434e | 52 | |
ca91a3e1 | 53 | // BG HandlerSettings |
54 | void SetMoveParticleAccordingToVertex(Bool_t flag){fMoveParticleAccordingToVertex = flag;} | |
55 | void CountESDTracks(); | |
56 | void MoveParticleAccordingToVertex(AliAODConversionPhoton* particle,const AliGammaConversionAODBGHandler::GammaConversionVertex *vertex); | |
57 | void UpdateEventByEventData(); | |
58 | ||
59 | protected: | |
60 | AliV0ReaderV1 *fV0Reader; | |
61 | AliGammaConversionAODBGHandler **fBGHandler; | |
e5b6e8a6 | 62 | AliConversionAODBGHandlerRP **fBGHandlerRP; |
63 | AliVEvent *fInputEvent; | |
ca91a3e1 | 64 | AliMCEvent *fMCEvent; |
65 | AliStack *fMCStack; | |
66 | TList **fCutFolder; | |
67 | TList **fESDList; | |
68 | TList **fBackList; | |
69 | TList **fMotherList; | |
0a2b2b4b | 70 | TList **fMotherRapList; |
ca91a3e1 | 71 | TList **fTrueList; |
0a2b2b4b | 72 | TList **fTrueMotherRapList; |
ca91a3e1 | 73 | TList **fMCList; |
74 | TList **fHeaderNameList; | |
75 | TList *fOutputContainer; | |
76 | TClonesArray *fReaderGammas; | |
a280ac15 | 77 | TList *fGammaCandidates; |
ca91a3e1 | 78 | TList *fCutArray; |
79 | AliConversionCuts *fConversionCuts; | |
e5b6e8a6 | 80 | TList *fMesonCutArray; |
81 | AliConversionMesonCuts *fMesonCuts; | |
ca91a3e1 | 82 | TH1F **hESDConvGammaPt; |
e5b6e8a6 | 83 | TH1F **hESDConvGammaR; |
ca91a3e1 | 84 | TH2F **hESDMotherInvMassPt; |
85 | THnSparseF **sESDMotherInvMassPtZM; | |
0a2b2b4b | 86 | THnSparseF **sESDMotherInvMassPtY; |
ca91a3e1 | 87 | TH2F **hESDMotherBackInvMassPt; |
88 | THnSparseF **sESDMotherBackInvMassPtZM; | |
89 | TH2F **hESDMotherInvMassEalpha; | |
90 | TH1F **hMCAllGammaPt; | |
91 | TH1F **hMCDecayGammaPi0Pt; | |
92 | TH1F **hMCDecayGammaRhoPt; | |
93 | TH1F **hMCDecayGammaEtaPt; | |
94 | TH1F **hMCDecayGammaOmegaPt; | |
95 | TH1F **hMCDecayGammaEtapPt; | |
96 | TH1F **hMCDecayGammaPhiPt; | |
e5b6e8a6 | 97 | TH1F **hMCDecayGammaSigmaPt; |
ca91a3e1 | 98 | TH1F **hMCConvGammaPt; |
99 | TH1F **hMCConvGammaR; | |
100 | TH1F **hMCConvGammaEta; | |
e5b6e8a6 | 101 | TH1F **hMCConvGammaRSPt; |
102 | TH1F **hMCConvGammaRSR; | |
103 | TH1F **hMCConvGammaRSEta; | |
ca91a3e1 | 104 | TH1F **hMCPi0Pt; |
105 | TH1F **hMCEtaPt; | |
106 | TH1F **hMCPi0InAccPt; | |
107 | TH1F **hMCEtaInAccPt; | |
0a2b2b4b | 108 | TH2F **hMCPi0PtY; |
109 | TH2F **hMCEtaPtY; | |
ca91a3e1 | 110 | TH2F **hESDTrueMotherInvMassPt; |
a280ac15 | 111 | TH2F **hESDTruePrimaryMotherInvMassPt; |
0a2b2b4b | 112 | TH2F **hESDTruePrimaryPi0MCPtResolPt; |
113 | TH2F **hESDTruePrimaryEtaMCPtResolPt; | |
114 | THnSparseF **sESDTruePrimaryMotherInvMassPtY; | |
ca91a3e1 | 115 | TH2F **hESDTrueSecondaryMotherInvMassPt; |
116 | TH2F **hESDTrueSecondaryMotherFromK0sInvMassPt; | |
e5b6e8a6 | 117 | TH1F **hESDTrueK0sWithPi0DaughterMCPt; |
118 | TH2F **hESDTrueSecondaryMotherFromEtaInvMassPt; | |
119 | TH1F **hESDTrueEtaWithPi0DaughterMCPt; | |
ca91a3e1 | 120 | TH2F **hESDTrueBckGGInvMassPt; |
121 | TH2F **hESDTrueBckContInvMassPt; | |
122 | TH2F **hESDTrueMotherDalitzInvMassPt; | |
123 | TH1F **hESDTrueConvGammaPt; | |
e5b6e8a6 | 124 | TH2F **hESDCombinatorialPt; |
ca91a3e1 | 125 | TH1F **hESDTruePrimaryConvGammaPt; |
126 | TH1F **hESDTruePrimaryConvGammaR; | |
127 | TH1F **hESDTruePrimaryConvGammaEta; | |
128 | TH2F **hESDTruePrimaryConvGammaESDPtMCPt; | |
e5b6e8a6 | 129 | TH2F **hESDTruePrimaryConvGammaRSESDPtMCPt; |
ca91a3e1 | 130 | TH1F **hESDTrueSecondaryConvGammaPt; |
e5b6e8a6 | 131 | TH1F **hESDTrueSecondaryConvGammaR; |
ca91a3e1 | 132 | TH1F **hESDTrueSecondaryConvGammaFromXFromK0sPt; |
133 | TH1I **hNEvents; | |
134 | TH1I **hNGoodESDTracks; | |
a280ac15 | 135 | TH1I **hNGammaCandidates; |
ca91a3e1 | 136 | TH1I **hNV0Tracks; |
137 | ||
138 | TRandom3 fRandom; | |
a280ac15 | 139 | Int_t fnGammaCandidates; |
140 | Double_t *fUnsmearedPx; //[fnGammaCandidates] | |
141 | Double_t *fUnsmearedPy; //[fnGammaCandidates] | |
142 | Double_t *fUnsmearedPz; //[fnGammaCandidates] | |
143 | Double_t *fUnsmearedE; //[fnGammaCandidates] | |
ca91a3e1 | 144 | Int_t fnCuts; |
145 | Int_t fiCut; | |
146 | Int_t fNumberOfESDTracks; | |
ca91a3e1 | 147 | Bool_t fMoveParticleAccordingToVertex; |
148 | Bool_t fIsHeavyIon; | |
149 | Bool_t fDoMesonAnalysis; | |
0a2b2b4b | 150 | Bool_t fDoMesonQA; |
151 | Bool_t fDoPhotonQA; | |
a280ac15 | 152 | Bool_t fIsFromMBHeader; |
ca91a3e1 | 153 | |
a280ac15 | 154 | private: |
155 | ||
156 | AliAnalysisTaskGammaConvV1(const AliAnalysisTaskGammaConvV1&); // Prevent copy-construction | |
157 | AliAnalysisTaskGammaConvV1 &operator=(const AliAnalysisTaskGammaConvV1&); // Prevent assignment | |
158 | ||
159 | ||
0a2b2b4b | 160 | ClassDef(AliAnalysisTaskGammaConvV1, 4); |
2bb2434e | 161 | }; |
162 | ||
163 | #endif |