1 #ifndef AliAnalysisTaskHFEemcQA_cxx
2 #define AliAnalysisTaskHFEemcQA_cxx
4 //QA task for EMCAL electron analysis
10 class AliHFEcontainer;
13 class AliHFEpidQAmanager;
16 #include "AliAnalysisTaskSE.h"
18 class AliAnalysisTaskHFEemcQA : public AliAnalysisTaskSE {
20 AliAnalysisTaskHFEemcQA();
21 AliAnalysisTaskHFEemcQA(const char *name);
22 virtual ~AliAnalysisTaskHFEemcQA();
24 virtual void UserCreateOutputObjects();
25 virtual void UserExec(Option_t *option);
26 virtual void Terminate(Option_t *);
28 void SetAODAnalysis() { SetBit(kAODanalysis, kTRUE); };
29 void SetESDAnalysis() { SetBit(kAODanalysis, kFALSE); };
30 Bool_t IsAODanalysis() const { return TestBit(kAODanalysis); };
32 Bool_t GetElecIDsparse() {return fFlagSparse;};
33 void SetElecIDsparse(Bool_t flagelecIDsparse){fFlagSparse = flagelecIDsparse;};
37 kAODanalysis = BIT(20),
40 AliVEvent *fVevent; //!event object
41 AliESDEvent *fESD; //!ESD object
42 AliAODEvent *fAOD; //!AOD object
43 AliPIDResponse *fpidResponse; //!pid response
45 Bool_t fFlagSparse;// switch to THnspare
47 TList *fOutputList; //!Output list
48 TH1F *fNevents;//! no of events
49 TH1F *fVtxZ;//!Vertex z
50 TH1F *fVtxX;//!Vertex x
51 TH1F *fVtxY;//!Vertex y
52 TH2F *fTrigMulti;//!trigger multiplicity
53 TH1F *fHistClustE;//!cluster energy
54 TH2F *fEMCClsEtaPhi;//! EMC cluster eta and phi
55 TH1F *fNegTrkIDPt;//!neg track ID
56 TH1F *fTrkPt;//!track pt
57 TH1F *fTrketa;//!track eta
58 TH1F *fTrkphi;//!track phi
59 TH2F *fdEdx;//!dedx vs pt
60 TH2F *fTPCNpts;//!TPC Npoints used for dedx
61 TH2F *fTPCnsig;//!TPC Nsigma
62 TH1F *fHistPtMatch;//!tracks matched to EMCAL
63 TH2F *fEMCTrkMatch;//!Distance of EMC cluster to closest track in phi and z
64 TH1F *fEMCTrkPt;//!tracks with EMCAL cluster
65 TH1F *fEMCTrketa;//!EMC trk eta
66 TH1F *fEMCTrkphi;//!EMC trk phi
67 TH2F *fEMCdEdx;//!EMC trk dedx
68 TH2F *fEMCTPCnsig;//! EMC trk nsig
69 TH2F *fEMCTPCNpts;//!EMC Npoints used for dedx
70 TH2F *fHistdEdxEop;//!E/p vs dedx
71 TH2F *fHistNsigEop;//!E/p vs dedx
72 TH2F *fHistEop;//!pt vs E/p
73 TH2F *fEleCanTPCNpts;//!ele cand TPC Npoints used for dedx
74 TH2F *fEleCanTPCNCls;//!ele cand TPC N clusters
75 TH2F *fEleCanITSNCls;//!ele cand ITS N clusters
76 TH1F *fEleCanITShit;//!ele cand ITS hit map
77 TH2F *fEleCanSPD1;//!ele cand hit SPD layer 1
78 TH2F *fEleCanSPD2;//!ele cand hit SPD layer 2
79 TH2F *fEleCanSPDBoth;//!ele cand SPD both layer
80 TH2F *fEleCanSPDOr;//!ele cand SPD or
82 THnSparse *fSparseElectron;//!Electron info
83 Double_t *fvalueElectron;//!Electron info
85 AliAnalysisTaskHFEemcQA(const AliAnalysisTaskHFEemcQA&); // not implemented
86 AliAnalysisTaskHFEemcQA& operator=(const AliAnalysisTaskHFEemcQA&); // not implemented
88 ClassDef(AliAnalysisTaskHFEemcQA, 1); // example of analysis