]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/FLOW/AliFlowTasks/AliAnalysisTaskPIDflowQA.h
Reverting the wrong commit of AliAnalysisTaskFlowEvent
[u/mrichter/AliRoot.git] / PWG2 / FLOW / AliFlowTasks / AliAnalysisTaskPIDflowQA.h
1 //Class to extract data to do ITS+TPC global Spectra
2 //Autor Marek Chojnacki, Marek.Chojnacki@cern.ch
3 //modified Mikolaj Krzewicki, Mikolaj.Krzewicki@cern.ch
4
5 #ifndef ALIANALYSISFLOWPIDTASK_H
6 #define  ALIANALYSISFLOWPIDTASK_H
7 class TH2F;
8 class TProfile;
9 class AliESDEvent;
10 class AliESDtrack;
11 class AliESDpid;
12 class AliFlowEventCuts;
13 class AliFlowTrackCuts;
14 #include "AliAnalysisTaskSE.h"
15 #include "AliESDpid.h"
16
17 class  AliAnalysisTaskPIDflowQA : public AliAnalysisTaskSE {
18 public:
19   AliAnalysisTaskPIDflowQA();
20   AliAnalysisTaskPIDflowQA(const char *name);
21   virtual ~AliAnalysisTaskPIDflowQA() {}
22   
23   virtual void UserCreateOutputObjects();
24   virtual void UserExec(Option_t *option);
25   virtual void Terminate(Option_t *); 
26
27   AliFlowTrackCuts* GetAliESDtrackCuts() const {return fCuts;}
28   void SetAliESDtrackCuts(AliFlowTrackCuts* const cuts ){fCuts=cuts;}
29   void SetEventCuts(AliFlowEventCuts* c) {fEventCuts=c;}
30   void SetMCOn(){fMC=kTRUE;}
31   AliESDpid* GetESDpid() const {return fESDpid;}
32   void SetUseDebugFile(Bool_t b=kTRUE) {fUseDebugFile=b;}
33
34   Float_t Beta(Float_t m, Float_t p);
35
36 private:
37   AliESDEvent *fESD;            //!ESD object    
38   AliFlowTrackCuts *fCuts;       //cuts 
39   AliFlowEventCuts *fEventCuts; //event cuts
40   AliESDpid *fESDpid;           //pid object
41   Bool_t fMC;                   //if TRUE use MC 
42   Bool_t fUseDebugFile; //write debug file
43   FILE* fFile; //debug output file
44
45   TH2F* fITSsignal; //!ITS signal as function of p
46   TH2F* fTPCsignal; //!TPC signal as function of p
47   TH2F* fTOFsignal; //!TOF signal as function of p 
48   TH2F* fITSsignalpip;//!ITS PID signal as function of p for pi+
49   TH2F* fTPCsignalpip;//!TPC PID signal as function of p for pi+
50   TH2F* fTOFsignalpip;//!TOF PID signal as function of p for pi+
51   TH2F* fITSsignalKp;//!ITS PID signal as function of p for K+
52   TH2F* fTPCsignalKp;//!TPC PID signal as function of p for K+
53   TH2F* fTOFsignalKp;//!TOF PID signal as function of p for K+
54   TH2F* fITSsignalpp;//!ITS PID signal as function of p for p
55   TH2F* fTPCsignalpp;//!TPC PID signal as function of p for p
56   TH2F* fTOFsignalpp;//!TOF PID signal as function of p for p
57   TH2F* fITSsignalpiMCp;//!ITS PID signal as function of p for pi+
58   TH2F* fTPCsignalpiMCp;//!TPC PID signal as function of p for pi+
59   TH2F* fTOFsignalpiMCp;//!TOF PID signal as function of p for pi+
60   TH2F* fITSsignalKMCp;//!ITS PID signal as function of p for K+
61   TH2F* fTPCsignalKMCp;//!TPC PID signal as function of p for K+
62   TH2F* fTOFsignalKMCp;//!TOF PID signal as function of p for K+
63   TH2F* fITSsignalpMCp;//!ITS PID signal as function of p for p
64   TH2F* fTPCsignalpMCp;//!TPC PID signal as function of p for p
65   TH2F* fTOFsignalpMCp;//!TOF PID signal as function of p for p
66   TH2F* fTOFsignalBeta;//!vs beta
67   TH2F* fTOFsignalPiBeta;//!vs beta
68   TH2F* fTOFsignalKBeta;//!vs beta
69   TH2F* fTOFsignalPBeta;//!vs beta
70   TH2F* fPvsPt; //!P vs Pt yield
71   TProfile* fMeanPvsP; //!mean p per bin
72   TH2F* fTPCvsGlobalMult; //! correlation tpc only tracks vs global tracks
73   AliFlowTrackCuts* fStandardGlobalCuts; //! cuts
74   AliFlowTrackCuts* fStandardTPCCuts; //! cuts
75   TList* fOutputList;//!output list
76         
77   AliAnalysisTaskPIDflowQA(const  AliAnalysisTaskPIDflowQA&); // not implemented
78   AliAnalysisTaskPIDflowQA& operator=(const  AliAnalysisTaskPIDflowQA&); // not implemented
79  
80   void pidITS(AliESDtrack* t, Int_t pdgcode);
81   void pidTPC(AliESDtrack* t, Int_t pdgcode);
82   void pidTOF(AliESDtrack* t, Int_t pdgcode);
83     
84   ClassDef( AliAnalysisTaskPIDflowQA, 3); // example of analysis
85 };
86
87 #endif