]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG1/ITS/AliAnalysisTaskITSTrackingCheck.h
TPCCEda.cxx.diff Allow to change the monitoring type from the config file...
[u/mrichter/AliRoot.git] / PWG1 / ITS / AliAnalysisTaskITSTrackingCheck.h
1 #ifndef AliAnalysisTaskITSTrackingCheck_cxx
2 #define AliAnalysisTaskITSTrackingCheck_cxx
3
4 /* Copyright(c) 1998-2009, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 //*************************************************************************
8 // Class AliAnalysiTaskITSTrackingCheck
9 // AliAnalysisTask to extract from ESD tracks the information on the
10 // ITS tracking efficiency and resolutions
11 //
12 // Author: A.Dainese, andrea.dainese@pd.infn.it
13 //*************************************************************************
14
15 class TNtuple;
16 class TParticle;
17 class TH1F;
18 class AliESDEvent;
19 class AliESDVertex;
20 class AliESDfriend;
21
22 #include "AliAnalysisTask.h"
23
24 class AliAnalysisTaskITSTrackingCheck : public AliAnalysisTask 
25 {
26  public:
27
28   AliAnalysisTaskITSTrackingCheck(const char *name = "AliAnalysisTaskITSTrackingCheck");
29   virtual ~AliAnalysisTaskITSTrackingCheck(); 
30   
31   virtual void   ConnectInputData(Option_t *);
32   virtual void   CreateOutputObjects();
33   virtual void   Exec(Option_t *option);
34   virtual void   Terminate(Option_t *);
35   Bool_t         GetReadMC() const { return fReadMC; }
36   void           SetReadMC(Bool_t flag=kTRUE) { fReadMC=flag; }
37   void           SetReadRPLabels(Bool_t flag=kTRUE) { fReadRPLabels=flag; }
38   void           SetFillNtuples(Bool_t flag=kTRUE) { fFillNtuples=flag; }
39   void           SetUseITSSAforNtuples(Bool_t flag=kTRUE) { fUseITSSAforNtuples=flag; }
40
41   
42  protected:
43   Bool_t       fReadMC; // read Monte Carlo
44   Bool_t       fReadRPLabels; // read MC labels from ITS.RecPoints
45   Bool_t       fFillNtuples; // fill expert ntuples
46   Bool_t       fUseITSSAforNtuples; // fill expert ntuples with ITSSA tracks
47   AliESDEvent  *fESD;    // ESD object
48   AliESDfriend *fESDfriend; // ESD friend object
49   TList        *fOutput; //! list send on output slot 0
50   TH1F         *fHistNtracks; //! output hist
51   TH1F         *fHistNclsITSMI; //! output hist
52   TH1F         *fHistNclsITSSA; //! output hist
53   TH1F         *fHistNclsITSSAInAcc; //! output hist
54   TH1F         *fHistClusterMapITSMI; //! output hist
55   TH1F         *fHistClusterMapITSMIok; //! output hist
56   TH1F         *fHistClusterMapITSMIbad; //! output hist
57   TH1F         *fHistClusterMapITSMIskipped; //! output hist
58   TH1F         *fHistClusterMapITSMIoutinz; //! output hist
59   TH1F         *fHistClusterMapITSMInorefit; //! output hist
60   TH1F         *fHistClusterMapITSMInocls; //! output hist
61   TH1F         *fHistClusterMapITSMIokoutinzbad; //! output hist
62   TH1F         *fHistClusterMapITSSA; //! output hist
63   TH1F         *fHistClusterMapITSSAok; //! output hist
64   TH1F         *fHistClusterMapITSSAbad; //! output hist
65   TH1F         *fHistClusterMapITSSAskipped; //! output hist
66   TH1F         *fHistClusterMapITSSAoutinz; //! output hist
67   TH1F         *fHistClusterMapITSSAnorefit; //! output hist
68   TH1F         *fHistClusterMapITSSAnocls; //! output hist
69   TH1F         *fHistClusterMapITSSAokoutinzbad; //! output hist
70   TH1F         *fHistClusterMapITSSAInAcc; //! output hist
71   TH1F         *fHistClusterMapITSSAokInAcc; //! output hist
72   TH1F         *fHistClusterMapITSSAbadInAcc; //! output hist
73   TH1F         *fHistClusterMapITSSAskippedInAcc; //! output hist
74   TH1F         *fHistClusterMapITSSAoutinzInAcc; //! output hist
75   TH1F         *fHistClusterMapITSSAnorefitInAcc; //! output hist
76   TH1F         *fHistClusterMapITSSAnoclsInAcc; //! output hist
77   TH1F         *fHistClusterMapITSSAokoutinzbadInAcc; //! output hist
78   TH1F         *fHistClusterMapModuleITSSAokInAcc; //! output hist
79   TH1F         *fHistClusterMapModuleITSSAbadInAcc; //! output hist
80   TH1F         *fHistClusterMapModuleITSSAnoclsInAcc; //! output hist
81   TH1F         *fHistPhiTPCInAcc; //! output hist
82   TH1F         *fHistPtTPC; //! output hist
83   TH1F         *fHistPtTPCInAcc; //! output hist
84   TH1F         *fHistPtITSMI2; //! output hist
85   TH1F         *fHistPtITSMI3; //! output hist
86   TH1F         *fHistPtITSMI4; //! output hist
87   TH1F         *fHistPtITSMI5; //! output hist
88   TH1F         *fHistPtITSMI6; //! output hist
89   TH1F         *fHistPtITSMISPD; //! output hist
90   TH1F         *fHistPtITSMIoneSPD; //! output hist
91   TH1F         *fHistPtITSMI2InAcc; //! output hist
92   TH1F         *fHistPtITSMI3InAcc; //! output hist
93   TH1F         *fHistPtITSMI4InAcc; //! output hist
94   TH1F         *fHistPtITSMI5InAcc; //! output hist
95   TH1F         *fHistPtITSMI6InAcc; //! output hist
96   TH1F         *fHistPtITSMISPDInAcc; //! output hist
97   TH1F         *fHistPtITSMIoneSPDInAcc; //! output hist
98   TH1F         *fHistPtITSMIokbadoutinz6; //! output hist
99   TH1F         *fHistPtITSMIokbadoutinz4InAcc; //! output hist
100   TH1F         *fHistPtITSMIokbadoutinz5InAcc; //! output hist
101   TH1F         *fHistPtITSMIokbadoutinz6InAcc; //! output hist
102   TH1F         *fHistPhiITSMIokbadoutinz6InAcc; //! output hist
103   TNtuple      *fNtupleESDTracks; //! output ntuple
104   TNtuple      *fNtupleITSAlignExtra; //! output ntuple
105   TNtuple      *fNtupleITSAlignSPDTracklets; //! output ntuple
106   Int_t         fCountsPerPtBin[10]; // track per pt bin
107
108  private:    
109
110   AliAnalysisTaskITSTrackingCheck(const AliAnalysisTaskITSTrackingCheck&); // not implemented
111   AliAnalysisTaskITSTrackingCheck& operator=(const AliAnalysisTaskITSTrackingCheck&); // not implemented
112   
113
114   Int_t NumberOfITSClustersMC(Int_t label) const;
115   Double_t ParticleImpParMC(TParticle *part,AliESDVertex *vert,Double_t bzT) const;
116   Bool_t SelectPt(Double_t pt);
117
118   ClassDef(AliAnalysisTaskITSTrackingCheck,4); // ITS tracks analysis
119 };
120
121 #endif