]> git.uio.no Git - u/mrichter/AliRoot.git/blame - EMCAL/AliEMCALReconstructor.h
Moving changes in AliTestShuttle.cxx/h in $ALICE_ROOT/SHUTTLE/TestShuttle
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALReconstructor.h
CommitLineData
f6019cda 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
f6019cda 14// --- ROOT system ---
85c25c2e 15class TList;
16class TClonesArray;
17class TTree;
18
0c5b726e 19
20// --- AliRoot header files ---
21#include "AliReconstructor.h"
22#include "AliEMCALTracker.h"
23#include "AliEMCALRecParam.h"
24
25
f6019cda 26class AliEMCALDigitizer ;
27class AliEMCALClusterizer ;
f6019cda 28class AliEMCALSDigitizer ;
c47157cd 29class AliEMCALRecParam;
af885e0f 30class AliESDEvent ;
1d59832c 31class AliRawReader ;
65bdc82f 32class AliEMCALRawUtils;
33class AliEMCALGeometry;
0c5b726e 34class AliEMCALCalibData ;
f6019cda 35
36// --- Standard library ---
37
0c5b726e 38
f6019cda 39
40class AliEMCALReconstructor : public AliReconstructor {
41
42public:
43
44 AliEMCALReconstructor() ; //ctor
f6019cda 45
46 virtual ~AliEMCALReconstructor() ; //dtor
47
85c25c2e 48 virtual void Init();
4800667c 49 Bool_t Debug() const { return fDebug ; }
50
51 using AliReconstructor::FillESD;
c47157cd 52 virtual void FillESD(TTree* digitsTree, TTree* clustersTree,
53 AliESDEvent* esd) const;
d76c31f4 54 AliTracker* CreateTracker () const
55 {return new AliEMCALTracker;}
4800667c 56 using AliReconstructor::Reconstruct;
c47157cd 57 virtual void Reconstruct(TTree* digitsTree, TTree* clustersTree) const;
58
59 virtual Bool_t HasDigitConversion() const {return kTRUE;};
60 virtual void ConvertDigits(AliRawReader* rawReader, TTree* digitsTree) const;
a68156e6 61
56d6dcc9 62 static void SetRecParam(AliEMCALRecParam * recParam){ fgkRecParam = recParam;}
85c25c2e 63
64 void ReadDigitsArrayFromTree(TTree *digitsTree) const;
c47157cd 65
85c25c2e 66 TList *GetList() {return fList;}
67
0832a2bf 68 static const AliEMCALRecParam* GetRecParam() {
69 return dynamic_cast<const AliEMCALRecParam*>(AliReconstructor::GetRecoParam(6)); }
70
85c25c2e 71 static TClonesArray* GetDigitsArr() {return fgDigitsArr;}
f6019cda 72
0c5b726e 73 void FillMisalMatrixes(AliESDEvent* esd)const ;
74
f6019cda 75private:
76
3abc001d 77 AliEMCALReconstructor(const AliEMCALReconstructor &); //Not implemented
78 AliEMCALReconstructor & operator = (const AliEMCALReconstructor &); //Not implemented
79
f6019cda 80 Bool_t fDebug; //! verbosity controller
9517d886 81
85c25c2e 82 TList *fList; //! List of hists (only for trigger now)
83 AliEMCALGeometry *fGeom; // pointer to the EMCAL geometry
84
9517d886 85 static AliEMCALClusterizer* fgClusterizer; // clusterizer
0832a2bf 86 static const AliEMCALRecParam* fgkRecParam; // reconstruction
87 // parameters for EMCAL
65bdc82f 88 static AliEMCALRawUtils* fgRawUtils; // raw utilities class -
89 // only need one per reco
85c25c2e 90 static TClonesArray* fgDigitsArr; // Array with EMCAL digits
0c5b726e 91 AliEMCALCalibData * fCalibData ; //! Calibration database if aval
c47157cd 92
0c5b726e 93 ClassDef(AliEMCALReconstructor,7) // Reconstruction algorithm class (Base Class)
f6019cda 94
95};
96
97#endif // ALIEMCALRECONSTRUCTOR_H