]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG1/ITS/AliAnalysisTaskSEImpParRes.h
New task for impact parameter resolution study
[u/mrichter/AliRoot.git] / PWG1 / ITS / AliAnalysisTaskSEImpParRes.h
1 #ifndef ALIANALYSISTASKSEIMPPARRES_H
2 #define ALIANALYSISTASKSEIMPPARRES_H
3
4 /* Copyright(c) 1998-2010, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 //*************************************************************************
8 // Class AliAnalysisTaskSEImpParRes
9 // AliAnalysisTaskSE for the study of the track impact parameter resolution
10 //
11 // Authors: xianbao.yuan@pd.infn.it, andrea.dainese@pd.infn.it
12 // 
13 //*************************************************************************
14
15 class TList;
16 class TH1F;
17
18 #include "AliAnalysisTaskSE.h"
19
20 class AliAnalysisTaskSEImpParRes : public AliAnalysisTaskSE {
21
22  public:
23   
24   AliAnalysisTaskSEImpParRes();
25   AliAnalysisTaskSEImpParRes(const char *name);
26   virtual ~AliAnalysisTaskSEImpParRes();
27   
28   
29   // Implementation of interface methods
30   virtual void UserCreateOutputObjects();
31   virtual void UserExec(Option_t *option);
32   virtual void Terminate(Option_t *option);
33   void SetReadMC(Bool_t readMC) { fReadMC=readMC; return; }
34   void SetSelectedPdg(Int_t pdg) { fSelectedPdg=pdg; return; }
35
36  private:
37   
38   AliAnalysisTaskSEImpParRes(const AliAnalysisTaskSEImpParRes &source);
39   AliAnalysisTaskSEImpParRes& operator=(const AliAnalysisTaskSEImpParRes& source);  
40   
41   Int_t PtBin(Double_t pt) const;
42
43   Bool_t fReadMC;       // flag used to switch on/off MC reading
44   Int_t  fSelectedPdg;  // only for a given particle species (-1 takes all tracks)
45   TList *fOutputitspureSARec;  //! ITS StandAlone: with track in vtx 
46   TList *fOutputitspureSASkip; //! ITS StandAlone: w/o track in vtx
47   TList *fOutputallPointRec;   //! ITS+TPC: 6 ITScls, with track in vtx      
48   TList *fOutputallPointSkip;  //! ITS+TPC: 6 ITScls, w/o track in vtx      
49   TList *fOutputpartPointRec;   //! ITS+TPC: >=1 SPD, with track in vtx
50   TList *fOutputpartPointSkip;  //! ITS+TPC: >=1 SPD, w/o track in vtx
51   TList *fOutputonepointSPDRec; //! At least one point on SPD, with track in vtx
52   TList *fOutputonepointSPDSkip;//! At least one point on SPD w/o track in vtx
53   TList *fOutputpostvTracRec;   //! ITS+TPC: >=1 SPD, positives, with track in vtx
54   TList *fOutputpostvTracSkip;  //! ITS+TPC: >=1 SPD, positives, w/o track in vtx
55   TList *fOutputnegtvTracRec;   //! ITS+TPC: >=1 SPD, negatives, with track in vtx
56   TList *fOutputnegtvTracSkip;  //! ITS+TPC: >=1 SPD, negatives, w/o track in vtx
57   TList *fOutputpullAllpointRec; //! pull ITS+TPC: 6 ITScls, with track in vtx
58   TList *fOutputpullAllpointSkip;//! pull ITS+TPC: 6 ITScls, w/o track in vtx
59   TList *fOutputOnlyRefitRec;   //! ITS+TPC: any ITScls, with track in vtx
60   TList *fOutputOnlyRefitSkip; //! ITS+TPC: any ITScls, w/o track in vtx
61   TList *fOutputPt;     //!           
62   TH1F  *fNentries;   //! histogram of number of events
63   TH1F  *fEstimVtx;   //! vertex resolution
64
65   ClassDef(AliAnalysisTaskSEImpParRes,1); // AliAnalysisTaskSE for the study of the impact parameter resolution
66 };
67
68 #endif