Fix in the last caall to CleanOwnPrimaryVertex
[u/mrichter/AliRoot.git] / PWG3 / vertexingHF / AliAnalysisTaskSEImproveITS.h
1 /* Copyright(c) 1998-2011, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
3 /* $Id$ */
4
5 #ifndef ALI_ANALYSIS_TASK_SE_IMPROVE_ITS_H
6 #define ALI_ANALYSIS_TASK_SE_IMPROVE_ITS_H
7
8 #include "AliAnalysisTaskSE.h"
9
10 class TGraph;
11 class TList;
12 class AliAODTrack;
13 class TClonesArray;
14 class TObjArray;
15 class AliESDVertex;
16 class AliVVertex;
17
18 class AliAnalysisTaskSEImproveITS:public AliAnalysisTaskSE {
19 public:
20   AliAnalysisTaskSEImproveITS();
21   AliAnalysisTaskSEImproveITS(const char *name,
22                               const char *resfileCurURI,
23                               const char *resfileUpgURI,
24                               Int_t ndebug);
25   virtual ~AliAnalysisTaskSEImproveITS();
26
27   // Implementation of interface methods
28   virtual void UserCreateOutputObjects();
29 //  virtual void Init();
30 //  virtual void LocalInit() {Init();}
31   virtual void UserExec(Option_t *option);
32 //  virtual void Terminate(Option_t *option);
33 private:
34   AliAnalysisTaskSEImproveITS(const AliAnalysisTaskSEImproveITS&);
35   AliAnalysisTaskSEImproveITS& operator=(const AliAnalysisTaskSEImproveITS&); 
36
37   // Helper functions
38   Double_t EvalGraph(const TGraph *graph,Double_t x) const; 
39   void SmearTrack(AliAODTrack *track,const TClonesArray *mcs);
40   AliESDVertex* RecalculateVertex(const AliVVertex *old,TObjArray *tracks,Double_t bField);
41
42   TGraph *fD0ZResPCur  ; // old pt dep. d0 res. in z for protons
43   TGraph *fD0ZResKCur  ; // old pt dep. d0 res. in z for kaons
44   TGraph *fD0ZResPiCur ; // old pt dep. d0 res. in z for pions
45   TGraph *fD0RPResPCur ; // old pt dep. d0 res. in rphi for protons
46   TGraph *fD0RPResKCur ; // old pt dep. d0 res. in rphi for kaons
47   TGraph *fD0RPResPiCur; // old pt dep. d0 res. in rphi for pions
48   TGraph *fPt1ResPCur  ; // old pt dep. 1/pt res. for protons
49   TGraph *fPt1ResKCur  ; // old pt dep. 1/pt res. for kaons
50   TGraph *fPt1ResPiCur ; // old pt dep. 1/pt res. for pions
51   TGraph *fD0ZResPUpg  ; // new pt dep. d0 res. in z for protons
52   TGraph *fD0ZResKUpg  ; // new pt dep. d0 res. in z for kaons
53   TGraph *fD0ZResPiUpg ; // new pt dep. d0 res. in z for pions
54   TGraph *fD0RPResPUpg ; // new pt dep. d0 res. in rphi for protons
55   TGraph *fD0RPResKUpg ; // new pt dep. d0 res. in rphi for kaons
56   TGraph *fD0RPResPiUpg; // new pt dep. d0 res. in rphi for pions
57   TGraph *fPt1ResPUpg  ; // new pt dep. 1/pt res. for protons
58   TGraph *fPt1ResKUpg  ; // new pt dep. 1/pt res. for kaons
59   TGraph *fPt1ResPiUpg ; // new pt dep. 1/pt res. for pions
60
61   TList   *fDebugOutput; //! collection of debug output
62   TNtuple *fDebugNtuple; //! debug send on output slot 1
63   Float_t *fDebugVars;   //! variables to store as degug info 
64   Int_t   fNDebug;       // Max number of debug entries into Ntuple
65   ClassDef(AliAnalysisTaskSEImproveITS,1);
66 };
67
68 #endif
69