]>
Commit | Line | Data |
---|---|---|
bf6a8159 | 1 | #ifndef ALIANALYSISTASKAODFILTERBITQA_H |
2 | #define ALIANALYSISTASKAODFILTERBITQA_H | |
3 | ||
4 | // Analysis task for the QA of AOD track filter bits | |
5 | // Authors: m.weber@cern.ch | |
6 | ||
7 | #define gBitMax 16// number of maximum filter bits | |
a3d2ee41 | 8 | #define gNCharge 2// number of charges |
bf6a8159 | 9 | |
10 | class TList; | |
11 | class TH2D; | |
12 | class TH3D; | |
13 | ||
bf6a8159 | 14 | |
15 | class AliAnalysisTaskAODFilterBitQA : public AliAnalysisTaskSE { | |
16 | public: | |
17 | AliAnalysisTaskAODFilterBitQA(const char *name = "AliAnalysisTaskAODFilterBitQA"); | |
18 | virtual ~AliAnalysisTaskAODFilterBitQA(); | |
19 | ||
20 | virtual void UserCreateOutputObjects(); | |
21 | virtual void UserExec(Option_t *option); | |
22 | virtual void FinishTaskOutput(); | |
23 | virtual void Terminate(Option_t *); | |
24 | ||
a3d2ee41 | 25 | void SetFillOnlySecondaries(){ |
26 | fillOnlySecondaries = kTRUE; | |
27 | } | |
28 | ||
29 | void SetCentralityPercentileRange(Double_t min, Double_t max){ | |
30 | fCentralityPercentileMin = min; | |
31 | fCentralityPercentileMax = max; | |
32 | } | |
33 | ||
34 | void SetPtRange(Double_t min, Double_t max){ | |
35 | fPtMin = min; | |
36 | fPtMax = max; | |
37 | } | |
38 | ||
39 | void SetEtaRange(Double_t min, Double_t max){ | |
40 | fEtaMin = min; | |
41 | fEtaMax = max; | |
42 | } | |
43 | ||
bf6a8159 | 44 | private: |
45 | Double_t IsEventAccepted(AliVEvent *event); | |
46 | void GetAcceptedTracks(AliVEvent *event, Double_t gCentrality); | |
47 | ||
48 | AliAnalysisTaskAODFilterBitQA(const AliAnalysisTaskAODFilterBitQA&); // not implemented | |
49 | AliAnalysisTaskAODFilterBitQA& operator=(const AliAnalysisTaskAODFilterBitQA&); // not implemented | |
50 | ||
a3d2ee41 | 51 | TClonesArray *fArrayMC;//MC track array for AODs |
bf6a8159 | 52 | |
53 | TList *fListQA;//output list for QA histograms | |
54 | ||
a3d2ee41 | 55 | Bool_t fillOnlySecondaries;//fill only secondary particles (only for MC running) |
56 | ||
57 | Double_t fCentralityPercentileMin;// minimum centrality threshold (default = 0) | |
58 | Double_t fCentralityPercentileMax;// maximum centrality threshold (default = 80) | |
59 | Double_t fPtMin;// minimum pT threshold (default = 0) | |
60 | Double_t fPtMax;// maximum pT threshold (default = 1000) | |
61 | Double_t fEtaMin;// minimum eta threshold (default = -10) | |
62 | Double_t fEtaMax;// maximum eta threshold (default = 10) | |
63 | ||
bf6a8159 | 64 | TH2D* fHistTrackStats;//QA histogram for track filter bit statistics vs. centrality |
a3d2ee41 | 65 | TH3D* fHistKinematics[gNCharge][gBitMax];//QA histograms for kinematics (eta, phi, pT) for different filter bits |
66 | TH2D* fHistDCAconstrained[gNCharge][gBitMax];//QA histograms for DCA (xy,z) for different filter bits for constrained tracks (stored in DCA methods) | |
67 | TH3D* fHistDCAglobal[gNCharge][gBitMax];//QA histograms for DCA (xy,z) for different filter bits for global tracks (stored in Position methods) | |
68 | TH2D* fHistChiClus[gNCharge][gBitMax];//QA histograms for Chi2 and number of TPC clusters for different filter bits | |
bf6a8159 | 69 | |
70 | ||
71 | ||
72 | ClassDef(AliAnalysisTaskAODFilterBitQA, 0); // | |
73 | }; | |
74 | ||
75 | ||
76 | ||
77 | #endif |