]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/RESONANCES/AliRsnAnalysisMonitorTask.h
66d1c75759fef77dd4a9f30ae342e7f3085ab89a
[u/mrichter/AliRoot.git] / PWG2 / RESONANCES / AliRsnAnalysisMonitorTask.h
1 //
2 // Header file for implementation of data analysis aft 900 GeV
3 //
4 // Author: A. Pulvirenti
5 //
6
7 #ifndef ALIRSNANALYSISMONITORTASK_H
8 #define ALIRSNANALYSISMONITORTASK_H
9
10 #include "AliAnalysisTaskSE.h"
11 #include "AliRsnCutSet.h"
12
13 class TH1I;
14 class TH1F;
15 class TTree;
16
17 class AliStack;
18 class AliESDEvent;
19 class AliESDVertex;
20 class AliESDpid;
21 class AliTOFT0maker;
22 class AliTOFcalib;
23
24 class AliRsnAnalysisMonitorTask : public AliAnalysisTaskSE
25 {
26   public:
27   
28     AliRsnAnalysisMonitorTask(const char *name = "Phi7TeV");
29     AliRsnAnalysisMonitorTask(const AliRsnAnalysisMonitorTask& copy);
30     AliRsnAnalysisMonitorTask& operator=(const AliRsnAnalysisMonitorTask& copy);
31     virtual ~AliRsnAnalysisMonitorTask();
32     
33     void             SetTPCpar(Double_t p0, Double_t p1, Double_t p2, Double_t p3, Double_t p4)
34                        {fTPCpar[0]=p0;fTPCpar[1]=p1;fTPCpar[2]=p2;fTPCpar[3]=p3;fTPCpar[4]=p4;}
35
36     void             SetTOFcalibrateESD(Bool_t yn = kTRUE)  {fTOFcalibrateESD = yn;}
37     void             SetTOFcorrectTExp (Bool_t yn = kTRUE)  {fTOFcorrectTExp = yn;}
38     void             SetTOFuseT0       (Bool_t yn = kTRUE)  {fTOFuseT0 = yn;}
39     void             SetTOFtuneMC      (Bool_t yn = kTRUE)  {fTOFtuneMC = yn;}
40     void             SetTOFresolution  (Double_t v = 100.0) {fTOFresolution = v;}
41
42     virtual void     UserCreateOutputObjects();
43     virtual void     UserExec(Option_t *option = "");
44     virtual void     Terminate(Option_t *option = "");
45     
46     Int_t            EventEval(AliESDEvent *esd);
47     Bool_t           IsTPCtrack(AliESDtrack *track);
48     Bool_t           IsITSSAtrack(AliESDtrack *track);
49     void             ProcessESD(AliESDEvent *esd, const AliESDVertex *v, AliStack *stack);
50     
51     AliRsnCutSet*    GetEventCuts() {return &fEventCuts;}
52     AliRsnCutSet*    GetTrackCuts() {return &fTrackCuts;}
53
54   private:
55     
56     TTree              *fOut;              //  output TTree
57     AliRsnMonitorTrack *fTrack;            //  branch object for output TTree
58     
59     Double_t            fTPCpar[5];        //  parameters for TPC bethe-Bloch
60    
61     AliESDpid          *fESDpid;           //! PID manager
62     
63     AliTOFT0maker      *fTOFmaker;         //! TOF time0 computator
64     AliTOFcalib        *fTOFcalib;         //! TOF calibration
65     Bool_t              fTOFcalibrateESD;  //  TOF settings
66     Bool_t              fTOFcorrectTExp;   //  TOF settings
67     Bool_t              fTOFuseT0;         //  TOF settings
68     Bool_t              fTOFtuneMC;        //  TOF settings
69     Double_t            fTOFresolution;    //  TOF settings
70     
71     AliRsnCutSet        fEventCuts;        //  event cuts
72     AliRsnCutSet        fTrackCuts;        //  track cuts
73
74     // ROOT dictionary
75     ClassDef(AliRsnAnalysisMonitorTask,1)
76 };
77
78 #endif