X-Git-Url: http://git.uio.no/git/?p=u%2Fmrichter%2FAliRoot.git;a=blobdiff_plain;f=PHOS%2FAliPHOSPID.h;h=7588907c77001d133d2b760476c366b3721f8fd9;hp=39b0ad69c88202d6e94cb7fbb36d132ddb3d54fe;hb=e3d9d3690b76e67227fe96c9b3f77a61540bcf62;hpb=7b7c15335990bc27772c67f9ee7bc90cc48bc9a3 diff --git a/PHOS/AliPHOSPID.h b/PHOS/AliPHOSPID.h index 39b0ad69c88..7588907c770 100644 --- a/PHOS/AliPHOSPID.h +++ b/PHOS/AliPHOSPID.h @@ -5,6 +5,32 @@ /* $Id$ */ +/* History of cvs commits: + * + * $Log$ + * Revision 1.41 2007/08/28 12:55:08 policheh + * Loaders removed from the reconstruction code (C.Cheshkov) + * + * Revision 1.40 2007/08/07 14:12:03 kharlov + * Quality assurance added (Yves Schutz) + * + * Revision 1.39 2007/07/11 13:43:30 hristov + * New class AliESDEvent, backward compatibility with the old AliESD (Christian) + * + * Revision 1.38 2007/04/01 15:40:15 kharlov + * Correction for actual vertex position implemented + * + * Revision 1.37 2006/08/29 11:41:19 kharlov + * Missing implementation of ctors and = operator are added + * + * Revision 1.36 2006/08/25 16:00:53 kharlov + * Compliance with Effective C++AliPHOSHit.cxx + * + * Revision 1.35 2005/05/28 14:19:04 schutz + * Compilation warnings fixed by T.P. + * + */ + //_________________________________________________________________________ // Algorithm class for the identification of particles detected in PHOS // base class @@ -12,46 +38,53 @@ //*-- Author: Yves Schutz (SUBATECH) // --- ROOT system --- - -#include "TTask.h" -class TFormula ; -class TClonesArray ; +#include "TObject.h" +class TTree; // --- Standard library --- // --- AliRoot header files --- - +class AliESDEvent ; class AliPHOSGeometry ; class AliPHOSClusterizer ; class AliPHOSTrackSegmentMaker ; -class AliPHOSPID : public TTask { +class AliPHOSPID : public TObject { -public: + public: AliPHOSPID() ; // ctor - AliPHOSPID(const char* headerFile,const char * name) ; + AliPHOSPID (AliPHOSGeometry *geom); + AliPHOSPID(const AliPHOSPID & pid) ; virtual ~AliPHOSPID() ; // dtor + AliPHOSPID & operator = (const AliPHOSPID & /*rvalue*/) { + Fatal("operator =", "not implemented") ; return *this ; } + + virtual void TrackSegments2RecParticles(Option_t * option) = 0; + + void SetInput(TTree *clustersTree, TClonesArray *trackSegments); + TClonesArray* GetRecParticles() const { return fRecParticles; } - virtual void Exec(Option_t * option) = 0 ; - virtual char * GetRecParticlesBranch()const = 0 ; - virtual char * GetTrackSegmentsBranch()const = 0 ; - virtual void Init()= 0 ; - virtual void Print(Option_t * option) const = 0 ; - virtual void PlotDispersionCuts()const = 0; - virtual Bool_t ReadTrackSegments(Int_t event)= 0 ; - virtual void SetIdentificationMethod(char * option) = 0 ; - virtual void SetShowerProfileCut(char * formula) = 0 ; - virtual void SetDispersionCut(Float_t cut) = 0 ; - virtual void SetCpvtoEmcDistanceCut(Float_t cut ) = 0; - virtual void SetTrackSegmentsBranch(const char* title) = 0 ; - virtual void SetRecParticlesBranch (const char* title) = 0 ; - virtual const char * Version() const = 0 ; - virtual void WriteRecParticles(Int_t event)= 0 ; + virtual void Print(const Option_t * = "") const = 0; + + void SetESD(AliESDEvent *esd) { fESD = esd; } + + virtual const char * Version() const = 0; protected: - ClassDef(AliPHOSPID,1) // Particle Identifier algorithm (base class) + AliPHOSGeometry * fGeom; //! Pointer to PHOS Geometry + AliESDEvent * fESD; //! ESD object + + TObjArray *fEMCRecPoints; //!Array with EMC clusters + TObjArray *fCPVRecPoints; //!Array with CPV clusters + + TClonesArray *fTrackSegments; //!Array with found track segments + TClonesArray *fRecParticles; //!Array with reconstructed particles (PID) + +private: + + ClassDef(AliPHOSPID,8) // Particle Identifier algorithm (base class) } ;