]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGGA/GammaConv/AliAnalysisTaskResolution.h
Merge branch 'master' of https://git.cern.ch/reps/AliRoot
[u/mrichter/AliRoot.git] / PWGGA / GammaConv / AliAnalysisTaskResolution.h
1 #ifndef AliAnalysisTaskResolution_cxx
2 #define AliAnalysisTaskResolution_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 "AliConvEventCuts.h"
13 #include "AliConversionPhotonCuts.h"
14 #include "TList.h"
15 #include "AliStack.h"
16 #include "TClonesArray.h"
17
18
19 using namespace std;
20
21
22 class AliAnalysisTaskResolution : public AliAnalysisTaskSE{
23
24         public:
25                 AliAnalysisTaskResolution();
26                 AliAnalysisTaskResolution(const char *name);
27                 virtual ~AliAnalysisTaskResolution();
28
29                 virtual void   UserCreateOutputObjects();
30                 virtual void   UserExec(Option_t *option);
31                 virtual void   Terminate(Option_t *);
32
33                 void SetV0Reader(AliV0ReaderV1 *v0Reader){fV0Reader=v0Reader;}
34                 void SetConversionCuts(AliConversionPhotonCuts* conversionCuts,Int_t IsHeavyIon ){
35                         fConversionCuts=conversionCuts;
36                         fIsHeavyIon = IsHeavyIon;
37                 }
38                 void SetEventCuts(AliConvEventCuts* conversionCuts,Int_t IsHeavyIon ){
39                         fEventCuts=conversionCuts;
40                         fIsHeavyIon = IsHeavyIon;
41                 }
42                 void SetIsMC(Bool_t isMC){fIsMC=isMC;}
43         
44         private:
45
46                 void ProcessPhotons();
47                 Int_t CountTracks0914();
48                 Int_t CountTracks09();
49
50                 AliV0ReaderV1 *fV0Reader;
51                 TClonesArray *fConversionGammas; //Reconstructed Photons;
52                 AliConvEventCuts *fEventCuts; // Cuts used by the V0Reader
53                 AliConversionPhotonCuts *fConversionCuts; // Cuts used by the V0Reader
54                 TTree *fTreeEvent;
55                 TTree *fTreeResolution;
56                 Float_t fPrimVtxZ;
57                 Int_t fNContrVtx;
58                 Int_t fNESDtracksEta09;
59                 Int_t fNESDtracksEta0914;
60                 Int_t fNESDtracksEta14;
61                 TVectorF fGammaRecCoords;
62                 TVectorF fGammaMCCoords;
63                 Float_t fChi2ndf;
64                 Int_t fIsHeavyIon;
65                 Bool_t fIsMC;
66                 TList *fOutputList;
67                 TList *fEventList;
68                 TList *fResolutionList;
69                 AliESDEvent *fESDEvent;
70                 AliMCEvent *fMCEvent;
71
72                 AliAnalysisTaskResolution(const AliAnalysisTaskResolution&); // not implemented
73                 AliAnalysisTaskResolution& operator=(const AliAnalysisTaskResolution&); // not implemented
74
75
76         ClassDef(AliAnalysisTaskResolution, 2);
77 };
78
79 #endif