#include <Riostream.h>
#include "AliReconstructor.h"
-#include "AliPHOSRecoParamEmc.h"
-#include "AliPHOSRecoParamCpv.h"
+#include "AliPHOSRecoParam.h"
class AliPHOSDigitizer ;
class AliPHOSClusterizer ;
class AliPHOSClusterizerv1 ;
class AliRawReader;
class AliPHOSRecoParam;
class AliPHOSGeometry;
+class AliPHOSCalibData ;
// --- Standard library ---
public:
AliPHOSReconstructor() ; //ctor
- AliPHOSReconstructor(const AliPHOSReconstructor & rec) :
- AliReconstructor(rec),
- fGeom(rec.fGeom)
- {
- // cpy ctor:
- // requested by the Coding Convention
- Fatal("cpy ctor", "not implemented") ;
- }
virtual ~AliPHOSReconstructor() ; //dtor
static void SetDebug() { fgDebug = kTRUE ; }
virtual Bool_t HasDigitConversion() const {return kTRUE;};
virtual void ConvertDigits(AliRawReader* rawReader, TTree* digitsTree) const;
+ virtual Float_t Calibrate(Float_t amp, Int_t absId) const ;
+ virtual Float_t CalibrateT(Float_t time, Int_t absId) const ;
- AliPHOSReconstructor & operator = (const AliPHOSReconstructor & /*rvalue*/) {
- // assignement operator requested by coding convention but not needed
- Fatal("operator =", "not implemented") ;
- return *this ;
- }
+ void FillMisalMatrixes(AliESDEvent* esd)const ;
- static void SetRecoParamEmc(AliPHOSRecoParam * param){ fgkRecoParamEmc = param;}
- static void SetRecoParamCpv(AliPHOSRecoParam * param){ fgkRecoParamCpv = param;}
-
- static const AliPHOSRecoParam* GetRecoParamEmc(){
- if (!fgkRecoParamEmc) {
- cerr<<"The Reconstruction parameters for EMC nonitialized - Used default one"<<endl;
- fgkRecoParamEmc = AliPHOSRecoParamEmc::GetEmcDefaultParameters();
- }
- return fgkRecoParamEmc;
- }
- static const AliPHOSRecoParam* GetRecoParamCpv(){
- if (!fgkRecoParamCpv) {
- cerr<<"The Reconstruction parameters for CPV nonitialized - Used default one"<<endl;
- fgkRecoParamCpv = AliPHOSRecoParamCpv::GetCpvDefaultParameters();
- }
- return fgkRecoParamCpv;
- }
+ static const AliPHOSRecoParam* GetRecoParam() {
+ return dynamic_cast<const AliPHOSRecoParam*>(AliReconstructor::GetRecoParam(4)); }
private:
+ AliPHOSReconstructor(const AliPHOSReconstructor & rec); // Not implemented
+ AliPHOSReconstructor & operator = (const AliPHOSReconstructor &); // Not implemented
static Bool_t fgDebug ; //! verbosity controller
- static AliPHOSRecoParam *fgkRecoParamEmc; // reconstruction parameters for EMC
- static AliPHOSRecoParam *fgkRecoParamCpv; // reconstruction parameters for EMC
AliPHOSGeometry *fGeom; // pointer to the PHOS geometry
AliPHOSClusterizerv1 *fClusterizer; //! PHOS clusterizer
AliPHOSTrackSegmentMaker *fTSM; //! PHOS TrackSegmentMaker
AliPHOSPID *fPID; //! PHOS PID maker
static TClonesArray *fgDigitsArray; //! Array of PHOS digits
static TObjArray *fgEMCRecPoints; //! Array of EMC rec.points
+ static AliPHOSCalibData * fgCalibData ; //! Calibration database if aval.
- ClassDef(AliPHOSReconstructor,7) // PHOS Reconstruction class
+ ClassDef(AliPHOSReconstructor,8) // PHOS Reconstruction class
};