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