// Reconstruction class. Redesigned from the old AliReconstructionner class and
// derived from STEER/AliReconstructor.
//
-//-- Aleksei Pavlinov : added staf for EMCAL jet trigger 9Apr 25, 2008)
-// : fgDigitsArr should read just once at event
-
// --- ROOT system ---
-class TList;
class TClonesArray;
class TTree;
-
// --- AliRoot header files ---
#include "AliReconstructor.h"
#include "AliEMCALTracker.h"
#include "AliEMCALRecParam.h"
-
class AliEMCALDigitizer ;
class AliEMCALClusterizer ;
class AliEMCALSDigitizer ;
class AliEMCALCalibData ;
class AliCaloCalibPedestal ;
class AliEMCALTriggerElectronics;
-
-// --- Standard library ---
-
-
+class AliEMCALTriggerData;
class AliEMCALReconstructor : public AliReconstructor {
-
-public:
-
+
+ public:
+
AliEMCALReconstructor() ; //ctor
-
+
virtual ~AliEMCALReconstructor() ; //dtor
-
- virtual void Init() {;}
- virtual void InitClusterizer();
- Bool_t Debug() const { return fDebug ; }
-
+ virtual void Init() {;}
+ virtual void InitClusterizer() const;
+
using AliReconstructor::FillESD;
- virtual void FillESD(TTree* digitsTree, TTree* clustersTree,
- AliESDEvent* esd) const;
- AliTracker* CreateTracker () const
- {return new AliEMCALTracker;}
+ virtual void FillESD(TTree* digitsTree, TTree* clustersTree, AliESDEvent* esd) const;
+ AliTracker* CreateTracker () const {return new AliEMCALTracker;}
using AliReconstructor::Reconstruct;
- virtual void Reconstruct(TTree* digitsTree, TTree* clustersTree) const ;
-
- virtual Bool_t HasDigitConversion() const {return kTRUE;};
- virtual void ConvertDigits(AliRawReader* rawReader, TTree* digitsTree) const;
+ virtual void Reconstruct(TTree* digitsTree, TTree* clustersTree) const ;
+
+ virtual Bool_t HasDigitConversion() const {return kTRUE;};
+ virtual void ConvertDigits(AliRawReader* rawReader, TTree* digitsTree) const;
+
+ static void SetRecParam(AliEMCALRecParam * recParam){ fgkRecParam = recParam;}
+
+ void ReadDigitsArrayFromTree(TTree *digitsTree) const;
- static void SetRecParam(AliEMCALRecParam * recParam){ fgkRecParam = recParam;}
-
- void ReadDigitsArrayFromTree(TTree *digitsTree) const;
-
- TList *GetList() const {return fList;}
-
static const AliEMCALRecParam* GetRecParam() {
return dynamic_cast<const AliEMCALRecParam*>(AliReconstructor::GetRecoParam(6)); }
-
+
static TClonesArray* GetDigitsArr() {return fgDigitsArr;}
-
- void FillMisalMatrixes(AliESDEvent* esd)const ;
-
-private:
+
+ void FillMisalMatrixes(AliESDEvent* esd)const ;
+
+ private:
AliEMCALReconstructor(const AliEMCALReconstructor &); //Not implemented
AliEMCALReconstructor & operator = (const AliEMCALReconstructor &); //Not implemented
-
- Bool_t fDebug; //! verbosity controller
-
- TList *fList; //! List of hists (only for trigger now)
- AliEMCALGeometry *fGeom; // pointer to the EMCAL geometry
-
- static AliEMCALClusterizer* fgClusterizer; // clusterizer
- static const AliEMCALRecParam* fgkRecParam; // reconstruction
- // parameters for EMCAL
- static AliEMCALRawUtils* fgRawUtils; // raw utilities class -
- // only need one per reco
- static TClonesArray* fgDigitsArr; // Array with EMCAL digits
- AliEMCALCalibData * fCalibData ; //! Calibration database if aval
- AliCaloCalibPedestal * fPedestalData ; //! Tower status database if aval
-
- static AliEMCALTriggerElectronics* fgTriggerProcessor;
-
- ClassDef(AliEMCALReconstructor,9) // Reconstruction algorithm class (Base Class)
-
-};
+
+ AliEMCALGeometry * fGeom; // pointer to the EMCAL geometry
+ static AliEMCALClusterizer * fgClusterizer; // clusterizer
+ static AliEMCALRawUtils * fgRawUtils; // raw utilities class
+
+ //Temporal arrays with clusters, digits, triggers, to be reused per event
+ static TClonesArray * fgDigitsArr; //-> Array with EMCAL digits
+ static TObjArray * fgClustersArr; //-> Array with EMCAL clusters
+ static TClonesArray * fgTriggerDigits; //-> Array with EMCAL trigger digits
+
+ //OCDB
+ static const AliEMCALRecParam* fgkRecParam; // reconstruction parameters for EMCAL
+ AliEMCALCalibData * fCalibData ; //! Calibration database if aval
+ AliCaloCalibPedestal * fPedestalData ; //! Tower status database if aval
+
+ //Trigger specific
+ static AliEMCALTriggerElectronics* fgTriggerProcessor; // Trigger preprocessor
+ AliEMCALTriggerData * fTriggerData; // Trigger parameters data container
+
+ ClassDef(AliEMCALReconstructor,11) // Reconstruction algorithm class (Base Class)
+
+ };
#endif // ALIEMCALRECONSTRUCTOR_H