]>
Commit | Line | Data |
---|---|---|
a9e2aefa | 1 | #ifndef ALIMUONV1_H |
2 | #define ALIMUONV1_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 | |
9 | ///////////////////////////////////////////////////////// | |
acc838fd | 10 | // Manager and hits classes for set:MUON version 1 // |
a9e2aefa | 11 | ///////////////////////////////////////////////////////// |
12 | ||
30178c30 | 13 | #include <TLorentzVector.h> |
1391e633 | 14 | |
a9e2aefa | 15 | #include "AliMUON.h" |
1391e633 | 16 | |
17 | class TF1; | |
acc838fd | 18 | class TGeoCombiTrans; |
acc838fd | 19 | class TString; |
20 | class TGeoHMatrix; | |
a9e2aefa | 21 | |
30178c30 | 22 | class AliMUONv1 : public AliMUON |
23 | { | |
24 | public: | |
a9e2aefa | 25 | AliMUONv1(); |
26 | AliMUONv1(const char *name, const char *title); | |
acc838fd | 27 | virtual ~AliMUONv1(); |
a9e2aefa | 28 | virtual void CreateGeometry(); |
29 | virtual void CreateMaterials(); | |
30 | virtual void Init(); | |
31 | virtual Int_t IsVersion() const {return 1;} | |
32 | virtual void StepManager(); | |
c33d9661 | 33 | void StepManagerOld(); |
34 | void SetStepManagerVersionOld(Bool_t Opt) | |
35 | { fStepManagerVersionOld = Opt; } | |
374ebd7d | 36 | void SetAngleEffect(Bool_t Opt) |
37 | { fAngleEffect = Opt; } | |
c33d9661 | 38 | void SetStepMaxInActiveGas(Float_t StepMax) |
39 | {fStepMaxInActiveGas = StepMax; } | |
30178c30 | 40 | |
41 | protected: | |
fb1bf5c0 | 42 | AliMUONv1(const AliMUONv1& right); |
43 | AliMUONv1& operator = (const AliMUONv1& right); | |
44 | ||
c33d9661 | 45 | Bool_t fStepManagerVersionOld; // Version of StepManager, Default is false |
374ebd7d | 46 | Bool_t fAngleEffect; // Angle Effect along wires, Default is true |
1391e633 | 47 | Float_t fStepMaxInActiveGas; // Step max in active gas default 0.6cm |
5f91c9e8 | 48 | virtual Int_t GetChamberId(Int_t volId) const; |
abaf7c9d | 49 | |
1391e633 | 50 | // StepManager |
51 | Float_t * fStepSum; //! | |
52 | Float_t * fDestepSum; //! | |
d7c4fbc4 | 53 | |
54 | TLorentzVector fTrackMomentum; // Momentum of the particle entering in the active gas of chamber | |
55 | TLorentzVector fTrackPosition; // Position of the particle exiting the active gas of chamber | |
56 | TF1 * fElossRatio; // Ratio of particle mean eloss with respect MIP's | |
57 | TF1 * fAngleEffect10; // Angle effect in tracking chambers at theta =10 degres as a function of ElossRatio (Khalil BOUDJEMLINE sep 2003 Ph.D Thesis) (in micrometers) | |
58 | TF1 * fAngleEffectNorma;// Angle effect: Normalisation form theta=10 degres to theta between 0 and 10 (Khalil BOUDJEMLINE sep 2003 Ph.D Thesis) | |
acc838fd | 59 | TGeoCombiTrans* fGlobalTransformation; // global transformation |
60 | // applied to the whole geometry | |
30178c30 | 61 | private: |
acc838fd | 62 | // method |
63 | void PlaceVolume(const TString& name, const TString& mName, Int_t copyNo, | |
6b82c1f0 | 64 | const TGeoHMatrix& matrix, Int_t npar, Double_t* param, |
65 | const char* only) const; | |
acc838fd | 66 | |
9d6df3aa | 67 | ClassDef(AliMUONv1,2) // MUON Detector class Version 1 |
abaf7c9d | 68 | |
69 | ||
a9e2aefa | 70 | }; |
71 | #endif | |
72 | ||
73 | ||
74 | ||
75 | ||
76 | ||
77 | ||
78 |