X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=PHOS%2FAliPHOSPID.h;h=7588907c77001d133d2b760476c366b3721f8fd9;hb=3b2ee55b0a18e376ad9135ce83157e145b47c293;hp=f538eb0d1dea7a4ca81754f85a1803807ce829b6;hpb=0dd37dda8289f84da1ae402fedcfde0f0605e28a;p=u%2Fmrichter%2FAliRoot.git diff --git a/PHOS/AliPHOSPID.h b/PHOS/AliPHOSPID.h index f538eb0d1de..7588907c770 100644 --- a/PHOS/AliPHOSPID.h +++ b/PHOS/AliPHOSPID.h @@ -5,42 +5,86 @@ /* $Id$ */ -//////////////////////////////////////////////// -// Algorithme class for the identification of// -// particles detected in PHOS // -// base class // -// Version SUBATECH // -// Author Yves Schutz SUBATECH // -// // -// pABC // -//////////////////////////////////////////////// +/* 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. + * + */ -// --- ROOT system --- +//_________________________________________________________________________ +// Algorithm class for the identification of particles detected in PHOS +// base class +// of identified particles +//*-- Author: Yves Schutz (SUBATECH) -#include "TObject.h" -#include "TClonesArray.h" +// --- ROOT system --- +#include "TObject.h" +class TTree; // --- Standard library --- // --- AliRoot header files --- - -#include "AliPHOSTrackSegmentMaker.h" - - -typedef TClonesArray RecParticlesList ; +class AliESDEvent ; +class AliPHOSGeometry ; +class AliPHOSClusterizer ; +class AliPHOSTrackSegmentMaker ; class AliPHOSPID : public TObject { -public: + public: AliPHOSPID() ; // ctor + 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 Print(const Option_t * = "") const = 0; + + void SetESD(AliESDEvent *esd) { fESD = esd; } + + virtual const char * Version() const = 0; + +protected: + + AliPHOSGeometry * fGeom; //! Pointer to PHOS Geometry + AliESDEvent * fESD; //! ESD object + + TObjArray *fEMCRecPoints; //!Array with EMC clusters + TObjArray *fCPVRecPoints; //!Array with CPV clusters - virtual void MakeParticles(TrackSegmentsList * trsl, RecParticlesList * rpl) {} ; - virtual void SetShowerProfileCuts(Float_t, Float_t, Float_t, Float_t) {} ; - virtual void SetDispersionCutOff(Float_t ) {} + TClonesArray *fTrackSegments; //!Array with found track segments + TClonesArray *fRecParticles; //!Array with reconstructed particles (PID) + +private: - ClassDef(AliPHOSPID,1) // Particle Identifier interface, version 1 + ClassDef(AliPHOSPID,8) // Particle Identifier algorithm (base class) } ;