New ALIPHOSv1: includes the light transport in the Xtal
[u/mrichter/AliRoot.git] / PHOS / AliPHOSTrackSegment.h
CommitLineData
d15a28e7 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 */
5
6ad0bfa0 6/* $Id$ */
7
d15a28e7 8/////////////////////////////////////////////////
9// Short description //
10// Version SUBATECH //
11// Author Dmitri Peressounko RRC KI //
12// comment: contains pairs (triplets) of //
13// EMC+PPSD(+PPSD) clusters, and //
14// evaluates particle type, //
15// energy, etc //
16/////////////////////////////////////////////////
17
18// --- ROOT system ---
19
20#include "TObject.h"
21#include "TVector3.h"
22
23// --- Standard library ---
24
25// --- AliRoot header files ---
26
27#include "AliPHOSEmcRecPoint.h"
28#include "AliPHOSPpsdRecPoint.h"
29
6ad0bfa0 30const static Int_t GAMMA = 0 ;
31const static Int_t ELECTRON = 1 ;
32const static Int_t NEUTRAL = 2 ;
33const static Int_t CHARGEDHADRON = 3 ;
d15a28e7 34
35class AliPHOSTrackSegment : public TObject {
36
37public:
38
6ad0bfa0 39 AliPHOSTrackSegment() {} ; // ctor
d15a28e7 40 AliPHOSTrackSegment(AliPHOSEmcRecPoint * EmcRecPoint , AliPHOSPpsdRecPoint * PpsdUp,
6ad0bfa0 41 AliPHOSPpsdRecPoint * PpsdLow ) ; // ctor
42 AliPHOSTrackSegment(const AliPHOSTrackSegment & ts) ; // ctor
d15a28e7 43 virtual ~AliPHOSTrackSegment() ; // dtor
44
6ad0bfa0 45 void Copy(TObject & obj) ;
9f616d61 46 virtual Int_t DistancetoPrimitive(Int_t px, Int_t py);
47 virtual void Draw(Option_t * option="") ;
48 virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py);
6ad0bfa0 49 Int_t GetPartType() ; // Returns 0 - gamma, 1 - e+, e- ; 2 - neutral hadron ; 3 - charged hadron
50 Float_t GetEnergy(){ return fEmcRecPoint->GetTotalEnergy() ;} // Returns energy in EMC
9f616d61 51
6ad0bfa0 52 Float_t GetDistanceInPHOSPlane(void) ; // Computes in PHOS plane the relative position between EMC and PPSD clusters
9f616d61 53 virtual Int_t GetPHOSMod(void) {return fEmcRecPoint->GetPHOSMod(); }
6ad0bfa0 54 TVector3 GetMomentumDirection() ; // Returns the momentum direction
55 void GetPosition( TVector3 & pos ) ; // Returns positions of hit
9f616d61 56 virtual void Paint(Option_t * option="");
d15a28e7 57 void Print() ;
58 void SetDispersionCutOff(Float_t Dcut) {fCutOnDispersion = Dcut ; }
59
60
61private:
62
63 AliPHOSEmcRecPoint * fEmcRecPoint ;
64 AliPHOSPpsdRecPoint * fPpsdLow ;
65 AliPHOSPpsdRecPoint * fPpsdUp ;
66
67 Float_t fCutOnDispersion ;
68
69public:
70
71 ClassDef(AliPHOSTrackSegment,1) // description , version 1
72
73};
74
75#endif // AliPHOSSUBTRACK_H