]>
Commit | Line | Data |
---|---|---|
d28dcc0d | 1 | #ifndef AliFMDhit_H |
2 | #define AliFMDhit_H | |
4347b38f | 3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights |
4 | * reserved. | |
5 | * | |
6 | * See cxx source for full Copyright notice | |
7 | */ | |
02a27b50 | 8 | // Hits are the information that comes from a Monte Carlo at each |
9 | // step as a particle mass through sensitive detector elements as | |
10 | // particles are transported through a detector. | |
c2fc1258 | 11 | /** @file AliFMDHit.h |
12 | @author Christian Holm Christensen <cholm@nbi.dk> | |
13 | @date Mon Mar 27 12:41:58 2006 | |
14 | @brief Hit in the FMD | |
02a27b50 | 15 | @ingroup FMD_sim |
c2fc1258 | 16 | */ |
42403906 | 17 | //___________________________________________________________________ |
4347b38f | 18 | // |
4347b38f | 19 | #ifndef ALIHIT_H |
56b1929b | 20 | # include <AliHit.h> |
4347b38f | 21 | #endif |
d28dcc0d | 22 | |
56b1929b | 23 | //___________________________________________________________________ |
c2fc1258 | 24 | /** @brief AliFMDhit is the hit class for the FMD. |
25 | Hits are the information that comes from a Monte Carlo at each | |
26 | step as a particle mass through sensitive detector elements as | |
27 | particles are transported through a detector. | |
9f662337 | 28 | @ingroup FMD_sim |
29 | */ | |
4347b38f | 30 | class AliFMDHit : public AliHit |
31 | { | |
ab256e65 | 32 | public: |
9f662337 | 33 | /** Default CTOR */ |
4347b38f | 34 | AliFMDHit(); |
9f662337 | 35 | /** Normal FMD hit ctor |
36 | @param shunt ??? | |
f8616692 | 37 | @param track Track # |
9f662337 | 38 | @param detector Detector # (1, 2, or 3) |
f8616692 | 39 | @param ring Ring ID ('I' or 'O') |
40 | @param sector Sector # (For inner/outer rings: 0-19/0-39) | |
41 | @param strip Strip # (For inner/outer rings: 0-511/0-255) | |
42 | @param x Track's X-coordinate at hit | |
43 | @param y Track's Y-coordinate at hit | |
44 | @param z Track's Z-coordinate at hit | |
45 | @param px X-component of track's momentum | |
46 | @param py Y-component of track's momentum | |
47 | @param pz Z-component of track's momentum | |
48 | @param edep Energy deposited by track | |
49 | @param pdg Track's particle Id # | |
50 | @param t Time when the track hit | |
51 | @param l Track lenght through medium | |
52 | @param stop Whether track is stopped in medium */ | |
4347b38f | 53 | AliFMDHit(Int_t shunt, |
54 | Int_t track, | |
55 | UShort_t detector, | |
56 | Char_t ring, | |
57 | UShort_t sector, | |
58 | UShort_t strip, | |
59 | Float_t x=0, | |
60 | Float_t y=0, | |
61 | Float_t z=0, | |
62 | Float_t px=0, | |
63 | Float_t py=0, | |
64 | Float_t pz=0, | |
65 | Float_t edep=0, | |
66 | Int_t pdg=0, | |
088f8e79 | 67 | Float_t t=0, |
68 | Float_t l=0, | |
69 | Bool_t stop=kFALSE); | |
9f662337 | 70 | /** DTOR */ |
4347b38f | 71 | virtual ~AliFMDHit() {} |
bf000c32 | 72 | |
9f662337 | 73 | /** @return Detector # */ |
4347b38f | 74 | UShort_t Detector() const { return fDetector; } |
9f662337 | 75 | /** @return Ring ID */ |
4347b38f | 76 | Char_t Ring() const { return fRing; } |
9f662337 | 77 | /** @return Sector # */ |
4347b38f | 78 | UShort_t Sector() const { return fSector; } |
9f662337 | 79 | /** @return Strip # */ |
4347b38f | 80 | UShort_t Strip() const { return fStrip; } |
9f662337 | 81 | /** @return Energy deposited (MeV) */ |
4347b38f | 82 | Float_t Edep() const { return fEdep; } |
9f662337 | 83 | /** @return Track @f$ p_x@f$ - momentum in @f$ x@f$ (GeV) */ |
4347b38f | 84 | Float_t Px() const { return fPx; } |
9f662337 | 85 | /** @return Track @f$ p_y@f$ - momentum in @f$ y@f$ (GeV) */ |
4347b38f | 86 | Float_t Py() const { return fPy; } |
9f662337 | 87 | /** @return Track @f$ p_z@f$ - momentum in @f$ z@f$ (GeV) */ |
4347b38f | 88 | Float_t Pz() const { return fPz; } |
9f662337 | 89 | /** @return Track @f$ |p|@f$ - momentum (GeV) */ |
54240c8d | 90 | Float_t P() const; |
9f662337 | 91 | /** @return Track @f$ m@f$ - mass (GeV) */ |
54240c8d | 92 | Float_t M() const; |
9f662337 | 93 | /** @return Track @f$ q@f$ - charge (1/3) */ |
54240c8d | 94 | Float_t Q() const; |
9f662337 | 95 | /** @return Track PDG id number */ |
4347b38f | 96 | Int_t Pdg() const { return fPdg; } |
9f662337 | 97 | /** @return Time of hit in seconds */ |
4347b38f | 98 | Float_t Time() const { return fTime; } |
9f662337 | 99 | /** @return Path length through silicon */ |
088f8e79 | 100 | Float_t Length() const { return fLength; } |
9f662337 | 101 | /** @return Whether track was stopped in silicon */ |
088f8e79 | 102 | Bool_t IsStop() const { return fStop; } |
bf000c32 | 103 | |
9f662337 | 104 | /** Print info |
105 | @param opt Not used */ | |
bf000c32 | 106 | void Print(Option_t* opt="") const; |
9f662337 | 107 | /** @return Get Name */ |
bf000c32 | 108 | const char* GetName() const; |
9f662337 | 109 | /** @return Get title */ |
bf000c32 | 110 | const char* GetTitle() const; |
4347b38f | 111 | |
9f662337 | 112 | /** Set enenrgy deposited |
113 | @param edep Energy deposited */ | |
4347b38f | 114 | void SetEdep(Float_t edep) { fEdep = edep; } |
42403906 | 115 | protected: |
4347b38f | 116 | UShort_t fDetector; // (Sub) Detector # (1,2, or 3) |
117 | Char_t fRing; // Ring ID ('I' or 'O') | |
118 | UShort_t fSector; // Sector # (phi division) | |
119 | UShort_t fStrip; // Strip # (radial division) | |
120 | Float_t fPx; // Particle's X momentum X | |
121 | Float_t fPy; // Particle's Y momentum Y | |
122 | Float_t fPz; // Particle's Z momentum Z | |
123 | Int_t fPdg; // Particles PDG code | |
124 | Float_t fEdep; // Energy deposition | |
125 | Float_t fTime; // Particle's time of flight | |
088f8e79 | 126 | Float_t fLength; // Track length through material. |
127 | Bool_t fStop; // Whether track was stopped. | |
128 | ||
129 | ClassDef(AliFMDHit,2) //Hits for detector FMD | |
d28dcc0d | 130 | }; |
d28dcc0d | 131 | #endif |
4347b38f | 132 | //____________________________________________________________________ |
133 | // | |
0d0e6995 | 134 | // Local Variables: |
135 | // mode: C++ | |
136 | // End: | |
137 | // | |
4347b38f | 138 | // EOF |
139 | // |