AliRoot Core  da88d91 (da88d91)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliMFTHit.h
Go to the documentation of this file.
1 #ifndef AliMFTHit_H
2 #define AliMFTHit_H
3 
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice */
6 
7 //====================================================================================================================================================
8 //
9 // Hit description for the ALICE Muon Forward Tracker
10 //
11 // Contact author: antonio.uras@cern.ch
12 //
13 //====================================================================================================================================================
14 
15 #include "TLorentzVector.h"
16 #include "TParticle.h"
17 #include "AliHit.h"
18 #include "AliRun.h"
19 #include "AliMC.h"
20 
21 //====================================================================================================================================================
22 
23 class TParticle;
24 
25 class AliMFTHit : public AliHit {
26 
27 public:
28 
29  AliMFTHit();
30 // AliMFTHit(const AliMFTHit &h);
31 // AliMFTHit& operator=(const AliMFTHit &h);
32 
33  virtual ~AliMFTHit() {}
34 
35  virtual void SetPlane(Int_t plane) { fPlane = plane; }
36  virtual void SetDetElemID(Int_t detElemID) { fDetElemID = detElemID; }
37  virtual void SetPosition(TLorentzVector &x) { fX =x.X(); fY =x.Y(); fZ =x.Z(); }
38  virtual void SetTOF(Double_t time) { fTOF = time; }
39  virtual void SetStatus(Int_t status) { fStatus = status; }
40  virtual void SetEloss(Double_t energy) { fEloss = energy; }
41  virtual void SetMomentum(TLorentzVector &p) { fPx=p.Px(); fPy=p.Py(); fPz=p.Pz(); }
42 
43  virtual Int_t GetTrackStatus() const { return fStatus; }
44  virtual Int_t GetPlane() const { return fPlane; }
45  virtual Int_t GetDetElemID() const { return fDetElemID; }
46  virtual Double_t GetEloss() const { return fEloss; }
47  virtual Double_t GetTOF() const { return fTOF; }
48 
49  virtual void GetPosition(Double_t &x,Double_t &y,Double_t &z) const { x=fX; y=fY; z=fZ; }
50  virtual Double_t GetX() const { return fX; }
51  virtual Double_t GetY() const { return fY; }
52  virtual Double_t GetZ() const { return fZ; }
53 
54  virtual void GetMomentum(Double_t &px,Double_t &py,Double_t &pz) const { px=fPx; py=fPy; pz=fPz; }
55  virtual Double_t GetPx() const { return fPx; }
56  virtual Double_t GetPy() const { return fPy; }
57  virtual Double_t GetPz() const { return fPz; }
58 
59  TParticle* GetParticle() const;
60 
61  Bool_t IsInside() const { return (fStatus & 0x1); }
62  Bool_t IsEntering() const { return (fStatus & 0x1<<1); }
63  Bool_t IsExiting() const { return (fStatus & 0x1<<2); }
64  Bool_t IsOut() const { return (fStatus & 0x1<<3); }
65  Bool_t IsDisappeared() const { return (fStatus & 0x1<<4); }
66  Bool_t IsStopped() const { return (fStatus & 0x1<<5); }
67  Bool_t IsAlive() const { return (fStatus & 0x1<<6); }
68 
69 protected:
70 
71  Int_t fStatus; /* The track status flag. This flag indicates the track status
72  at the time of creating this hit.
73  It is made up of the following 8 status bits from highest order to lowest order bits 0 :
74  IsTrackAlive(): IsTrackStop(): IsTrackDisappeared(): IsTrackOut(): IsTrackExiting(): IsTrackEntering(): IsTrackInside() .
75  See AliMC for a description of these functions.
76  If the function is true then the bit is set to one, otherwise it is zero. */
77 
78  Int_t fPlane; // Plane number
79  Int_t fDetElemID; // Detection Element unique ID
80  Double_t fPx; // PX of particle at the point of the hit
81  Double_t fPy; // PY of particle at the point of the hit
82  Double_t fPz; // PZ of particle at the point of the hit
83  Double_t fEloss; // Energy deposited in the current step
84  Double_t fTOF; // Time of flight at the point of the hit
85 
86  ClassDef(AliMFTHit,3)
87 
88 };
89 
90 //====================================================================================================================================================
91 
92 #endif
Bool_t IsInside() const
Definition: AliMFTHit.h:61
Double_t fPx
Definition: AliMFTHit.h:80
Bool_t IsExiting() const
Definition: AliMFTHit.h:63
Int_t fDetElemID
Definition: AliMFTHit.h:79
virtual Double_t GetX() const
Definition: AliMFTHit.h:50
Int_t fPlane
Definition: AliMFTHit.h:78
Double_t fTOF
Definition: AliMFTHit.h:84
Bool_t IsStopped() const
Definition: AliMFTHit.h:66
virtual ~AliMFTHit()
Definition: AliMFTHit.h:33
virtual void GetPosition(Double_t &x, Double_t &y, Double_t &z) const
Definition: AliMFTHit.h:49
virtual Int_t GetPlane() const
Definition: AliMFTHit.h:44
virtual void SetDetElemID(Int_t detElemID)
Definition: AliMFTHit.h:36
virtual Double_t GetY() const
Definition: AliMFTHit.h:51
virtual void SetPlane(Int_t plane)
Definition: AliMFTHit.h:35
Bool_t IsOut() const
Definition: AliMFTHit.h:64
Int_t fStatus
Definition: AliMFTHit.h:71
virtual void SetTOF(Double_t time)
Definition: AliMFTHit.h:38
virtual Double_t GetPx() const
Definition: AliMFTHit.h:55
virtual void SetEloss(Double_t energy)
Definition: AliMFTHit.h:40
virtual void SetPosition(TLorentzVector &x)
Definition: AliMFTHit.h:37
Double_t fPz
Definition: AliMFTHit.h:82
virtual void SetStatus(Int_t status)
Definition: AliMFTHit.h:39
virtual Double_t GetEloss() const
Definition: AliMFTHit.h:46
virtual Int_t GetTrackStatus() const
Definition: AliMFTHit.h:43
virtual Double_t GetPz() const
Definition: AliMFTHit.h:57
virtual void GetMomentum(Double_t &px, Double_t &py, Double_t &pz) const
Definition: AliMFTHit.h:54
Bool_t IsDisappeared() const
Definition: AliMFTHit.h:65
virtual Double_t GetZ() const
Definition: AliMFTHit.h:52
Bool_t IsAlive() const
Definition: AliMFTHit.h:67
Double_t fPy
Definition: AliMFTHit.h:81
virtual Double_t GetPy() const
Definition: AliMFTHit.h:56
Bool_t IsEntering() const
Definition: AliMFTHit.h:62
Double_t fEloss
Definition: AliMFTHit.h:83
virtual Double_t GetTOF() const
Definition: AliMFTHit.h:47
virtual void SetMomentum(TLorentzVector &p)
Definition: AliMFTHit.h:41
TParticle * GetParticle() const
Definition: AliMFTHit.cxx:54
virtual Int_t GetDetElemID() const
Definition: AliMFTHit.h:45