]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGGA/GammaConv/AliAnalysisTaskGammaConvV1.h
including Eta and Pt cuts for AOD analysis (for ESDs this is done in ESDTrackCuts)
[u/mrichter/AliRoot.git] / PWGGA / GammaConv / AliAnalysisTaskGammaConvV1.h
CommitLineData
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"
9#include "TH3.h"
10
11
12class AliAnalysisTaskGammaConvV1 : public AliAnalysisTaskSE {
13public:
14
15 AliAnalysisTaskGammaConvV1();
16 AliAnalysisTaskGammaConvV1(const char *name);
17 virtual ~AliAnalysisTaskGammaConvV1();
18
19 virtual void UserCreateOutputObjects();
20 virtual void UserExec(Option_t *);
21 virtual void Terminate(const Option_t*);
22 void InitBack();
23
24 void SetIsHeavyIon(Bool_t flag){fIsHeavyIon = flag;}
25 void SetDoMesonAnalysis(Bool_t flag){fDoMesonAnalysis = flag;}
26 void ProcessPhotonCandidates();
27 void CalculatePi0Candidates();
28 void CalculateBackground();
29 void ProcessMCParticles();
30 void ProcessTruePhotonCandidates( AliAODConversionPhoton* TruePhotonCandidate);
31 void ProcessTrueMesonCandidates( AliAODConversionMother *Pi0Candidate, AliAODConversionPhoton *TrueGammaCandidate0, AliAODConversionPhoton *TrueGammaCandidate1);
32 void RotateParticle(AliAODConversionPhoton *gamma);
33 void SetConversionCutList(Int_t nCuts, TList *CutArray){
34 fnCuts = nCuts;
35 fCutArray = CutArray;
36 }
37
38 // BG HandlerSettings
39 void SetMoveParticleAccordingToVertex(Bool_t flag){fMoveParticleAccordingToVertex = flag;}
40 void CountESDTracks();
41 void MoveParticleAccordingToVertex(AliAODConversionPhoton* particle,const AliGammaConversionAODBGHandler::GammaConversionVertex *vertex);
42 void UpdateEventByEventData();
43
44protected:
45 AliV0ReaderV1 *fV0Reader;
46 AliGammaConversionAODBGHandler **fBGHandler;
47 AliESDEvent *fESDEvent;
48 AliMCEvent *fMCEvent;
49 AliStack *fMCStack;
50 TList **fCutFolder;
51 TList **fESDList;
52 TList **fBackList;
53 TList **fTrueList;
54 TList **fMCList;
55 TList *fOutputContainer;
56 TClonesArray *fReaderGammas;
57 TList *fGoodGammas;
58 TList *fCutArray;
59 AliConversionCuts *fConversionCuts;
60 TH1F **hESDConvGammaPt;
61 TH2F **hESDMotherInvMassPt;
62 THnSparseF **sESDMotherInvMassPtZM;
63 TH2F **hESDMotherBackInvMassPt;
64 THnSparseF **sESDMotherBackInvMassPtZM;
65 TH2F **hESDMotherInvMassEalpha;
66 TH1F **hMCAllGammaPt;
67 TH1F **hMCAllGammaPtAddedSig;
68 TH1F **hMCDecayGammaPi0Pt;
69 TH1F **hMCDecayGammaPi0PtAddedSig;
70 TH1F **hMCDecayGammaRhoPt;
71 TH1F **hMCDecayGammaRhoPtAddedSig;
72 TH1F **hMCDecayGammaEtaPt;
73 TH1F **hMCDecayGammaEtaPtAddedSig;
74 TH1F **hMCDecayGammaOmegaPt;
75 TH1F **hMCDecayGammaOmegaPtAddedSig;
76 TH1F **hMCDecayGammaEtapPt;
77 TH1F **hMCDecayGammaEtapPtAddedSig;
78 TH1F **hMCDecayGammaPhiPt;
79 TH1F **hMCDecayGammaPhiPtAddedSig;
80 TH1F **hMCConvGammaPt;
81 TH1F **hMCConvGammaPtAddedSig;
82 TH1F **hMCPi0Pt;
83 TH1F **hMCEtaPt;
84 TH1F **hMCPi0InAccPt;
85 TH1F **hMCEtaInAccPt;
86 TH1F **hMCPi0PtAddedSig;
87 TH1F **hMCEtaPtAddedSig;
88 TH1F **hMCPi0InAccPtAddedSig;
89 TH1F **hMCEtaInAccPtAddedSig;
90 TH2F **hESDTrueMotherInvMassPt;
91 TH2F **hESDTrueMotherInvMassPtAddedSig;
92 TH2F **hESDTruePrimaryMotherInvMassMCPt;
93 TH2F **hESDTruePrimaryMotherInvMassMCPtAddedSig;
94 TH2F **hESDTruePrimaryPi0ESDPtMCPt;
95 TH2F **hESDTruePrimaryPi0ESDPtMCPtAddedSig;
96 TH2F **hESDTrueSecondaryMotherInvMassPt;
97 TH2F **hESDTrueSecondaryMotherInvMassPtAddedSig;
98 TH2F **hESDTrueSecondaryMotherFromK0sInvMassPt;
99 TH2F **hESDTrueSecondaryMotherFromK0sInvMassPtAddedSig;
100 TH2F **hESDTrueBckGGInvMassPt;
101 TH2F **hESDTrueBckContInvMassPt;
102 TH2F **hESDTrueMotherDalitzInvMassPt;
103 TH2F **hESDTrueMotherDalitzInvMassPtAddedSig;
104 TH1F **hESDTrueConvGammaPt;
105 TH1F **hESDTrueConvGammaPtAddedSig;
106 TH1F **hESDTrueElecCombPt;
107 TH1F **hESDTruePionCombPt;
108 TH1F **hESDTruePrimaryConvGammaPt;
109 TH1F **hESDTruePrimaryConvGammaPtAddedSig;
110 TH2F **hESDTruePrimaryConvGammaESDPtMCPt;
111 TH2F **hESDTruePrimaryConvGammaESDPtMCPtAddedSig;
112 TH1F **hESDTrueSecondaryConvGammaPt;
113 TH1F **hESDTrueSecondaryConvGammaPtAddedSig;
114 TH1F **hESDTrueSecondaryConvGammaFromK0sPt;
115 TH1F **hESDTrueSecondaryConvGammaFromK0sPtAddedSig;
116 TH1F **hESDTrueSecondaryConvGammaFromXFromK0sPt;
117 TH1F **hESDTrueSecondaryConvGammaFromXFromK0sPtAddedSig;
118 TH1I **hNEvents;
119 TH1I **hNGoodESDTracks;
120 TH1I **hNV0Tracks;
121
122 TRandom3 fRandom;
123 Double_t *fUnsmearedPx;
124 Double_t *fUnsmearedPy;
125 Double_t *fUnsmearedPz;
126 Double_t *fUnsmearedE;
127 Int_t fnCuts;
128 Int_t fiCut;
129 Int_t fNumberOfESDTracks;
130 Bool_t fMoveParticleAccordingToVertex;
131 Bool_t fIsHeavyIon;
132 Bool_t fDoMesonAnalysis;
133
134 ClassDef(AliAnalysisTaskGammaConvV1, 2);
135};
136
137#endif