X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=MUON%2FAliMUONv1.h;h=2aa8c941d55e18c852b83e42caf36e465ea52b24;hb=1200579f5f1d214e215c84cc8c8e5bc3abc1ea5d;hp=921069126b81b125d05f7ba441ec07ef9427f8d8;hpb=d4bb94a1796e6e64ac782a0c88d86818ba359a4d;p=u%2Fmrichter%2FAliRoot.git diff --git a/MUON/AliMUONv1.h b/MUON/AliMUONv1.h index 921069126b8..2aa8c941d55 100644 --- a/MUON/AliMUONv1.h +++ b/MUON/AliMUONv1.h @@ -6,14 +6,15 @@ /* $Id$ */ // Revision of includes 07/05/2004 -///////////////////////////////////////////////////////// -// Manager and hits classes for set:MUON version 1 // -///////////////////////////////////////////////////////// +/// \ingroup base +/// \class AliMUONv1 +/// \brief AliDetector class for MUON subsystem which implements +/// functions for simulation -#include - #include "AliMUON.h" +#include + class TF1; class TGeoCombiTrans; class TString; @@ -23,18 +24,23 @@ class AliMUONv1 : public AliMUON { public: AliMUONv1(); - AliMUONv1(const char *name, const char *title); + AliMUONv1(const char *name, const char* title = "default"); virtual ~AliMUONv1(); virtual void CreateGeometry(); virtual void CreateMaterials(); + virtual void AddAlignableVolumes() const; virtual void Init(); + + /// Return the version number of this detector virtual Int_t IsVersion() const {return 1;} + virtual void StepManager(); - void StepManagerOld(); - void SetStepManagerVersionOld(Bool_t Opt) - { fStepManagerVersionOld = Opt; } + + /// Set option to take into account angle effect void SetAngleEffect(Bool_t Opt) { fAngleEffect = Opt; } + + /// Set max step max in active gas void SetStepMaxInActiveGas(Float_t StepMax) {fStepMaxInActiveGas = StepMax; } @@ -42,31 +48,23 @@ class AliMUONv1 : public AliMUON AliMUONv1(const AliMUONv1& right); AliMUONv1& operator = (const AliMUONv1& right); - virtual Int_t GetChamberId(Int_t volId) const; + virtual Int_t GetGeomModuleId(Int_t volId) const; + TString CurrentVolumePath() const; - Bool_t fStepManagerVersionOld; // Version of StepManager, Default is false - Bool_t fAngleEffect; // Angle Effect along wires, Default is true - Float_t fStepMaxInActiveGas; // Step max in active gas default 0.6cm + Bool_t fAngleEffect; ///< Angle Effect along wires, Default is true + Float_t fStepMaxInActiveGas; ///< Step max in active gas default 0.6cm // StepManager - Float_t * fStepSum; //! - Float_t * fDestepSum; //! + Float_t * fStepSum; //!< Sum of track steps per chamber + Float_t * fDestepSum; //!< Sum of energy deposits per chamber - TLorentzVector fTrackMomentum; // Momentum of the particle entering in the active gas of chamber - TLorentzVector fTrackPosition; // Position of the particle exiting the active gas of chamber - TF1 * fElossRatio; // Ratio of particle mean eloss with respect MIP's - 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) - TF1 * fAngleEffectNorma;// Angle effect: Normalisation form theta=10 degres to theta between 0 and 10 (Khalil BOUDJEMLINE sep 2003 Ph.D Thesis) - - private: - // method - void PlaceVolume(const TString& name, const TString& mName, Int_t copyNo, - const TGeoHMatrix& matrix, Int_t npar, Double_t* param, - const char* only) const; - - ClassDef(AliMUONv1,2) // MUON Detector class Version 1 - - + TLorentzVector fTrackMomentum; ///< Momentum of the particle entering in the active gas of chamber + TLorentzVector fTrackPosition; ///< Position of the particle exiting the active gas of chamber + TF1 * fElossRatio; ///< Ratio of particle mean eloss with respect MIP's + 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) + TF1 * fAngleEffectNorma;///< Angle effect: Normalisation form theta=10 degres to theta between 0 and 10 (Khalil BOUDJEMLINE sep 2003 Ph.D Thesis) + + ClassDef(AliMUONv1,5) // MUON Detector class Version 1 }; #endif