]>
Commit | Line | Data |
---|---|---|
bdf94dc3 | 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; | |
53ae303f | 24 | class AliCalorimeterUtils; |
bdf94dc3 | 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;} | |
53ae303f | 40 | void SetOcdbPath(const char *path){fOcdbPath=path;} |
41 | TString GetOcdbPath(){return fOcdbPath;} | |
bdf94dc3 | 42 | |
43 | Bool_t SetupEvent(); | |
44 | void ProcessTOF(AliESDtrack *track, AliESDfriendTrack *friendTrack, Double_t *vPos); | |
53ae303f | 45 | void ProcessEMCAL(AliESDtrack *track, AliESDfriendTrack *friendTrack, TRefArray *clusters,AliESDCaloCells *cells, Double_t *vPos); |
bdf94dc3 | 46 | void ProcessHMPID(AliESDtrack *track, AliESDfriendTrack *friendTrack,Double_t *vPos); |
47 | ||
48 | TObjArray *GetComparisonOutput() {return fOutput;} | |
49 | ||
53ae303f | 50 | void InitCaloUtil(); |
51 | void RecalClusterPos(TRefArray *clusters, AliESDCaloCells *cells); | |
52 | void SetResidualCut(Double_t cutR) {fCutR=cutR;} | |
bdf94dc3 | 53 | |
54 | protected: | |
55 | virtual Long64_t Merge(TCollection *li); | |
56 | virtual void Analyze(); | |
57 | void RegisterDebugOutput(); | |
58 | private: | |
53ae303f | 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; | |
bdf94dc3 | 65 | |
53ae303f | 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 | |
bdf94dc3 | 70 | // |
53ae303f | 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 | |
bdf94dc3 | 76 | |
77 | AliTrackComparisonESD(const AliTrackComparisonESD&); | |
78 | AliTrackComparisonESD& operator=(const AliTrackComparisonESD&); | |
79 | ||
80 | ||
53ae303f | 81 | ClassDef(AliTrackComparisonESD,2) |
bdf94dc3 | 82 | }; |
83 | ||
84 | #endif |