X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=PHOS%2FAliPHOSTrackSegment.h;h=9ecd65edd41dad19e383120a30b07b990e1bc11a;hb=f35a36aca009c8b3b9e8b15d279f0c44c3414dfb;hp=7e2cba133c9b1b29cbcadcc58c982d72eeded766;hpb=839744684acbb24afc49dddac3df42a8a08b90f1;p=u%2Fmrichter%2FAliRoot.git diff --git a/PHOS/AliPHOSTrackSegment.h b/PHOS/AliPHOSTrackSegment.h index 7e2cba133c9..9ecd65edd41 100644 --- a/PHOS/AliPHOSTrackSegment.h +++ b/PHOS/AliPHOSTrackSegment.h @@ -1,73 +1,84 @@ -#ifndef ALIPHOSSUBTRACK_H -#define ALIPHOSSUBTRACK_H +#ifndef ALIPHOSTRACKSEGMENT_H +#define ALIPHOSTRACKSEGMENT_H /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * * See cxx source for full Copyright notice */ /* $Id$ */ +/* History of cvs commits: + * + * $Log$ + * Revision 1.23 2006/08/28 10:01:56 kharlov + * Effective C++ warnings fixed (Timur Pocheptsov) + * + * Revision 1.22 2005/05/28 14:19:05 schutz + * Compilation warnings fixed by T.P. + * + */ + //_________________________________________________________________________ // Track segment in PHOS // Can be : 1 EmcRecPoint -// 1 EmcRecPoint + 1 PPSD -// 1 EmcRecPoint + 1 PPSD + 1 PPSD +// 1 EmcRecPoint + 1 CPV // //*-- Author: Dmitri Peressounko (RRC KI & SUBATECH) // --- ROOT system --- #include "TObject.h" -#include "TVector3.h" +class TClonesArray ; // --- Standard library --- // --- AliRoot header files --- - -#include "AliPHOSEmcRecPoint.h" -#include "AliPHOSPpsdRecPoint.h" - -typedef TClonesArray TrackSegmentsList ; +class AliPHOSRecPoint ; +class AliPHOSEmcRecPoint ; +class AliPHOSCpvRecPoint ; +class AliESDtrack ; class AliPHOSTrackSegment : public TObject { public: - AliPHOSTrackSegment() {} // ctor - AliPHOSTrackSegment(AliPHOSEmcRecPoint * EmcRecPoint , AliPHOSPpsdRecPoint * PpsdUp, - AliPHOSPpsdRecPoint * PpsdLow ) ; // ctor + AliPHOSTrackSegment() ; + AliPHOSTrackSegment(AliPHOSEmcRecPoint * EmcRecPoint , + AliPHOSRecPoint * Cpv) ; + AliPHOSTrackSegment(AliPHOSEmcRecPoint * EmcRecPoint , + AliPHOSRecPoint * Cpv, Int_t track) ; + AliPHOSTrackSegment(AliPHOSEmcRecPoint * EmcRecPoint , + AliPHOSRecPoint * Cpv, Int_t track, + Float_t dx, Float_t dz) ; AliPHOSTrackSegment(const AliPHOSTrackSegment & ts) ; // ctor - virtual ~AliPHOSTrackSegment() {} // dtor + virtual ~AliPHOSTrackSegment() { } - void Copy(TObject & obj) ; - virtual Int_t DistancetoPrimitive(Int_t px, Int_t py); - virtual void Draw(Option_t * option="") ; - virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py); - Float_t GetEnergy() ; // Returns energy in EMC - - Float_t GetDistanceInPHOSPlane(void) ; // Computes in PHOS plane the relative position between EMC and PPSD clusters - virtual Int_t GetPHOSMod(void) ; - TVector3 GetMomentumDirection() ; // Returns the momentum direction - void GetPosition( TVector3 & pos ) ; // Returns positions of hit - Int_t * GetPrimariesEmc(Int_t & number) ; - Int_t * GetPrimariesPpsdLow(Int_t & number) ; - Int_t * GetPrimariesPpsdUp(Int_t & number) ; - AliPHOSEmcRecPoint * GetEmcRecPoint() const ; - Int_t GetIndexInList() const { return fIndexInList ; } - AliPHOSPpsdRecPoint * GetPpsdLowRecPoint() const ; - AliPHOSPpsdRecPoint * GetPpsdUpRecPoint() const ; - virtual void Paint(Option_t * option=""); - void Print() ; - void SetIndexInList(Int_t val) { fIndexInList = val ; } + void SetCpvDistance(Float_t x,Float_t z){fDcpv[0]=x ; fDcpv[1]=z ; } + + void Copy(TObject & obj) const; + + Int_t GetIndexInList() const { return fIndexInList ; } + Int_t GetEmcIndex() const { return fEmcRecPoint ; } + Int_t GetCpvIndex() const { return fCpvRecPoint; } + Int_t GetTrackIndex() const { return fTrack; } + Float_t GetCpvDistance(const Option_t* dr="r") const ; + + virtual void Print(const Option_t * = "") const; + void SetIndexInList(Int_t val){ fIndexInList = val ; } + void SetCpvRecPoint(AliPHOSRecPoint * CpvRecPoint ); //sets CPV Rec Point + + typedef TClonesArray TrackSegmentsList ; - private: + AliPHOSTrackSegment & operator = (const AliPHOSTrackSegment & /*ts*/); + private: Int_t fEmcRecPoint ; // The EMC reconstructed point index in array stored in TreeR/PHOSEmcRP Int_t fIndexInList ; // the index of this TrackSegment in the list stored in TreeR (to be set by analysis) - Int_t fPpsdLowRecPoint ; // The PPSD reconstructed point from the lower layer index in array stored in TreeR/PHOSPpsdRP - Int_t fPpsdUpRecPoint ; // The PPSD reconstructed point from the upper layer index in array stored in TreeR/PHOSPpsdRP + Int_t fCpvRecPoint ; // The CPV reconstructed point in array stored in TreeR/PHOSCpvRP + Int_t fTrack ; // The charged track index (from global tracking) in ESD file + Float_t fDcpv[2] ; // Distance to projection of CPV cluster - ClassDef(AliPHOSTrackSegment,1) // Track segment in PHOS + ClassDef(AliPHOSTrackSegment,1) // Track segment in PHOS }; -#endif // AliPHOSSUBTRACK_H +#endif // ALIPHOSTRACKSEGMENT_H