]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PHOS/AliPHOSReconstructor.h
Minor
[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.12  2007/08/28 12:55:08  policheh
12  * Loaders removed from the reconstruction code (C.Cheshkov)
13  *
14  * Revision 1.11  2007/07/24 17:20:35  policheh
15  * Usage of RecoParam objects instead of hardcoded parameters in reconstruction.
16  * (See $ALICE_ROOT/PHOS/macros/BeamTest2006/RawReconstruction.C).
17  *
18  * Revision 1.10  2007/07/11 13:43:30  hristov
19  * New class AliESDEvent, backward compatibility with the old AliESD (Christian)
20  *
21  * Revision 1.9  2006/11/15 16:05:03  kharlov
22  * New FillESD() for raw data is added
23  *
24  * Revision 1.8  2005/05/28 14:19:04  schutz
25  * Compilation warnings fixed by T.P.
26  *
27  */
28
29 //_________________________________________________________________________
30 //  Wrapping class for reconstruction
31 //*--
32 //*-- Author: Yves Schutz (SUBATECH) 
33 // Reconstruction class. Redesigned from the old AliReconstructionner class and 
34 // derived from STEER/AliReconstructor. 
35 //_________________________________________________________________________
36
37 // --- ROOT system ---
38
39 #include "AliReconstructor.h" 
40 class AliPHOSDigitizer ;
41 class AliPHOSClusterizer ;
42 class AliPHOSTrackSegmentMaker ;
43 class AliPHOSPID ;
44 class AliPHOSSDigitizer ;
45 class AliESDEvent ;
46 class AliRawReader; 
47 class AliPHOSRecoParam;
48 class AliPHOSGeometry;
49
50 // --- Standard library ---
51
52 // --- AliRoot header files ---
53
54 class AliPHOSReconstructor : public AliReconstructor {
55
56 public:
57
58   AliPHOSReconstructor() ; //ctor            
59   AliPHOSReconstructor(const AliPHOSReconstructor & rec) :
60     AliReconstructor(rec),
61     fGeom(rec.fGeom)
62     {
63     // cpy ctor: 
64     // requested by the Coding Convention
65     Fatal("cpy ctor", "not implemented") ;
66   }
67   ~AliPHOSReconstructor() ; //dtor            
68   static void                SetDebug()   { fgDebug = kTRUE ; }
69   static void                ResetDebug() { fgDebug = kFALSE ; }
70   static Bool_t              Debug() { return fgDebug ; }
71   AliTracker *CreateTracker(AliRunLoader* runLoader) const;
72   using AliReconstructor::FillESD;
73   virtual void               FillESD(TTree* digitsTree, TTree* clustersTree, 
74                                      AliESDEvent* esd) const;
75   using AliReconstructor::Reconstruct;
76   virtual Bool_t             HasLocalReconstruction() const {return kTRUE;};
77   virtual void               Reconstruct(TTree* digitsTree, TTree* clustersTree) const;
78   //  virtual void               Reconstruct(AliRunLoader* runLoader) const ;
79   //  virtual void               Reconstruct(AliRunLoader* runLoader, AliRawReader * rawreader) 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,3)  // PHOS Reconstruction class
104
105 }; 
106
107 #endif // ALIPHOSRECONSTRUCTOR_H