]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG1/ITS/AliAnalysisTaskSEImpParRes.h
Little fix
[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   void SetUseDiamond(Bool_t use=kFALSE) { fUseDiamond=use; return; }
36
37  private:
38   
39   AliAnalysisTaskSEImpParRes(const AliAnalysisTaskSEImpParRes &source);
40   AliAnalysisTaskSEImpParRes& operator=(const AliAnalysisTaskSEImpParRes& source);  
41   
42   Int_t PtBin(Double_t pt) const;
43   Int_t SinThetaBin(Double_t sintheta) const;
44   Double_t Getd0HistRange(Int_t i) const;
45   Int_t PhiBin(Double_t phi) const;
46   Int_t ClusterTypeOnITSLayer(AliESDtrack *t,Int_t layer) const;
47   Bool_t fReadMC;       // flag used to switch on/off MC reading
48   Int_t  fSelectedPdg;  // only for a given particle species (-1 takes all tracks)
49   Bool_t fUseDiamond;   // use diamond constraint in primary vertex
50   TList *fOutputitspureSARec;  //! ITS StandAlone: with track in vtx 
51   TList *fOutputitspureSASkip; //! ITS StandAlone: w/o track in vtx
52   TList *fOutputallPointRec;   //! ITS+TPC: 6 ITScls, with track in vtx      
53   TList *fOutputallPointSkip;  //! ITS+TPC: 6 ITScls, w/o track in vtx      
54   TList *fOutputpartPointRec;   //! ITS+TPC: >=1 SPD, with track in vtx
55   TList *fOutputpartPointSkip;  //! ITS+TPC: >=1 SPD, w/o track in vtx
56   TList *fOutputonepointSPDRec; //! At least one point on SPD, with track in vtx
57   TList *fOutputonepointSPDSkip;//! At least one point on SPD w/o track in vtx
58   TList *fOutputpostvTracRec;   //! ITS+TPC: >=1 SPD, positives, with track in vtx
59   TList *fOutputpostvTracSkip;  //! ITS+TPC: >=1 SPD, positives, w/o track in vtx
60   TList *fOutputnegtvTracRec;   //! ITS+TPC: >=1 SPD, negatives, with track in vtx
61   TList *fOutputnegtvTracSkip;  //! ITS+TPC: >=1 SPD, negatives, w/o track in vtx
62   TList *fOutputpullAllpointRec; //! pull ITS+TPC: 6 ITScls, with track in vtx
63   TList *fOutputpullAllpointSkip;//! pull ITS+TPC: 6 ITScls, w/o track in vtx
64   TList *fOutputOnlyRefitRec;   //! ITS+TPC: any ITScls, with track in vtx
65   TList *fOutputOnlyRefitSkip; //! ITS+TPC: any ITScls, w/o track in vtx
66   TList *fOutputSinThetaRec;              //! ITS+TPC: TH2F(pt,sintheta), with track in vtx
67   TList *fOutputSinThetaSkip;             //! ITS+TPC: TH2F(pt,sintheta), w/o track in vtx
68   TList *fOutputallPointTrue;    //!
69   TList *fOutputpostvTracTrue;   //!
70   TList *fOutputnegtvTracTrue;   //!
71   TList *fOutputpullAllpointTrue;  //!
72   TList *fOutputphiAllpointSkip;  //!
73   TList *fOutputphiPostvtracSkip;  //!
74   TList *fOutputphiNegtvtracSkip;  //!
75   TList *fOutputclusterTypeSPD01Skip;  //!
76   TList *fOutputclusterTypeSPD02Skip;  //!
77   TList *fOutputclusterTypeSPD03Skip;  //!
78   TList *fOutputclusterTypeSPD11Skip;  //!
79   TList *fOutputclusterTypeSPD12Skip;  //!
80   TList *fOutputclusterTypeSPD13Skip;  //!
81   TList *fOutputPt;     //!           
82   TH1F  *fNentries;   //! histogram of number of events
83   TH1F  *fEstimVtx;   //! vertex resolution
84
85   ClassDef(AliAnalysisTaskSEImpParRes,2); // AliAnalysisTaskSE for the study of the impact parameter resolution
86 };
87
88 #endif