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