X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=MUON%2FAliMUON.cxx;h=eaaa167a704c00c9acac5cf3acbaa16ab1db6609;hb=da2d199e7a43dca38046efcbf1dae1a5648aa5a5;hp=e7b6cdae40377c9def57f6d9e160c5496091635e;hpb=8c0b5e70eaf4af646346ce107d408237194cb59d;p=u%2Fmrichter%2FAliRoot.git diff --git a/MUON/AliMUON.cxx b/MUON/AliMUON.cxx index e7b6cdae403..eaaa167a704 100644 --- a/MUON/AliMUON.cxx +++ b/MUON/AliMUON.cxx @@ -15,66 +15,47 @@ /* $Id$ */ -// ------------------ +//----------------------------------------------------------------------------- // Class AliMUON // ------------------ // AliDetector class for MUON subsystem // providing simulation data management +//----------------------------------------------------------------------------- -#include "Riostream.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -//#include "AliHeader.h" -#include "AliLoader.h" -#include "AliRunDigitizer.h" -#include "AliMC.h" -#include "AliRun.h" #include "AliMUON.h" + +#include "AliMUONSDigitizerV2.h" +#include "AliMUONDigitizerV3.h" +#include "AliMUONDigitMaker.h" +#include "AliMUONCalibrationData.h" + +#include "AliMUONDigitStoreV1.h" +#include "AliMUONVTriggerStore.h" +#include "AliMUONHitStoreV1.h" + #include "AliMUONChamberTrigger.h" #include "AliMUONConstants.h" -#include "AliMUONHit.h" #include "AliMUONGeometry.h" #include "AliMUONGeometryTransformer.h" #include "AliMUONGeometryBuilder.h" -#include "AliMUONCommonGeometryBuilder.h" #include "AliMUONVGeometryBuilder.h" -#include "AliMUONRawWriter.h" -#include "AliLog.h" - -#include "AliMUONSDigitizerV2.h" -#include "AliMUONDigitizerV3.h" -#include "AliMUONDigitMaker.h" - +#include "AliMUONCommonGeometryBuilder.h" #include "AliMUONSt1GeometryBuilderV2.h" #include "AliMUONSt2GeometryBuilderV2.h" #include "AliMUONSlatGeometryBuilder.h" #include "AliMUONTriggerGeometryBuilder.h" -#include "AliMUONDigitStoreV1.h" -#include "AliMUONVTriggerStore.h" -#include "AliMUONHitStoreV1.h" +#include "AliMUONRawWriter.h" + +#include "AliLoader.h" +#include "AliCDBManager.h" +#include "AliRunDigitizer.h" +#include "AliMC.h" +#include "AliRun.h" +#include "AliRawDataHeaderSim.h" +#include "AliLog.h" + +#include // Defaults parameters for Z positions of chambers // taken from values for "stations" in AliMUON::AliMUON @@ -116,9 +97,15 @@ AliMUON::AliMUON() fTriggerCoinc44(0), fTriggerEffCells(0), fDigitizerWithNoise(1), + fDigitizerNSigmas(4.0), + fIsTailEffect(kTRUE), fRawWriter(0x0), fDigitMaker(0x0), - fHitStore(0x0) + fHitStore(0x0), + fDigitStoreConcreteClassName(), + fCalibrationData(0x0), + fTimeMin(-100000), + fTimeMax(100000) { /// Default Constructor @@ -148,15 +135,22 @@ AliMUON::AliMUON(const char *name, const char* title) fTriggerCoinc44(0), fTriggerEffCells(0), fDigitizerWithNoise(1), + fDigitizerNSigmas(4.0), + fIsTailEffect(kTRUE), fRawWriter(0x0), fDigitMaker(new AliMUONDigitMaker), - fHitStore(0x0) + fHitStore(0x0), + fDigitStoreConcreteClassName("AliMUONDigitStoreV2S"), + fCalibrationData(), + fTimeMin(-100000), + fTimeMax(100000) + { -/// Standard constructor + /// Standard constructor AliDebug(1,Form("ctor this=%p",this)); fIshunt = 0; - + //PH SetMarkerColor(kRed);// // Geometry builder @@ -165,11 +159,11 @@ AliMUON::AliMUON(const char *name, const char* title) // Common geometry definitions fGeometryBuilder ->AddBuilder(new AliMUONCommonGeometryBuilder(this)); - + // By default, add also all the needed geometry builders. // If you want to change this from outside, please use ResetGeometryBuilder // method, followed by AddGeometryBuilder ones. - + AddGeometryBuilder(new AliMUONSt1GeometryBuilderV2(this)); AddGeometryBuilder(new AliMUONSt2GeometryBuilderV2(this)); AddGeometryBuilder(new AliMUONSlatGeometryBuilder(this)); @@ -196,7 +190,10 @@ AliMUON::AliMUON(const char *name, const char* title) } } // Chamber stCH (0, 1) in } // Station st (0...) - + + Int_t runnumber = AliCDBManager::Instance()->GetRun(); + + fCalibrationData = new AliMUONCalibrationData(runnumber); } //____________________________________________________________________ @@ -210,6 +207,7 @@ AliMUON::~AliMUON() delete fRawWriter; delete fDigitMaker; delete fHitStore; + delete fCalibrationData; } //_____________________________________________________________________________ @@ -220,18 +218,6 @@ void AliMUON::AddGeometryBuilder(AliMUONVGeometryBuilder* geomBuilder) fGeometryBuilder->AddBuilder(geomBuilder); } -//____________________________________________________________________ -void AliMUON::BuildGeometry() -{ -/// Geometry for event display - - -// for (Int_t i = 0; i < AliMUONConstants::NCh(); i++) -// this->Chamber(i).SegmentationModel2(1)->Draw("eventdisplay");// to be check ! - - -} - //____________________________________________________________________ const AliMUONGeometry* AliMUON::GetGeometry() const { @@ -449,7 +435,10 @@ AliDigitizer* AliMUON::CreateDigitizer(AliRunDigitizer* manager) const { /// Return digitizer - return new AliMUONDigitizerV3(manager, fDigitizerWithNoise); + AliMUONDigitizerV3* digitizer = new AliMUONDigitizerV3(manager, fDigitizerWithNoise); + AliMUONDigitizerV3::SetNSigmas(fDigitizerNSigmas); + digitizer->SetCalibrationData(fCalibrationData); + return digitizer; } //_____________________________________________________________________ @@ -477,6 +466,8 @@ void AliMUON::Digits2Raw() { /// Convert digits of the current event to raw data + AliRawDataHeaderSim header; + if (!fRawWriter) { fRawWriter = new AliMUONRawWriter; @@ -505,6 +496,7 @@ void AliMUON::Digits2Raw() treeD->GetEvent(0); + fRawWriter->SetHeader(header); if (!fRawWriter->Digits2Raw(digitStore,triggerStore)) { AliError("pb writting raw data"); @@ -520,7 +512,6 @@ void AliMUON::Digits2Raw() Bool_t AliMUON::Raw2SDigits(AliRawReader* rawReader) { /// Convert raw data to SDigit -/// Only for tracking for the moment (ChF) fLoader->LoadDigits("READ"); if (!fLoader->TreeS()) fLoader->MakeSDigitsContainer(); @@ -610,3 +601,4 @@ Int_t AliMUON::GetDigitizerWithNoise() const } +