]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PHOS/AliPHOSReconstructor.h
51775fc7a567b5330d7a66c5719bb77579547822
[u/mrichter/AliRoot.git] / PHOS / AliPHOSReconstructor.h
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.13  2007/08/30 10:40:27  cvetan
12  * Minor
13  *
14  * Revision 1.12  2007/08/28 12:55:08  policheh
15  * Loaders removed from the reconstruction code (C.Cheshkov)
16  *
17  * Revision 1.11  2007/07/24 17:20:35  policheh
18  * Usage of RecoParam objects instead of hardcoded parameters in reconstruction.
19  * (See $ALICE_ROOT/PHOS/macros/BeamTest2006/RawReconstruction.C).
20  *
21  * Revision 1.10  2007/07/11 13:43:30  hristov
22  * New class AliESDEvent, backward compatibility with the old AliESD (Christian)
23  *
24  * Revision 1.9  2006/11/15 16:05:03  kharlov
25  * New FillESD() for raw data is added
26  *
27  * Revision 1.8  2005/05/28 14:19:04  schutz
28  * Compilation warnings fixed by T.P.
29  *
30  */
31
32 //_________________________________________________________________________
33 //  Wrapping class for reconstruction
34 //*--
35 //*-- Author: Yves Schutz (SUBATECH) 
36 // Reconstruction class. Redesigned from the old AliReconstructionner class and 
37 // derived from STEER/AliReconstructor. 
38 //_________________________________________________________________________
39
40 // --- ROOT system ---
41
42 #include "AliReconstructor.h" 
43 class AliPHOSDigitizer ;
44 class AliPHOSClusterizer ;
45 class AliPHOSTrackSegmentMaker ;
46 class AliPHOSPID ;
47 class AliPHOSSDigitizer ;
48 class AliESDEvent ;
49 class AliRawReader; 
50 class AliPHOSRecoParam;
51 class AliPHOSGeometry;
52
53 // --- Standard library ---
54
55 // --- AliRoot header files ---
56
57 class AliPHOSReconstructor : public AliReconstructor {
58
59 public:
60
61   AliPHOSReconstructor() ; //ctor            
62   AliPHOSReconstructor(const AliPHOSReconstructor & rec) :
63     AliReconstructor(rec),
64     fGeom(rec.fGeom)
65     {
66     // cpy ctor: 
67     // requested by the Coding Convention
68     Fatal("cpy ctor", "not implemented") ;
69   }
70   ~AliPHOSReconstructor() ; //dtor            
71   static void                SetDebug()   { fgDebug = kTRUE ; }
72   static void                ResetDebug() { fgDebug = kFALSE ; }
73   static Bool_t              Debug() { return fgDebug ; }
74   AliTracker *CreateTracker() const;
75   using AliReconstructor::FillESD;
76   virtual void               FillESD(TTree* digitsTree, TTree* clustersTree, 
77                                      AliESDEvent* esd) const;
78   using AliReconstructor::Reconstruct;
79   virtual void               Reconstruct(TTree* digitsTree, TTree* clustersTree) const;
80
81   virtual Bool_t             HasDigitConversion() const {return kTRUE;};
82   virtual void               ConvertDigits(AliRawReader* rawReader, TTree* digitsTree) const;
83
84   AliPHOSReconstructor & operator = (const AliPHOSReconstructor & /*rvalue*/)  {
85     // assignement operator requested by coding convention but not needed
86     Fatal("operator =", "not implemented") ;
87     return *this ; 
88   }
89   
90   void SetRecoParamEmc(AliPHOSRecoParam * param){ fgkRecoParamEmc = param;}
91   void SetRecoParamCpv(AliPHOSRecoParam * param){ fgkRecoParamCpv = param;}
92
93   static const AliPHOSRecoParam* GetRecoParamEmc(){ return fgkRecoParamEmc;}
94   static const AliPHOSRecoParam* GetRecoParamCpv(){ return fgkRecoParamCpv;}
95
96 private:
97   
98   static Bool_t fgDebug ; //! verbosity controller
99   static AliPHOSRecoParam*   fgkRecoParamEmc; // reconstruction parameters for EMC
100   static AliPHOSRecoParam*   fgkRecoParamCpv; // reconstruction parameters for EMC
101   AliPHOSGeometry*           fGeom;           // pointer to the PHOS geometry
102
103   ClassDef(AliPHOSReconstructor,4)  // PHOS Reconstruction class
104
105 }; 
106
107 #endif // ALIPHOSRECONSTRUCTOR_H