]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG/EMCAL/AliEmcalTrackingQATask.h
seletc HIJING particles optional
[u/mrichter/AliRoot.git] / PWG / EMCAL / AliEmcalTrackingQATask.h
CommitLineData
eec7bbb0 1#ifndef ALIEMCALTRACKINGQATASK_H
2#define ALIEMCALTRACKINGQATASK_H
3
4#include "AliAnalysisTaskEmcal.h"
5
6class AliParticleContainer;
7class THnSparse;
8class TH3;
9
10class AliEmcalTrackingQATask : public AliAnalysisTaskEmcal {
11
12 public:
13 AliEmcalTrackingQATask();
14 AliEmcalTrackingQATask(const char *name);
15 virtual ~AliEmcalTrackingQATask();
16
17 void UserCreateOutputObjects();
18 void SetGeneratorLevelName(const char* name);
19 void SetDetectorLevelName(const char* name);
d7ab1a93 20 void SetSelectHIJING(Bool_t s) {fSelectHIJING=s;}
eec7bbb0 21
22 protected:
23 Bool_t FillHistograms() ;
24 void ExecOnce() ;
25 void AllocateFindableParticlesTHnSparse() ;
26 void AllocateMatchedParticlesTHnSparse() ;
27 void FillFindableParticlesTHnSparse(Double_t cent, Double_t partEta, Double_t partPhi, Double_t partPt);
28 void FillMatchedParticlesTHnSparse(Double_t cent, Double_t partEta, Double_t partPhi, Double_t partPt,
29 Double_t trackEta, Double_t trackPhi, Double_t trackPt, Byte_t trackType);
30
31 // Task configuration
d7ab1a93 32 Bool_t fSelectHIJING ; // select HIJING particles
eec7bbb0 33
34 // Service fields (non-streamed)
35 AliParticleContainer* fGeneratorLevel ; //! generator level container
36 AliParticleContainer* fDetectorLevel ; //! detector level container
37
38 // Histograms
39 TH3*** fTracksAll ; //! all tracks
40 TH3*** fTracksSelected ; //! selected tracks (e.g. remove injected signal in HIJING productions)
41 TH3** fParticlesAllPhysPrim ; //! all physical primary particles
42 TH3** fParticlesSelected ; //! selected physical primary particles (e.g. remove injected signal in HIJING productions)
43 THnSparse* fParticlesFindable ; //! findable physical primary particles (use PDG and charge selection)
44 THnSparse* fParticlesMatched ; //! primary particles matched to detector level tracks
45
46 private:
47 AliEmcalTrackingQATask(const AliEmcalTrackingQATask&); // not implemented
48 AliEmcalTrackingQATask &operator=(const AliEmcalTrackingQATask&); // not implemented
49
50 ClassDef(AliEmcalTrackingQATask, 1) // Track QA task (efficiency and pt resolution)
51};
52#endif