]>
Commit | Line | Data |
---|---|---|
a9e2aefa | 1 | #ifndef ALIMUONHIT_H |
2 | #define ALIMUONHIT_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id$ */ | |
30178c30 | 7 | // Revision of includes 07/05/2004 |
a9e2aefa | 8 | |
474f669f | 9 | /// \ingroup sim |
692de412 | 10 | /// \class AliMUONHit |
11 | /// \brief MonteCarlo hit | |
12 | /// | |
5398f946 | 13 | /// MUON class for MonteCarlo Hits, inherited from AliHit for the |
692de412 | 14 | /// In addition to the ALiHit data member fX, fY, fZ and fTrack, AliMUONHit contains some info about the particle crossing the chamber: |
15 | /// Impulsion: fPtot, fPx, fPy and fPz | |
16 | /// Reference position at the center of the chamber (wire plane) fXref, fYref and fZref | |
17 | /// Cumulated path along the active volume fTlength for spliting of hits for very inclined tracks | |
18 | /// Energy loss of the particle inside the gas active volume. | |
19 | /// Incident fTheta and fPhi angle with respect of the wire plane of the chamber. | |
34c512f6 | 20 | |
21 | ||
a9e2aefa | 22 | #include "AliHit.h" |
23 | ||
24 | class AliMUONHit : public AliHit { | |
a450cfad | 25 | |
a9e2aefa | 26 | public: |
a450cfad | 27 | |
30178c30 | 28 | AliMUONHit(); |
be7a6875 | 29 | AliMUONHit(Int_t fIshunt, Int_t track, Int_t *vol, Float_t *hits); |
d59b2ec3 | 30 | |
d59b2ec3 | 31 | AliMUONHit(Int_t fIshunt, Int_t track, Int_t detElemId, Int_t idpart, |
32 | Float_t X, Float_t Y, Float_t Z, Float_t tof, Float_t momentum, | |
be7a6875 | 33 | Float_t theta, Float_t phi, Float_t length, Float_t destep); |
d59b2ec3 | 34 | |
d59b2ec3 | 35 | AliMUONHit(Int_t fIshunt, Int_t track, Int_t detElemId, Int_t idpart, |
36 | Float_t X, Float_t Y, Float_t Z, Float_t tof, Float_t momentum, | |
37 | Float_t theta, Float_t phi, Float_t length, Float_t destep, | |
be7a6875 | 38 | Float_t Xref, Float_t Yref, Float_t Zref); |
5398f946 | 39 | virtual ~AliMUONHit(); |
d59b2ec3 | 40 | |
7f97ef58 | 41 | virtual const char* GetName() const; |
42 | ||
be7a6875 | 43 | Int_t DetElemId()const {return fDetElemId;} ///< Return detection element ID |
d59b2ec3 | 44 | Int_t Chamber() const; |
34c512f6 | 45 | |
5398f946 | 46 | virtual void Print(Option_t* opt="") const; |
1391e633 | 47 | |
5398f946 | 48 | Float_t Particle() const {return fParticle;} ///< Return particle id |
49 | Float_t Theta() const {return fTheta;} ///< Return incident theta angle in degrees | |
50 | Float_t Phi() const {return fPhi;} ///< Return incident phi angle in degrees | |
51 | Float_t Tlength() const {return fTlength;} ///< Return track length inside the chamber | |
52 | Float_t Eloss() const {return fEloss;} ///< Return Ionisation energy loss in gas | |
53 | Float_t Age() const {return fAge;} ///< Return Particle Age | |
54 | Int_t PHfirst() const {return fPHfirst;} ///< Return First padhit | |
55 | Int_t PHlast() const {return fPHlast;} ///< Return Last padhit | |
56 | ||
57 | Float_t Momentum() const {return fPTot;} ///< Return local momentum P of the entering track | |
58 | Float_t Px() const {return fPx;} ///< Return Px | |
59 | Float_t Py() const {return fPy;} ///< Return Py | |
60 | Float_t Pz() const {return fPz;} ///< Return Pz | |
61 | Float_t Cx() const {return fPx/fPTot;} ///< Return Px/PTot | |
62 | Float_t Cy() const {return fPy/fPTot;} ///< Return Py/PTot | |
63 | Float_t Cz() const {return fPz/fPTot;} ///< Return Pz/PTot | |
64 | ||
65 | Float_t Xref() const {return fXref;} ///< Return X position of hit in the center of the chamber (without angle effect) | |
66 | Float_t Yref() const {return fYref;} ///< Return Y position of hit in the center of the chamber (without angle effect) | |
67 | Float_t Zref() const {return fZref;} ///< Return Z position of hit in the center of the chamber (without angle effect) | |
6464217e | 68 | |
d59b2ec3 | 69 | private: |
18b6b8c7 | 70 | Int_t fDetElemId; ///< Detection element ID |
71 | Float_t fParticle; ///< Geant3 particle type | |
72 | Float_t fTheta ; ///< Incident theta angle in degrees | |
73 | Float_t fPhi ; ///< Incident phi angle in degrees | |
74 | Float_t fTlength; ///< Track length inside the chamber | |
5398f946 | 75 | Float_t fEloss; ///< Ionisation energy loss in gas |
18b6b8c7 | 76 | Float_t fAge; ///< Particle Age |
77 | Int_t fPHfirst; ///< First padhit | |
78 | Int_t fPHlast; ///< Last padhit | |
a9e2aefa | 79 | |
18b6b8c7 | 80 | Float_t fPTot; ///< Local momentum P of the track when entering in the chamber |
81 | Float_t fPx; ///< Px | |
82 | Float_t fPy; ///< Py | |
83 | Float_t fPz; ///< Pz | |
a9e2aefa | 84 | |
18b6b8c7 | 85 | Float_t fXref; ///< X position of hit in the center of the chamber (without angle effect) |
86 | Float_t fYref; ///< Y position of hit in the center of the chamber (without angle effect) | |
87 | Float_t fZref; ///< Z position of hit in the center of the chamber (without angle effect) | |
1391e633 | 88 | |
89 | ||
be7a6875 | 90 | ClassDef(AliMUONHit,2) //Hit object for MUON |
a9e2aefa | 91 | }; |
92 | #endif |