X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=PHOS%2FAliPHOSTrackSegmentMaker.h;h=f4fa690a792bdb6a5b89ca9e6716045f6c7886db;hb=c65c502a01b61b2ef74c74e3532768e30ed7d51a;hp=5606aa4cfc142f6a9d685984a351f6b40e06ca38;hpb=7b7c15335990bc27772c67f9ee7bc90cc48bc9a3;p=u%2Fmrichter%2FAliRoot.git diff --git a/PHOS/AliPHOSTrackSegmentMaker.h b/PHOS/AliPHOSTrackSegmentMaker.h index 5606aa4cfc1..f4fa690a792 100644 --- a/PHOS/AliPHOSTrackSegmentMaker.h +++ b/PHOS/AliPHOSTrackSegmentMaker.h @@ -5,52 +5,75 @@ /* $Id$ */ +/* 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. + * + */ + //_________________________________________________________________________ // Algorithm Base class to construct PHOS track segments -// Associates EMC and PPSD clusters +// Associates EMC and CPV clusters // Unfolds the EMC cluster // //*-- Author: Dmitri Peressounko (RRC Kurchatov Institute & SUBATECH) // --- ROOT system --- -#include "TTask.h" +#include +class TTree; +// --- AliRoot header files --- +class AliPHOSGeometry ; +class AliESDEvent ; -// --- Standard library --- +class AliPHOSTrackSegmentMaker : public TObject { -// --- AliRoot header files --- +public: + AliPHOSTrackSegmentMaker(); + AliPHOSTrackSegmentMaker(AliPHOSGeometry *geom); + AliPHOSTrackSegmentMaker(const AliPHOSTrackSegmentMaker & tsmaker) ; + virtual ~ AliPHOSTrackSegmentMaker() ; + AliPHOSTrackSegmentMaker & operator = (const AliPHOSTrackSegmentMaker & /*rvalue*/) { + Fatal("operator =", "not implemented") ; return *this ; } -class AliPHOSClusterizer ; -class AliPHOSGeometry ; + virtual void Clusters2TrackSegments(Option_t *option) = 0; -class AliPHOSTrackSegmentMaker : public TTask { + void SetInput(TTree *clustersTree); -public: + virtual void Print(const Option_t * = "")const {Warning("Print", "Not Defined" ) ; } + + void SetESD(AliESDEvent *esd) { fESD = esd; } + + AliESDEvent *GetESD() const {return fESD; } + + virtual TClonesArray * GetTrackSegments() const = 0; + +protected: - AliPHOSTrackSegmentMaker() ; - AliPHOSTrackSegmentMaker(const char* headerFile, const char* name) ; - - virtual ~ AliPHOSTrackSegmentMaker(){ - // dtor - } - - virtual void Exec(Option_t * option) = 0 ; - virtual char* GetRecPointsBranch ()const = 0 ; - virtual char* GetTrackSegmentsBranch ()const = 0 ; - - virtual void Print(Option_t * option)const = 0; - // virtual void Set... // method to choose recPoints: along z only, along x ...??? - // virtual void SetChoosingAlgirithm() = 0 ; - // virtual void SetMaxEmcCpvDistance(Float_t r) = 0 ; - virtual Bool_t ReadRecPoints(Int_t ievent) = 0 ; - virtual void SetRecPointsBranch(const char * title) = 0 ; - virtual void SetTrackSegmentsBranch(const char * title) = 0 ; - virtual const char * Version() const = 0 ; - virtual void WriteTrackSegments(Int_t event) = 0 ; - - ClassDef( AliPHOSTrackSegmentMaker,1) // Algorithm class to make PHOS track segments (Base Class) + 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 // ALIPHOSTRACKSEGMENTMAKER_H