]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - EMCAL/AliEMCALReconstructor.h
adding a comment on the event-by-event eta-phi histogram for general use
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALReconstructor.h
... / ...
CommitLineData
1#ifndef ALIEMCALRECONSTRUCTOR_H
2#define ALIEMCALRECONSTRUCTOR_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//_________________________________________________________________________
9// Wrapping class for reconstruction
10//*--
11//*-- Author: Yves Schutz (SUBATECH)
12//*-- Dmitri Peressounko (SUBATECH & Kurchatov Institute)
13// Reconstruction class. Redesigned from the old AliReconstructionner class and
14// derived from STEER/AliReconstructor.
15//
16//-- Aleksei Pavlinov : added staf for EMCAL jet trigger 9Apr 25, 2008)
17// : fgDigitsArr should read just once at event
18
19
20// --- ROOT system ---
21class TList;
22class TClonesArray;
23class TTree;
24
25
26// --- AliRoot header files ---
27#include "AliReconstructor.h"
28#include "AliEMCALTracker.h"
29#include "AliEMCALRecParam.h"
30
31
32class AliEMCALDigitizer ;
33class AliEMCALClusterizer ;
34class AliEMCALSDigitizer ;
35class AliEMCALRecParam;
36class AliESDEvent ;
37class AliRawReader ;
38class AliEMCALRawUtils;
39class AliEMCALGeometry;
40class AliEMCALCalibData ;
41class AliCaloCalibPedestal ;
42class AliEMCALTriggerElectronics;
43
44// --- Standard library ---
45
46
47
48class AliEMCALReconstructor : public AliReconstructor {
49
50public:
51
52 AliEMCALReconstructor() ; //ctor
53
54 virtual ~AliEMCALReconstructor() ; //dtor
55
56 virtual void Init() {;}
57
58 Bool_t Debug() const { return fDebug ; }
59
60 using AliReconstructor::FillESD;
61 virtual void FillESD(TTree* digitsTree, TTree* clustersTree,
62 AliESDEvent* esd) const;
63 AliTracker* CreateTracker () const
64 {return new AliEMCALTracker;}
65 using AliReconstructor::Reconstruct;
66 virtual void Reconstruct(TTree* digitsTree, TTree* clustersTree) const;
67
68 virtual Bool_t HasDigitConversion() const {return kTRUE;};
69 virtual void ConvertDigits(AliRawReader* rawReader, TTree* digitsTree) const;
70
71 static void SetRecParam(AliEMCALRecParam * recParam){ fgkRecParam = recParam;}
72
73 void ReadDigitsArrayFromTree(TTree *digitsTree) const;
74
75 TList *GetList() const {return fList;}
76
77 static const AliEMCALRecParam* GetRecParam() {
78 return dynamic_cast<const AliEMCALRecParam*>(AliReconstructor::GetRecoParam(6)); }
79
80 static TClonesArray* GetDigitsArr() {return fgDigitsArr;}
81
82 void FillMisalMatrixes(AliESDEvent* esd)const ;
83
84private:
85
86 AliEMCALReconstructor(const AliEMCALReconstructor &); //Not implemented
87 AliEMCALReconstructor & operator = (const AliEMCALReconstructor &); //Not implemented
88
89 Bool_t fDebug; //! verbosity controller
90
91 TList *fList; //! List of hists (only for trigger now)
92 AliEMCALGeometry *fGeom; // pointer to the EMCAL geometry
93
94 static AliEMCALClusterizer* fgClusterizer; // clusterizer
95 static const AliEMCALRecParam* fgkRecParam; // reconstruction
96 // parameters for EMCAL
97 static AliEMCALRawUtils* fgRawUtils; // raw utilities class -
98 // only need one per reco
99 static TClonesArray* fgDigitsArr; // Array with EMCAL digits
100 AliEMCALCalibData * fCalibData ; //! Calibration database if aval
101 AliCaloCalibPedestal * fPedestalData ; //! Tower status database if aval
102
103 static AliEMCALTriggerElectronics* fgTriggerProcessor;
104
105 ClassDef(AliEMCALReconstructor,9) // Reconstruction algorithm class (Base Class)
106
107};
108
109#endif // ALIEMCALRECONSTRUCTOR_H
110