d98e1860fadefba12f54ad2dcc3b723088215424
[u/mrichter/AliRoot.git] / PWGHF / hfe / AliAnalysisTaskHFEemcQA.h
1 #ifndef AliAnalysisTaskHFEemcQA_cxx
2 #define AliAnalysisTaskHFEemcQA_cxx
3
4 //QA task for EMCAL electron analysis 
5
6 class TH1F;
7 class AliESDEvent;
8 class AliAODEvent;
9
10 #include "AliAnalysisTaskSE.h"
11
12 class AliAnalysisTaskHFEemcQA : public AliAnalysisTaskSE {
13  public:
14   AliAnalysisTaskHFEemcQA() : AliAnalysisTaskSE(), fVevent(0),fESD(0),fAOD(0),fOutputList(0),fVtxZ(0),fVtxX(0),fVtxY(0),fTrigMulti(0),fHistClustE(0),fEMCClsEtaPhi(0),fNegTrkIDPt(0),fTrkPt(0),fTrketa(0),fTrkphi(0),fdEdx(0),fTPCNpts(0),fHistPtMatch(0),fEMCTrkMatch(0),fEMCTrkPt(0),fEMCTrketa(0),fEMCTrkphi(0),fEMCdEdx(0),fEMCTPCNpts(0),fHistdEdxEop(0),fHistEop(0),fEleCanTPCNpts(0),fEleCanTPCNCls(0),fEleCanITSNCls(0),fEleCanITShit(0),fEleCanSPD1(0),fEleCanSPD2(0),fEleCanSPDBoth(0),fEleCanSPDOr(0) {}
15   AliAnalysisTaskHFEemcQA(const char *name);
16   virtual ~AliAnalysisTaskHFEemcQA() {}
17   
18   virtual void   UserCreateOutputObjects();
19   virtual void   UserExec(Option_t *option);
20   virtual void   Terminate(Option_t *);
21   
22  private:
23   AliVEvent   *fVevent;  //!V event object
24   AliESDEvent *fESD;    //!ESD object
25   AliAODEvent *fAOD;    //!AOD object
26   TList       *fOutputList; //!Output list
27   TH1F        *fVtxZ;//!Vertex z 
28   TH1F        *fVtxX;//!Vertex x 
29   TH1F        *fVtxY;//!Vertex y 
30   TH2F        *fTrigMulti;//!trigger multiplicity 
31   TH1F        *fHistClustE;//!cluster energy
32   TH2F        *fEMCClsEtaPhi;//! EMC cluster eta and phi 
33   TH1F        *fNegTrkIDPt;//!neg track ID
34   TH1F        *fTrkPt;//!track pt
35   TH1F        *fTrketa;//!track eta
36   TH1F        *fTrkphi;//!track phi 
37   TH2F        *fdEdx;//!dedx vs pt
38   TH2F        *fTPCNpts;//!TPC Npoints used for dedx
39   TH1F        *fHistPtMatch;//!tracks matched to EMCAL 
40   TH2F        *fEMCTrkMatch;//!Distance of EMC cluster to closest track in phi and z
41   TH1F        *fEMCTrkPt;//!tracks with EMCAL cluster
42   TH1F        *fEMCTrketa;//!EMC trk eta
43   TH1F        *fEMCTrkphi;//!EMC trk phi
44   TH2F        *fEMCdEdx;//!EMC trk dedx
45   TH2F        *fEMCTPCNpts;//!EMC Npoints used for dedx
46   TH2F        *fHistdEdxEop;//!E/p vs dedx
47   TH2F        *fHistEop;//!pt vs E/p
48   TH2F        *fEleCanTPCNpts;//!ele cand TPC Npoints used for dedx
49   TH2F        *fEleCanTPCNCls;//!ele cand TPC N clusters
50   TH2F        *fEleCanITSNCls;//!ele cand ITS N clusters
51   TH1F        *fEleCanITShit;//!ele cand ITS hit map
52   TH2F        *fEleCanSPD1;//!ele cand hit SPD layer 1
53   TH2F        *fEleCanSPD2;//!ele cand hit SPD layer 2
54   TH2F        *fEleCanSPDBoth;//!ele cand SPD both layer
55   TH2F        *fEleCanSPDOr;//!ele cand SPD or
56
57   AliAnalysisTaskHFEemcQA(const AliAnalysisTaskHFEemcQA&); // not implemented
58   AliAnalysisTaskHFEemcQA& operator=(const AliAnalysisTaskHFEemcQA&); // not implemented
59   
60   ClassDef(AliAnalysisTaskHFEemcQA, 1); // example of analysis
61 };
62
63 #endif
64
65