Changing a default argument in the standard constructor (M. Van Leeuwen)
[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 ---
0832a2bf 15#include "AliEMCALRecParam.h"
f6019cda 16#include "AliReconstructor.h"
ba62dca0 17#include "AliEMCALTracker.h"
85c25c2e 18
19class TList;
20class TClonesArray;
21class TTree;
22
f6019cda 23class AliEMCALDigitizer ;
24class AliEMCALClusterizer ;
f6019cda 25class AliEMCALSDigitizer ;
c47157cd 26class AliEMCALRecParam;
af885e0f 27class AliESDEvent ;
1d59832c 28class AliRawReader ;
65bdc82f 29class AliEMCALRawUtils;
30class AliEMCALGeometry;
f6019cda 31
32// --- Standard library ---
33
34// --- AliRoot header files ---
35
36class AliEMCALReconstructor : public AliReconstructor {
37
38public:
39
40 AliEMCALReconstructor() ; //ctor
0a4cb131 41 AliEMCALReconstructor(const AliEMCALReconstructor & rec);
f6019cda 42
43 virtual ~AliEMCALReconstructor() ; //dtor
44
85c25c2e 45 virtual void Init();
4800667c 46 Bool_t Debug() const { return fDebug ; }
47
48 using AliReconstructor::FillESD;
c47157cd 49 virtual void FillESD(TTree* digitsTree, TTree* clustersTree,
50 AliESDEvent* esd) const;
d76c31f4 51 AliTracker* CreateTracker () const
52 {return new AliEMCALTracker;}
4800667c 53 using AliReconstructor::Reconstruct;
c47157cd 54 virtual void Reconstruct(TTree* digitsTree, TTree* clustersTree) const;
55
56 virtual Bool_t HasDigitConversion() const {return kTRUE;};
57 virtual void ConvertDigits(AliRawReader* rawReader, TTree* digitsTree) const;
a68156e6 58
f6019cda 59
60 AliEMCALReconstructor & operator = (const AliEMCALReconstructor & /*rvalue*/) {
61 // assignement operator requested by coding convention but not needed
62 Fatal("operator =", "not implemented") ;
63 return *this ;
64 }
65
56d6dcc9 66 static void SetRecParam(AliEMCALRecParam * recParam){ fgkRecParam = recParam;}
85c25c2e 67
68 void ReadDigitsArrayFromTree(TTree *digitsTree) const;
c47157cd 69
85c25c2e 70 TList *GetList() {return fList;}
71
0832a2bf 72 static const AliEMCALRecParam* GetRecParam() {
73 return dynamic_cast<const AliEMCALRecParam*>(AliReconstructor::GetRecoParam(6)); }
74
85c25c2e 75 static TClonesArray* GetDigitsArr() {return fgDigitsArr;}
f6019cda 76
77private:
78
79 Bool_t fDebug; //! verbosity controller
9517d886 80
85c25c2e 81 TList *fList; //! List of hists (only for trigger now)
82 AliEMCALGeometry *fGeom; // pointer to the EMCAL geometry
83
9517d886 84 static AliEMCALClusterizer* fgClusterizer; // clusterizer
0832a2bf 85 static const AliEMCALRecParam* fgkRecParam; // reconstruction
86 // parameters for EMCAL
65bdc82f 87 static AliEMCALRawUtils* fgRawUtils; // raw utilities class -
88 // only need one per reco
85c25c2e 89 static TClonesArray* fgDigitsArr; // Array with EMCAL digits
c47157cd 90
ba6de5ea 91 ClassDef(AliEMCALReconstructor,6) // Reconstruction algorithm class (Base Class)
f6019cda 92
93};
94
95#endif // ALIEMCALRECONSTRUCTOR_H