]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG1/AliTrackComparisonESD.h
removing osolete macros
[u/mrichter/AliRoot.git] / PWG1 / AliTrackComparisonESD.h
1 #ifndef ALITRACKCOMAPRISONESD_H
2 #define ALITRACKCOMAPRISONESD_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 ////
10
11 #include "AliAnalysisTask.h"
12 #include "TObjArray.h"
13 #include "TRefArray.h"
14 class TGeoHMatrix;
15 class AliEMCALGeometry;
16 class AliESDEvent;
17 class AliESDfriend;
18
19 class AliESDtrack;
20 class AliESDfriendTrack;
21 class AliESDtrackCuts;
22
23 class AliESDCaloCells;
24 class AliCalorimeterUtils;
25
26 class AliTrackComparison;
27
28 class AliTrackComparisonESD:public AliAnalysisTask {
29 public:
30   AliTrackComparisonESD();
31   AliTrackComparisonESD(const char *name);
32   virtual ~AliTrackComparisonESD();
33
34   virtual void ConnectInputData(Option_t *option);
35   virtual void CreateOutputObjects();
36   virtual void Exec(Option_t *option);
37   virtual void Terminate(Option_t *option);
38   virtual void FinishTaskOutput();
39   void         SetDebugOuputhPath(const char * name){fDebugOutputPath=name;}
40   void         SetOcdbPath(const char *path){fOcdbPath=path;}
41   TString      GetOcdbPath(){return fOcdbPath;}
42
43   Bool_t SetupEvent();
44   void ProcessTOF(AliESDtrack *track, AliESDfriendTrack *friendTrack, Double_t *vPos);
45   void ProcessEMCAL(AliESDtrack *track, AliESDfriendTrack *friendTrack, TRefArray *clusters,AliESDCaloCells *cells, Double_t *vPos);
46   void ProcessHMPID(AliESDtrack *track, AliESDfriendTrack *friendTrack,Double_t *vPos);
47
48   TObjArray *GetComparisonOutput() {return fOutput;}
49
50   void   InitCaloUtil();
51   void   RecalClusterPos(TRefArray *clusters, AliESDCaloCells *cells);
52   void   SetResidualCut(Double_t cutR) {fCutR=cutR;}
53
54 protected:
55   virtual Long64_t Merge(TCollection *li);
56   virtual void     Analyze();
57   void             RegisterDebugOutput();
58 private:
59   AliESDEvent *fESD;              //! current esd
60   AliESDtrackCuts *fESDCuts;      //! esd track cuts
61   AliESDfriend *fESDfriend;       //! current esd friend
62   Int_t fCurrentRun;              //Current run number
63   TString      fDebugOutputPath;  // debug output path
64   TString      fOcdbPath;
65   
66   TObjArray    *fOutput;          //Output array for fEMCAL,fHMPID,fTOF
67   AliTrackComparison *fEMCAL;     // EMCAL track comparison
68   AliTrackComparison *fHMPID;     //HMPID track comparison
69   AliTrackComparison *fTOF;       // TOF track comparison
70   //
71   AliEMCALGeometry *fGeom;        //EMCAL geometry for position calculation
72   Double_t  fCutR;                //Track residual cut
73
74   TGeoHMatrix *fTransMatrix[4];   //EMCal misalignment matrices
75   AliCalorimeterUtils *fCaloUtil; //EMCal utils to exclude bad cells
76
77   AliTrackComparisonESD(const AliTrackComparisonESD&);
78   AliTrackComparisonESD& operator=(const AliTrackComparisonESD&);
79
80
81   ClassDef(AliTrackComparisonESD,2)
82 };
83
84 #endif