1 #ifndef ALIPHOSSUBTRACK_H
2 #define ALIPHOSSUBTRACK_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
8 //_________________________________________________________________________
9 // Track segment in PHOS
10 // Can be : 1 EmcRecPoint
11 // 1 EmcRecPoint + 1 PPSD
12 // 1 EmcRecPoint + 1 PPSD + 1 PPSD
14 //*-- Author: Dmitri Peressounko (RRC KI & SUBATECH)
16 // --- ROOT system ---
21 // --- Standard library ---
23 // --- AliRoot header files ---
25 #include "AliPHOSEmcRecPoint.h"
26 #include "AliPHOSPpsdRecPoint.h"
28 typedef TClonesArray TrackSegmentsList ;
30 class AliPHOSTrackSegment : public TObject {
34 AliPHOSTrackSegment() {} // ctor
35 AliPHOSTrackSegment(AliPHOSEmcRecPoint * EmcRecPoint , AliPHOSPpsdRecPoint * PpsdUp,
36 AliPHOSPpsdRecPoint * PpsdLow ) ; // ctor
37 AliPHOSTrackSegment(const AliPHOSTrackSegment & ts) ; // ctor
38 virtual ~AliPHOSTrackSegment() {} // dtor
40 void Copy(TObject & obj) ;
41 virtual Int_t DistancetoPrimitive(Int_t px, Int_t py);
42 virtual void Draw(Option_t * option="") ;
43 virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py);
44 Float_t GetEnergy() ; // Returns energy in EMC
46 Float_t GetDistanceInPHOSPlane(void) ; // Computes in PHOS plane the relative position between EMC and PPSD clusters
47 virtual Int_t GetPHOSMod(void) ;
48 TVector3 GetMomentumDirection() ; // Returns the momentum direction
49 void GetPosition( TVector3 & pos ) ; // Returns positions of hit
50 Int_t * GetPrimariesEmc(Int_t & number) ;
51 Int_t * GetPrimariesPpsdLow(Int_t & number) ;
52 Int_t * GetPrimariesPpsdUp(Int_t & number) ;
53 AliPHOSEmcRecPoint * GetEmcRecPoint() const ;
54 Int_t GetIndexInList() const { return fIndexInList ; }
55 AliPHOSPpsdRecPoint * GetPpsdLowRecPoint() const ;
56 AliPHOSPpsdRecPoint * GetPpsdUpRecPoint() const ;
57 virtual void Paint(Option_t * option="");
59 void SetIndexInList(Int_t val) { fIndexInList = val ; }
64 Int_t fEmcRecPoint ; // The EMC reconstructed point index in array stored in TreeR/PHOSEmcRP
65 Int_t fIndexInList ; // the index of this TrackSegment in the list stored in TreeR (to be set by analysis)
66 Int_t fPpsdLowRecPoint ; // The PPSD reconstructed point from the lower layer index in array stored in TreeR/PHOSPpsdRP
67 Int_t fPpsdUpRecPoint ; // The PPSD reconstructed point from the upper layer index in array stored in TreeR/PHOSPpsdRP
69 ClassDef(AliPHOSTrackSegment,1) // Track segment in PHOS
73 #endif // AliPHOSSUBTRACK_H