]> git.uio.no Git - u/mrichter/AliRoot.git/blob - FMD/AliFMDHit.h
0. General code clean-up, including messages, and the like.
[u/mrichter/AliRoot.git] / FMD / AliFMDHit.h
1 #ifndef AliFMDhit_H
2 #define AliFMDhit_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights
4  * reserved. 
5  *
6  * See cxx source for full Copyright notice                               
7  */
8 //___________________________________________________________________
9 //
10 // AliFMDhit is the hit class for the FMD. Hits are the information
11 // that comes from a Monte Carlo at each step as a particle mass
12 // through sensitive detector elements as particles are transported
13 // through a detector.
14 //
15 #ifndef ALIHIT_H
16 # include <AliHit.h>
17 #endif
18
19 //___________________________________________________________________
20 class AliFMDHit : public AliHit 
21 {
22 public:
23   AliFMDHit();
24   AliFMDHit(Int_t    shunt, 
25             Int_t    track, 
26             UShort_t detector, 
27             Char_t   ring, 
28             UShort_t sector, 
29             UShort_t strip, 
30             Float_t  x=0, 
31             Float_t  y=0, 
32             Float_t  z=0,
33             Float_t  px=0, 
34             Float_t  py=0, 
35             Float_t  pz=0,
36             Float_t  edep=0,
37             Int_t    pdg=0,
38             Float_t  t=0, 
39             Float_t  l=0, 
40             Bool_t   stop=kFALSE);
41   virtual ~AliFMDHit() {}
42   
43   UShort_t Detector()   const { return fDetector; }
44   Char_t   Ring()       const { return fRing;     }
45   UShort_t Sector()     const { return fSector;   }
46   UShort_t Strip()      const { return fStrip;    }
47   Float_t  Edep()       const { return fEdep;     }
48   Float_t  Px()         const { return fPx;       }
49   Float_t  Py()         const { return fPy;       }
50   Float_t  Pz()         const { return fPz;       } 
51   Float_t  P()          const;
52   Float_t  M()          const;
53   Float_t  Q()          const;
54   Int_t    Pdg()        const { return fPdg;      }
55   Float_t  Time()       const { return fTime;     }
56   Float_t  Length()     const { return fLength;   }
57   Bool_t   IsStop()     const { return fStop;     }
58
59   void        Print(Option_t* opt="") const;
60   const char* GetName()               const;
61   const char* GetTitle()              const;
62
63   void     SetEdep(Float_t edep) { fEdep = edep; }
64 protected:
65   UShort_t fDetector;  // (Sub) Detector # (1,2, or 3)
66   Char_t   fRing;      // Ring ID ('I' or 'O')
67   UShort_t fSector;    // Sector # (phi division)
68   UShort_t fStrip;     // Strip # (radial division)
69   Float_t  fPx;        // Particle's X momentum X
70   Float_t  fPy;        // Particle's Y momentum Y
71   Float_t  fPz;        // Particle's Z momentum Z
72   Int_t    fPdg;       // Particles PDG code 
73   Float_t  fEdep;      // Energy deposition
74   Float_t  fTime;      // Particle's time of flight
75   Float_t  fLength;    // Track length through material. 
76   Bool_t   fStop;      // Whether track was stopped. 
77   
78   ClassDef(AliFMDHit,2)  //Hits for detector FMD
79 };
80 #endif
81 //____________________________________________________________________
82 //
83 // Local Variables:
84 //   mode: C++
85 // End:
86 //
87 // EOF
88 //