1 #ifndef ALIEMCALTRACKINGQATASK_H
2 #define ALIEMCALTRACKINGQATASK_H
4 #include "AliAnalysisTaskEmcal.h"
6 class AliParticleContainer;
10 class AliEmcalTrackingQATask : public AliAnalysisTaskEmcal {
13 AliEmcalTrackingQATask();
14 AliEmcalTrackingQATask(const char *name);
15 virtual ~AliEmcalTrackingQATask();
17 void UserCreateOutputObjects();
18 void SetGeneratorLevelName(const char* name);
19 void SetDetectorLevelName(const char* name);
20 void SetSelectHIJING(Bool_t s) {fSelectHIJING=s;}
23 Bool_t FillHistograms() ;
25 void GenerateHistoBins() ;
26 void AllocateFindableParticlesTHnSparse() ;
27 void AllocateMatchedParticlesTHnSparse() ;
28 void FillFindableParticlesTHnSparse(Double_t cent, Double_t partEta, Double_t partPhi, Double_t partPt);
29 void FillMatchedParticlesTHnSparse(Double_t cent, Double_t partEta, Double_t partPhi, Double_t partPt,
30 Double_t trackEta, Double_t trackPhi, Double_t trackPt, Byte_t trackType);
33 Bool_t fSelectHIJING ; // select HIJING particles
35 // Service fields (non-streamed)
36 AliParticleContainer* fGeneratorLevel ; //! generator level container
37 AliParticleContainer* fDetectorLevel ; //! detector level container
38 Int_t fNPtHistBins ; //! number of pt bins
39 Double_t* fPtHistBins ; //! pt bins
40 Int_t fNEtaHistBins ; //! number of eta bins
41 Double_t* fEtaHistBins ; //! eta bins
42 Int_t fNPhiHistBins ; //! number of phi bins
43 Double_t* fPhiHistBins ; //! phi bins
44 Int_t fNCentHistBins ; //! number of cent bins
45 Double_t* fCentHistBins ; //! cent bins
46 Int_t fNPtResHistBins ; //! number of pt res bins
47 Double_t* fPtResHistBins ; //! pt res bins
48 Int_t fNIntegerHistBins ; //! number of integer bins
49 Double_t* fIntegerHistBins ; //! integer bins
53 TH3*** fTracksAll ; //! all tracks
54 TH3*** fTracksSelected ; //! selected tracks (e.g. remove injected signal in HIJING productions)
55 TH3** fParticlesAllPhysPrim ; //! all physical primary particles
56 TH3** fParticlesSelected ; //! selected physical primary particles (e.g. remove injected signal in HIJING productions)
57 THnSparse* fParticlesFindable ; //! findable physical primary particles (use PDG and charge selection)
58 THnSparse* fParticlesMatched ; //! primary particles matched to detector level tracks
61 AliEmcalTrackingQATask(const AliEmcalTrackingQATask&); // not implemented
62 AliEmcalTrackingQATask &operator=(const AliEmcalTrackingQATask&); // not implemented
64 ClassDef(AliEmcalTrackingQATask, 1) // Track QA task (efficiency and pt resolution)