]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ANALYSIS/TenderSupplies/AliTrackFixTenderSupply.h
Added debug mode + few fixes
[u/mrichter/AliRoot.git] / ANALYSIS / TenderSupplies / AliTrackFixTenderSupply.h
1 #ifndef ALITRACKFIXTENDERSUPPLY_H
2 #define ALITRACKFIXTENDERSUPPLY_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 ////////////////////////////////////////////////////////////////////////
8 //                                                                    //
9 //  Apply on-the-fly fix to tracks                                    //
10 //                                                                    //
11 //  19/06/2012: RS: Add 1/pt shift from AODB to TPC and TPC-ITS       //
12 //                  Optionally correct also track coordinate          //
13 //                                                                    //
14 ////////////////////////////////////////////////////////////////////////
15
16 #include <TString.h>
17 #include "AliTenderSupply.h"
18
19
20 class AliESDVertex;
21 class AliExternalTrackParam;
22 class AliOADBContainer;
23 class AliESDtrack;
24 class AliOADBTrackFix;
25
26 class AliTrackFixTenderSupply: public AliTenderSupply {
27   
28 public:
29   //
30   AliTrackFixTenderSupply();
31   AliTrackFixTenderSupply(const char *name, const AliTender *tender=NULL);
32   virtual ~AliTrackFixTenderSupply();
33   virtual  void ProcessEvent();
34   virtual  void Init() {}
35   //
36   Double_t GetSideAFraction(const AliESDtrack* track) const;
37   void     CorrectTrackPtInv(AliExternalTrackParam* trc, int mode, double sideAfraction, double phi) const;
38   Bool_t   GetRunCorrections(int run);
39   Bool_t   LoadOADBObjects();
40   //
41   void     SetOADBObjPath(const char* path)        { fOADBObjPath = path; }
42   void     SetOADBObjName(const char* name)        { fOADBObjName = name; }
43   TString& GetOADBObjPath()                 const  { return (TString&)fOADBObjPath; }
44   TString& GetOADBObjName()                 const  { return (TString&)fOADBObjName; }
45   //
46   void     SetDebugLevel(Int_t l=1)                {fDebug = l;}
47   Int_t    GetDebugLevel()                  const  {return fDebug;}
48   //
49 private:
50   
51   AliTrackFixTenderSupply(const AliTrackFixTenderSupply&c);
52   AliTrackFixTenderSupply& operator= (const AliTrackFixTenderSupply&c);
53   //
54   Int_t             fDebug;                  // Debug level
55   Double_t          fBz;                     // mag field from ESD
56   AliOADBTrackFix*  fParams;                 // parameters for current run
57   TString           fOADBObjPath;            // path of file with parameters to use, starting from OADB dir
58   TString           fOADBObjName;            // name of the corrections object in the OADB container
59   AliOADBContainer* fOADBCont;               // OADB container with parameters collection
60   //
61   ClassDef(AliTrackFixTenderSupply, 1);  // track fixing tender task 
62 };
63
64
65 #endif
66