X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=PHOS%2FAliPHOSReconstructor.h;h=a2c881b9ac1dabf24f3cb268a2abe35474486b42;hb=974257a92a6ba83281ee05dfdf28160263ba1ea1;hp=2d5ac8497aac3301406308afad12d1d74d952e25;hpb=dd7ee50891d22212983934cf88dfec8d84fce409;p=u%2Fmrichter%2FAliRoot.git diff --git a/PHOS/AliPHOSReconstructor.h b/PHOS/AliPHOSReconstructor.h index 2d5ac8497aa..a2c881b9ac1 100644 --- a/PHOS/AliPHOSReconstructor.h +++ b/PHOS/AliPHOSReconstructor.h @@ -8,6 +8,28 @@ /* History of cvs commits: * * $Log$ + * Revision 1.15 2007/10/01 20:24:08 kharlov + * Memory leaks fixed + * + * Revision 1.14 2007/09/26 14:22:18 cvetan + * Important changes to the reconstructor classes. Complete elimination of the run-loaders, which are now steered only from AliReconstruction. Removal of the corresponding Reconstruct() and FillESD() methods. + * + * Revision 1.13 2007/08/30 10:40:27 cvetan + * Minor + * + * Revision 1.12 2007/08/28 12:55:08 policheh + * Loaders removed from the reconstruction code (C.Cheshkov) + * + * Revision 1.11 2007/07/24 17:20:35 policheh + * Usage of RecoParam objects instead of hardcoded parameters in reconstruction. + * (See $ALICE_ROOT/PHOS/macros/BeamTest2006/RawReconstruction.C). + * + * Revision 1.10 2007/07/11 13:43:30 hristov + * New class AliESDEvent, backward compatibility with the old AliESD (Christian) + * + * Revision 1.9 2006/11/15 16:05:03 kharlov + * New FillESD() for raw data is added + * * Revision 1.8 2005/05/28 14:19:04 schutz * Compilation warnings fixed by T.P. * @@ -15,22 +37,29 @@ //_________________________________________________________________________ // Wrapping class for reconstruction -//*-- -//*-- Author: Yves Schutz (SUBATECH) +//-- +//-- Author: Yves Schutz (SUBATECH) // Reconstruction class. Redesigned from the old AliReconstructionner class and // derived from STEER/AliReconstructor. //_________________________________________________________________________ // --- ROOT system --- +#include #include "AliReconstructor.h" +#include "AliPHOSRecoParam.h" class AliPHOSDigitizer ; class AliPHOSClusterizer ; +class AliPHOSClusterizerv1 ; class AliPHOSTrackSegmentMaker ; class AliPHOSPID ; class AliPHOSSDigitizer ; -class AliESD ; +class AliESDEvent ; class AliRawReader; +class AliPHOSRecoParam; +class AliPHOSGeometry; +class AliPHOSCalibData ; +class AliPHOSTriggerParameters; // --- Standard library --- @@ -41,34 +70,47 @@ class AliPHOSReconstructor : public AliReconstructor { public: AliPHOSReconstructor() ; //ctor - AliPHOSReconstructor(const AliPHOSReconstructor & rec) : AliReconstructor(rec) { - // cpy ctor: - // requested by the Coding Convention - Fatal("cpy ctor", "not implemented") ; - } - ~AliPHOSReconstructor() ; //dtor + virtual ~AliPHOSReconstructor() ; //dtor + static void SetDebug() { fgDebug = kTRUE ; } static void ResetDebug() { fgDebug = kFALSE ; } static Bool_t Debug() { return fgDebug ; } - AliTracker *CreateTracker(AliRunLoader* runLoader) const; + AliTracker *CreateTracker() const; using AliReconstructor::FillESD; - virtual void FillESD(AliRunLoader* runLoader, AliESD* esd) const ; - virtual void FillESD(AliRunLoader* runLoader,AliRawReader* rawReader,AliESD* esd) const; + virtual void FillESD(TTree* digitsTree, TTree* clustersTree, + AliESDEvent* esd) const; using AliReconstructor::Reconstruct; - virtual void Reconstruct(AliRunLoader* runLoader) const ; - virtual void Reconstruct(AliRunLoader* runLoader, AliRawReader * rawreader) const ; - - AliPHOSReconstructor & operator = (const AliPHOSReconstructor & /*rvalue*/) { - // assignement operator requested by coding convention but not needed - Fatal("operator =", "not implemented") ; - return *this ; - } + virtual void Reconstruct(TTree* digitsTree, TTree* clustersTree) const; + + 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, Bool_t isLG) const ; + + void FillMisalMatrixes(AliESDEvent* esd)const ; + + static const AliPHOSRecoParam* GetRecoParam() { + return dynamic_cast(AliReconstructor::GetRecoParam(4)); } + static Float_t CorrectNonlinearity(Float_t oldEnergy) ; + + void readTRUParameters(AliPHOSTriggerParameters* parameters) const; private: + AliPHOSReconstructor(const AliPHOSReconstructor & rec); // Not implemented + AliPHOSReconstructor & operator = (const AliPHOSReconstructor &); // Not implemented static Bool_t fgDebug ; //! verbosity controller + AliPHOSGeometry *fGeom; // pointer to the PHOS geometry + AliPHOSClusterizerv1 *fClusterizer; //! PHOS clusterizer + AliPHOSTrackSegmentMaker *fTSM; //! PHOS TrackSegmentMaker + AliPHOSPID *fPID; //! PHOS PID maker + TClonesArray *fTmpDigLG; //! Temporary array of LG digits + static TClonesArray *fgDigitsArray; //! Array of PHOS digits + static TObjArray *fgEMCRecPoints; //! Array of EMC rec.points + static AliPHOSCalibData * fgCalibData ; //! Calibration database if aval. + static TClonesArray *fgTriggerDigits; //! Array of PHOS trigger digits - ClassDef(AliPHOSReconstructor,2) // Reconstruction algorithm class (Base Class) + ClassDef(AliPHOSReconstructor,10) // PHOS Reconstruction class };