]>
Commit | Line | Data |
---|---|---|
0dbb51a0 | 1 | #ifndef ALIANALYSISTASKSEHFQUALITYASSURANCE_H |
2 | #define ALIANALYSISTASKSEHFQUALITYASSURANCE_H | |
3 | ||
4 | /* Copyright(c) 1998-2009, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
27de2dfb | 7 | /* $Id$ */ |
8 | ||
0dbb51a0 | 9 | //************************************************************************* |
10 | // Class AliAnalysisTaskSEHFQA | |
11 | // AliAnalysisTaskSE for HF quality assurance | |
12 | // Authors: C.Bianchin, chiara.bianchin@pd.infn.it | |
13 | //************************************************************************* | |
14 | ||
15 | #include <TROOT.h> | |
16 | #include <TSystem.h> | |
17 | ||
18 | #include "AliAnalysisTaskSE.h" | |
19 | ||
20 | class AliRDHFCuts; | |
21 | class TH1F; | |
d48d81b5 | 22 | class AliAODEvent; |
23 | class AliFlowEvent; | |
24 | class AliFlowTrackCuts; | |
0dbb51a0 | 25 | |
26 | class AliAnalysisTaskSEHFQA : public AliAnalysisTaskSE | |
27 | { | |
28 | ||
29 | public: | |
30 | ||
ca688a98 | 31 | enum DecChannel {kDplustoKpipi,kD0toKpi,kDstartoKpipi,kDstoKKpi,kD0toKpipipi,kLambdactopKpi,kLambdactoV0}; |
0dbb51a0 | 32 | |
33 | AliAnalysisTaskSEHFQA(); | |
34 | AliAnalysisTaskSEHFQA(const char *name, DecChannel ch, AliRDHFCuts* cuts); | |
35 | virtual ~AliAnalysisTaskSEHFQA(); | |
36 | ||
37 | // Implementation of interface methods | |
38 | virtual void UserCreateOutputObjects(); | |
39 | virtual void Init(); | |
40 | virtual void LocalInit() {Init();} | |
41 | virtual void UserExec(Option_t *option); | |
42 | virtual void Terminate(Option_t *option); | |
43 | ||
44 | //setters | |
a4ef4383 | 45 | void SetReadMC(Bool_t mcflag){fReadMC=mcflag;} |
19222b31 | 46 | void SetSimpleMode(Bool_t flag){fSimpleMode=flag;} |
5fc4893f | 47 | void SetTrackOn(Bool_t trackon=kTRUE){fOnOff[0]=trackon;} |
48 | void SetPIDOn(Bool_t pidon=kTRUE){fOnOff[1]=pidon;} | |
49 | void SetCentralityOn(Bool_t centron=kTRUE){fOnOff[2]=centron;} | |
818c1271 | 50 | void SetEvSelectionOn(Bool_t evselon=kTRUE){fOnOff[3]=evselon;} |
d48d81b5 | 51 | void SetFlowObsOn(Bool_t flowobson=kTRUE){fOnOff[4]=flowobson;} |
0dbb51a0 | 52 | |
53 | //getters | |
54 | AliRDHFCuts* GetCutObject() const {return fCuts;} | |
55 | DecChannel GetDecayChannel()const {return fDecayChannel;} | |
5fc4893f | 56 | Bool_t GetTrackStatus() const {return fOnOff[0];} |
57 | Bool_t GetPIDStatus() const {return fOnOff[1];} | |
58 | Bool_t GetCentralityStatus() const {return fOnOff[2];} | |
818c1271 | 59 | Bool_t GetEvSelStatus() const {return fOnOff[3];} |
d48d81b5 | 60 | Bool_t GetFlowObsStatus() const {return fOnOff[4];} |
0dbb51a0 | 61 | |
62 | private: | |
63 | AliAnalysisTaskSEHFQA(const AliAnalysisTaskSEHFQA &source); | |
64 | AliAnalysisTaskSEHFQA operator=(const AliAnalysisTaskSEHFQA &source); | |
d48d81b5 | 65 | void FillFlowObs(AliAODEvent *aod); |
0dbb51a0 | 66 | |
67 | TH1F* fNEntries; //! histogram with number of events on output slot 1 | |
68 | TList* fOutputPID; //! list sent on output slot 2 | |
69 | TList* fOutputTrack; //! list sent on output slot 3 | |
a4ef4383 | 70 | TList* fOutputCounters; //! list sent on output slot 5 |
71 | TList* fOutputCheckCentrality; //! list sent on output slot 6 | |
818c1271 | 72 | TList* fOutputEvSelection; //! list sent on output slot 7 |
d48d81b5 | 73 | TList* fOutputFlowObs; //! list sent on output slot 8 |
0dbb51a0 | 74 | DecChannel fDecayChannel; //identify the decay channel |
d48d81b5 | 75 | AliRDHFCuts* fCuts; // object containing cuts |
76 | AliFlowEvent *fFlowEvent; //! to handle the reusage of the flowEvent object | |
77 | AliFlowTrackCuts *fRFPcuts; //! reference flow particle cuts | |
a4ef4383 | 78 | AliRDHFCuts::ECentrality fEstimator; //2nd estimator for centrality |
79 | Bool_t fReadMC; // flag to read MC | |
5fc4893f | 80 | Bool_t fSimpleMode; // if true, don't do candidates (much faster in PbPb) |
d48d81b5 | 81 | Bool_t fOnOff[5]; // on-off the QA on tracks (0), PID (1), centrality (2), event selection -- default is {kTRUE,kTRUE,kTRUE,kTRUE} |
82 | ClassDef(AliAnalysisTaskSEHFQA,7); //AnalysisTaskSE for the quality assurance of HF in hadrons | |
0dbb51a0 | 83 | |
84 | }; | |
85 | ||
86 | #endif | |
5fc4893f | 87 |