X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=PHOS%2FAliPHOSTrackSegmentMaker.h;h=f4fa690a792bdb6a5b89ca9e6716045f6c7886db;hb=86a04b66654e7cd685ac6f2ab7e57defcaf33bfa;hp=8422e73932cd5101b1d8d607fa47b285e18db36c;hpb=d15a28e7baaf9ecf573af1e229c75b9527e05793;p=u%2Fmrichter%2FAliRoot.git diff --git a/PHOS/AliPHOSTrackSegmentMaker.h b/PHOS/AliPHOSTrackSegmentMaker.h index 8422e73932c..f4fa690a792 100644 --- a/PHOS/AliPHOSTrackSegmentMaker.h +++ b/PHOS/AliPHOSTrackSegmentMaker.h @@ -1,48 +1,79 @@ -#ifndef ALIPHOSSUBTRACKER_H -#define ALIPHOSSUBTRACKER_H +#ifndef ALIPHOSTRACKSEGMENTMAKER_H +#define ALIPHOSTRACKSEGMENTMAKER_H /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * * See cxx source for full Copyright notice */ -/////////////////////////////////////////////////// -// Subtrackin class for PHOS // -// Version SUBATECH // -// Author Dmitri Peressounko RRC Ki // -// comment: finds pairs of clusters EMC+PPSD // -// performs unfolding. // -/////////////////////////////////////////////////// +/* $Id$ */ -// --- ROOT system --- - -// --- Standard library --- +/* History of cvs commits: + * + * $Log$ + * Revision 1.43 2007/08/28 12:55:08 policheh + * Loaders removed from the reconstruction code (C.Cheshkov) + * + * Revision 1.42 2007/08/07 14:12:03 kharlov + * Quality assurance added (Yves Schutz) + * + * Revision 1.41 2007/07/11 13:43:30 hristov + * New class AliESDEvent, backward compatibility with the old AliESD (Christian) + * + * Revision 1.40 2006/08/29 11:41:19 kharlov + * Missing implementation of ctors and = operator are added + * + * Revision 1.39 2006/08/25 16:00:53 kharlov + * Compliance with Effective C++AliPHOSHit.cxx + * + * Revision 1.38 2005/05/28 14:19:05 schutz + * Compilation warnings fixed by T.P. + * + */ -// --- AliRoot header files --- +//_________________________________________________________________________ +// Algorithm Base class to construct PHOS track segments +// Associates EMC and CPV clusters +// Unfolds the EMC cluster +// +//*-- Author: Dmitri Peressounko (RRC Kurchatov Institute & SUBATECH) -#include "TObjArray.h" -#include "AliPHOSClusterizer.h" -#include "AliPHOSEmcRecPoint.h" -#include "AliPHOSPpsdRecPoint.h" +// --- ROOT system --- +#include +class TTree; -typedef TObjArray TrackSegmentsList ; +// --- AliRoot header files --- +class AliPHOSGeometry ; +class AliESDEvent ; class AliPHOSTrackSegmentMaker : public TObject { public: - AliPHOSTrackSegmentMaker() ; - - virtual ~ AliPHOSTrackSegmentMaker(){} // dtor + AliPHOSTrackSegmentMaker(); + AliPHOSTrackSegmentMaker(AliPHOSGeometry *geom); + AliPHOSTrackSegmentMaker(const AliPHOSTrackSegmentMaker & tsmaker) ; + virtual ~ AliPHOSTrackSegmentMaker() ; + AliPHOSTrackSegmentMaker & operator = (const AliPHOSTrackSegmentMaker & /*rvalue*/) { + Fatal("operator =", "not implemented") ; return *this ; } + + virtual void Clusters2TrackSegments(Option_t *option) = 0; + + void SetInput(TTree *clustersTree); + + virtual void Print(const Option_t * = "")const {Warning("Print", "Not Defined" ) ; } + + void SetESD(AliESDEvent *esd) { fESD = esd; } - virtual void MakeTrackSegments(DigitsList * DL, RecPointsList * emcl, RecPointsList * ppsdl, TrackSegmentsList * trsl ) ; - // does the job - virtual void SetMaxEmcPpsdDistance(Float_t r){ fR0 = r ;} + AliESDEvent *GetESD() const {return fESD; } -private: - Float_t fR0 ; + virtual TClonesArray * GetTrackSegments() const = 0; -public: +protected: -ClassDef( AliPHOSTrackSegmentMaker,1) // subtracking implementation , version 1 + AliESDEvent * fESD; //! ESD object + AliPHOSGeometry *fGeom; //! Pointer to the PHOS geometry + TObjArray *fEMCRecPoints; // Array with the EMC clusters + TObjArray *fCPVRecPoints; // Array with the CPV clusters + ClassDef( AliPHOSTrackSegmentMaker,6) // Algorithm class to make PHOS track segments (Base Class) }; -#endif // AliPHOSSUBTRACKER_H +#endif // ALIPHOSTRACKSEGMENTMAKER_H