]>
Commit | Line | Data |
---|---|---|
f444a19f | 1 | #ifndef ALIPHOSRECONSTRUCTOR_H |
2 | #define ALIPHOSRECONSTRUCTOR_H | |
d15a28e7 | 3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6ad0bfa0 | 6 | /* $Id$ */ |
7 | ||
702ab87e | 8 | /* History of cvs commits: |
9 | * | |
10 | * $Log$ | |
ea3d6a78 | 11 | * Revision 1.15 2007/10/01 20:24:08 kharlov |
12 | * Memory leaks fixed | |
13 | * | |
e68222ce | 14 | * Revision 1.14 2007/09/26 14:22:18 cvetan |
15 | * Important changes to the reconstructor classes. Complete elimination of the run-loaders, which are now steered only from AliReconstruction. Removal of the corresponding Reconstruct() and FillESD() methods. | |
16 | * | |
d76c31f4 | 17 | * Revision 1.13 2007/08/30 10:40:27 cvetan |
18 | * Minor | |
19 | * | |
64c8ff4e | 20 | * Revision 1.12 2007/08/28 12:55:08 policheh |
21 | * Loaders removed from the reconstruction code (C.Cheshkov) | |
22 | * | |
9a2cdbdf | 23 | * Revision 1.11 2007/07/24 17:20:35 policheh |
24 | * Usage of RecoParam objects instead of hardcoded parameters in reconstruction. | |
25 | * (See $ALICE_ROOT/PHOS/macros/BeamTest2006/RawReconstruction.C). | |
26 | * | |
3799bcb5 | 27 | * Revision 1.10 2007/07/11 13:43:30 hristov |
28 | * New class AliESDEvent, backward compatibility with the old AliESD (Christian) | |
29 | * | |
af885e0f | 30 | * Revision 1.9 2006/11/15 16:05:03 kharlov |
31 | * New FillESD() for raw data is added | |
32 | * | |
dd7ee508 | 33 | * Revision 1.8 2005/05/28 14:19:04 schutz |
34 | * Compilation warnings fixed by T.P. | |
35 | * | |
702ab87e | 36 | */ |
37 | ||
b2a60966 | 38 | //_________________________________________________________________________ |
9a6ec61a | 39 | // Wrapping class for reconstruction |
e68222ce | 40 | //-- |
41 | //-- Author: Yves Schutz (SUBATECH) | |
dfe0be07 | 42 | // Reconstruction class. Redesigned from the old AliReconstructionner class and |
43 | // derived from STEER/AliReconstructor. | |
44 | //_________________________________________________________________________ | |
d15a28e7 | 45 | |
46 | // --- ROOT system --- | |
47 | ||
ea3d6a78 | 48 | #include <Riostream.h> |
dfe0be07 | 49 | #include "AliReconstructor.h" |
ea3d6a78 | 50 | #include "AliPHOSRecoParamEmc.h" |
51 | #include "AliPHOSRecoParamCpv.h" | |
7acf6008 | 52 | class AliPHOSDigitizer ; |
53 | class AliPHOSClusterizer ; | |
8d8258f6 | 54 | class AliPHOSClusterizerv1 ; |
7acf6008 | 55 | class AliPHOSTrackSegmentMaker ; |
56 | class AliPHOSPID ; | |
57 | class AliPHOSSDigitizer ; | |
af885e0f | 58 | class AliESDEvent ; |
dd7ee508 | 59 | class AliRawReader; |
3799bcb5 | 60 | class AliPHOSRecoParam; |
9a2cdbdf | 61 | class AliPHOSGeometry; |
d15a28e7 | 62 | |
63 | // --- Standard library --- | |
64 | ||
65 | // --- AliRoot header files --- | |
66 | ||
dfe0be07 | 67 | class AliPHOSReconstructor : public AliReconstructor { |
d15a28e7 | 68 | |
69 | public: | |
70 | ||
f444a19f | 71 | AliPHOSReconstructor() ; //ctor |
9a2cdbdf | 72 | AliPHOSReconstructor(const AliPHOSReconstructor & rec) : |
73 | AliReconstructor(rec), | |
74 | fGeom(rec.fGeom) | |
75 | { | |
7acf6008 | 76 | // cpy ctor: |
839ffcb3 | 77 | // requested by the Coding Convention |
f1611b7c | 78 | Fatal("cpy ctor", "not implemented") ; |
839ffcb3 | 79 | } |
e68222ce | 80 | virtual ~AliPHOSReconstructor() ; //dtor |
81 | ||
2e60107f | 82 | static void SetDebug() { fgDebug = kTRUE ; } |
83 | static void ResetDebug() { fgDebug = kFALSE ; } | |
84 | static Bool_t Debug() { return fgDebug ; } | |
d76c31f4 | 85 | AliTracker *CreateTracker() const; |
702ab87e | 86 | using AliReconstructor::FillESD; |
9a2cdbdf | 87 | virtual void FillESD(TTree* digitsTree, TTree* clustersTree, |
88 | AliESDEvent* esd) const; | |
702ab87e | 89 | using AliReconstructor::Reconstruct; |
9a2cdbdf | 90 | virtual void Reconstruct(TTree* digitsTree, TTree* clustersTree) const; |
9a2cdbdf | 91 | |
92 | virtual Bool_t HasDigitConversion() const {return kTRUE;}; | |
64c8ff4e | 93 | virtual void ConvertDigits(AliRawReader* rawReader, TTree* digitsTree) const; |
364de5c6 | 94 | |
f444a19f | 95 | AliPHOSReconstructor & operator = (const AliPHOSReconstructor & /*rvalue*/) { |
a3dfe79c | 96 | // assignement operator requested by coding convention but not needed |
35293055 | 97 | Fatal("operator =", "not implemented") ; |
839ffcb3 | 98 | return *this ; |
99 | } | |
100 | ||
c3824700 | 101 | static void SetRecoParamEmc(AliPHOSRecoParam * param){ fgkRecoParamEmc = param;} |
102 | static void SetRecoParamCpv(AliPHOSRecoParam * param){ fgkRecoParamCpv = param;} | |
3799bcb5 | 103 | |
ea3d6a78 | 104 | static const AliPHOSRecoParam* GetRecoParamEmc(){ |
105 | if (!fgkRecoParamEmc) { | |
106 | cerr<<"The Reconstruction parameters for EMC nonitialized - Used default one"<<endl; | |
107 | fgkRecoParamEmc = AliPHOSRecoParamEmc::GetEmcDefaultParameters(); | |
108 | } | |
109 | return fgkRecoParamEmc; | |
110 | } | |
111 | static const AliPHOSRecoParam* GetRecoParamCpv(){ | |
112 | if (!fgkRecoParamCpv) { | |
113 | cerr<<"The Reconstruction parameters for CPV nonitialized - Used default one"<<endl; | |
114 | fgkRecoParamCpv = AliPHOSRecoParamCpv::GetCpvDefaultParameters(); | |
115 | } | |
116 | return fgkRecoParamCpv; | |
117 | } | |
3799bcb5 | 118 | |
d15a28e7 | 119 | private: |
120 | ||
2e60107f | 121 | static Bool_t fgDebug ; //! verbosity controller |
e68222ce | 122 | static AliPHOSRecoParam *fgkRecoParamEmc; // reconstruction parameters for EMC |
123 | static AliPHOSRecoParam *fgkRecoParamCpv; // reconstruction parameters for EMC | |
124 | AliPHOSGeometry *fGeom; // pointer to the PHOS geometry | |
8d8258f6 | 125 | AliPHOSClusterizerv1 *fClusterizer; //! PHOS clusterizer |
7acf6008 | 126 | |
8d8258f6 | 127 | ClassDef(AliPHOSReconstructor,5) // PHOS Reconstruction class |
d15a28e7 | 128 | |
129 | }; | |
130 | ||
f444a19f | 131 | #endif // ALIPHOSRECONSTRUCTOR_H |