X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=MUON%2FAliMUON.h;h=7cd8e798654cd5c0eefaead803b4540115e8f3b0;hb=ae6ad644f5274cb603156130c72784a75becc7b1;hp=691805ad92108b0663492a8698f3eeb20f88dddf;hpb=8f286c40410c16b134258b269a554d2db73d5be2;p=u%2Fmrichter%2FAliRoot.git diff --git a/MUON/AliMUON.h b/MUON/AliMUON.h index 691805ad921..7cd8e798654 100644 --- a/MUON/AliMUON.h +++ b/MUON/AliMUON.h @@ -4,7 +4,7 @@ * See cxx source for full Copyright notice */ /* $Id$ */ -// Revision of includes 07/05/2004 +// Revision of includes 12/01/2009 /// \ingroup sim /// \class AliMUON @@ -12,30 +12,25 @@ /// simulation data management -#include - #include "AliDetector.h" -#include "AliMUONSimData.h" #include "AliMUONChamber.h" #include "AliMUONTrigger.h" -#include - -class TFile; -class TTree; +#include -class AliLoader; -class AliMUONSimData; class AliMUONResponse; -class AliMUONSegmentation; -class AliMUONHit; class AliMUONGeometry; class AliMUONGeometryTransformer; class AliMUONGeometryBuilder; class AliMUONRawWriter; class AliMUONVGeometryBuilder; -class AliESD; class AliMUONDigitMaker; +class AliMUONVHitStore; +class AliMUONCalibrationData; + +class AliLoader; + +class TObjArray; class AliMUON : public AliDetector { @@ -48,31 +43,18 @@ class AliMUON : public AliDetector void AddGeometryBuilder(AliMUONVGeometryBuilder* geomBuilder); void ResetGeometryBuilder(); - virtual void BuildGeometry(); /// Return geometry builder AliMUONGeometryBuilder* GetGeometryBuilder() const {return fGeometryBuilder;} const AliMUONGeometryTransformer* GetGeometryTransformer() const; /// Return segmentation - AliMUONSegmentation* GetSegmentation() const { return fSegmentation; } - - /// Return MUONData - AliMUONSimData* GetMUONData() {return fMUONData;} // MUONLoader definition virtual AliLoader* MakeLoader(const char* topfoldername); //builds standard getter (AliLoader type) - // Interface with AliMUONData - /// Make branch - virtual void MakeBranch(Option_t *opt=" ") {GetMUONData()->MakeBranch(opt);} virtual void SetTreeAddress(); - /// Reset hits - virtual void ResetHits() {GetMUONData()->ResetHits();} - /// Reset digits - virtual void ResetDigits() {GetMUONData()->ResetDigits();} - /// Reset trigger - virtual void ResetTrigger() {GetMUONData()->ResetTrigger();} - /// Set split level + + /// Set split level for making branches in outfiles virtual void SetSplitLevel(Int_t SplitLevel) {fSplitLevel=SplitLevel;} // Digitisation @@ -96,7 +78,7 @@ class AliMUON : public AliDetector virtual void SetChargeSpread(Int_t id, Float_t p1, Float_t p2); virtual void SetMaxAdc(Int_t id, Int_t p1); // Set Response Model - virtual void SetResponseModel(Int_t id, AliMUONResponse *response); + virtual void SetResponseModel(Int_t id, const AliMUONResponse& response); // Set Stepping Parameters virtual void SetMaxStepGas(Float_t p1); @@ -130,16 +112,34 @@ class AliMUON : public AliDetector { fTriggerEffCells = trigEffCells; } virtual Bool_t GetTriggerEffCells() const; /// Set off generation of noisy digits - virtual void SetDigitizerWithNoise(Bool_t digitizerWithNoise) + virtual void SetDigitizerWithNoise(Int_t digitizerWithNoise) { fDigitizerWithNoise = digitizerWithNoise; } - virtual Bool_t GetDigitizerWithNoise() const; + virtual Int_t GetDigitizerWithNoise() const; + + /// Parametrised tail effect in resolution histogram + virtual void SetTailEffect(Bool_t isTailEffect) { fIsTailEffect=isTailEffect; } + + // Check if using fast decoders. + virtual Bool_t UsingFastTrackerDecoder() const; + virtual Bool_t UsingFastTriggerDecoder() const; + + // Set fast raw data decoders + virtual void SetFastTrackerDecoder(Bool_t useFastDecoder); + virtual void SetFastTriggerDecoder(Bool_t useFastDecoder); + // Getters /// Return reference to Chamber \a id virtual AliMUONChamber& Chamber(Int_t id) {return *((AliMUONChamber *) (*fChambers)[id]);} - /// Return reference to New Circuit \a id + virtual void MakeBranch(Option_t* opt=" "); + virtual void ResetHits(); + + /// Set digit store class name + void SetDigitStoreClassName(const char* classname) { fDigitStoreConcreteClassName = classname; } + /// Return digit store class name + const TString DigitStoreClassName() const { return fDigitStoreConcreteClassName; } protected: /// Not implemented @@ -151,16 +151,14 @@ class AliMUON : public AliDetector Int_t fNCh; ///< Number of chambers Int_t fNTrackingCh; ///< Number of tracking chambers* - AliMUONSimData* fMUONData; ///< Data container for MUON subsystem Int_t fSplitLevel; ///< Splitlevel when making branches in outfiles. TObjArray* fChambers; ///< List of Tracking Chambers AliMUONGeometryBuilder* fGeometryBuilder; ///< Geometry builder - AliMUONSegmentation* fSegmentation; ///< New segmentation // - Bool_t fAccCut; ///