Geometry construction functions separated from AliMUON, AliMUONv1into a new AliMUONGe...
[u/mrichter/AliRoot.git] / MUON / AliMUONv1.h
CommitLineData
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
17class TF1;
acc838fd 18class TGeoCombiTrans;
acc838fd 19class TString;
20class TGeoHMatrix;
a9e2aefa 21
30178c30 22class 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
d4bb94a1 45 virtual Int_t GetChamberId(Int_t volId) const;
46
c33d9661 47 Bool_t fStepManagerVersionOld; // Version of StepManager, Default is false
374ebd7d 48 Bool_t fAngleEffect; // Angle Effect along wires, Default is true
1391e633 49 Float_t fStepMaxInActiveGas; // Step max in active gas default 0.6cm
abaf7c9d 50
1391e633 51 // StepManager
52 Float_t * fStepSum; //!
53 Float_t * fDestepSum; //!
d7c4fbc4 54
55 TLorentzVector fTrackMomentum; // Momentum of the particle entering in the active gas of chamber
56 TLorentzVector fTrackPosition; // Position of the particle exiting the active gas of chamber
57 TF1 * fElossRatio; // Ratio of particle mean eloss with respect MIP's
58 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)
59 TF1 * fAngleEffectNorma;// Angle effect: Normalisation form theta=10 degres to theta between 0 and 10 (Khalil BOUDJEMLINE sep 2003 Ph.D Thesis)
d4bb94a1 60
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