]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGPP/AliTrackComparisonESD.h
changes in AddTask pPb
[u/mrichter/AliRoot.git] / PWGPP / AliTrackComparisonESD.h
CommitLineData
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"
14class TGeoHMatrix;
15class AliEMCALGeometry;
16class AliESDEvent;
17class AliESDfriend;
18
19class AliESDtrack;
20class AliESDfriendTrack;
21class AliESDtrackCuts;
22
23class AliESDCaloCells;
53ae303f 24class AliCalorimeterUtils;
bdf94dc3 25
26class AliTrackComparison;
27
28class AliTrackComparisonESD:public AliAnalysisTask {
29public:
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;}
bdf94dc3 40
41 Bool_t SetupEvent();
42 void ProcessTOF(AliESDtrack *track, AliESDfriendTrack *friendTrack, Double_t *vPos);
53ae303f 43 void ProcessEMCAL(AliESDtrack *track, AliESDfriendTrack *friendTrack, TRefArray *clusters,AliESDCaloCells *cells, Double_t *vPos);
bdf94dc3 44 void ProcessHMPID(AliESDtrack *track, AliESDfriendTrack *friendTrack,Double_t *vPos);
45
46 TObjArray *GetComparisonOutput() {return fOutput;}
47
53ae303f 48 void InitCaloUtil();
49 void RecalClusterPos(TRefArray *clusters, AliESDCaloCells *cells);
50 void SetResidualCut(Double_t cutR) {fCutR=cutR;}
bdf94dc3 51
52protected:
53 virtual Long64_t Merge(TCollection *li);
54 virtual void Analyze();
55 void RegisterDebugOutput();
56private:
53ae303f 57 AliESDEvent *fESD; //! current esd
58 AliESDtrackCuts *fESDCuts; //! esd track cuts
59 AliESDfriend *fESDfriend; //! current esd friend
60 Int_t fCurrentRun; //Current run number
61 TString fDebugOutputPath; // debug output path
bdf94dc3 62
53ae303f 63 TObjArray *fOutput; //Output array for fEMCAL,fHMPID,fTOF
64 AliTrackComparison *fEMCAL; // EMCAL track comparison
65 AliTrackComparison *fHMPID; //HMPID track comparison
66 AliTrackComparison *fTOF; // TOF track comparison
bdf94dc3 67 //
53ae303f 68 AliEMCALGeometry *fGeom; //EMCAL geometry for position calculation
69 Double_t fCutR; //Track residual cut
70
71 TGeoHMatrix *fTransMatrix[4]; //EMCal misalignment matrices
72 AliCalorimeterUtils *fCaloUtil; //EMCal utils to exclude bad cells
bdf94dc3 73
74 AliTrackComparisonESD(const AliTrackComparisonESD&);
75 AliTrackComparisonESD& operator=(const AliTrackComparisonESD&);
76
77
53ae303f 78 ClassDef(AliTrackComparisonESD,2)
bdf94dc3 79};
80
81#endif