]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - PHOS/AliPHOSTrackSegment.h
New ALIPHOSv1: includes the light transport in the Xtal
[u/mrichter/AliRoot.git] / PHOS / AliPHOSTrackSegment.h
... / ...
CommitLineData
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
6/* $Id$ */
7
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
30const static Int_t GAMMA = 0 ;
31const static Int_t ELECTRON = 1 ;
32const static Int_t NEUTRAL = 2 ;
33const static Int_t CHARGEDHADRON = 3 ;
34
35class AliPHOSTrackSegment : public TObject {
36
37public:
38
39 AliPHOSTrackSegment() {} ; // ctor
40 AliPHOSTrackSegment(AliPHOSEmcRecPoint * EmcRecPoint , AliPHOSPpsdRecPoint * PpsdUp,
41 AliPHOSPpsdRecPoint * PpsdLow ) ; // ctor
42 AliPHOSTrackSegment(const AliPHOSTrackSegment & ts) ; // ctor
43 virtual ~AliPHOSTrackSegment() ; // dtor
44
45 void Copy(TObject & obj) ;
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);
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
51
52 Float_t GetDistanceInPHOSPlane(void) ; // Computes in PHOS plane the relative position between EMC and PPSD clusters
53 virtual Int_t GetPHOSMod(void) {return fEmcRecPoint->GetPHOSMod(); }
54 TVector3 GetMomentumDirection() ; // Returns the momentum direction
55 void GetPosition( TVector3 & pos ) ; // Returns positions of hit
56 virtual void Paint(Option_t * option="");
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