]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUON.cxx
TClonesArray->Clone() removed
[u/mrichter/AliRoot.git] / MUON / AliMUON.cxx
index b701e6201005709e4ba075947a0fcd426e346b72..b1ccdefd5fa0fcd7cef2e96cb44586bbf1f86967 100644 (file)
 
 /* $Id$ */
 
-// ------------------
+//-----------------------------------------------------------------------------
 // Class AliMUON
 // ------------------
 // AliDetector class for MUON subsystem 
 // providing simulation data management 
+//-----------------------------------------------------------------------------
 
 #include "Riostream.h"
 
@@ -50,7 +51,8 @@
 #include "AliLoader.h"
 #include "AliRunDigitizer.h"
 #include "AliMC.h"
-#include "AliRun.h"    
+#include "AliRun.h"
+#include "AliRawDataHeaderSim.h"
 #include "AliMUON.h"
 #include "AliMUONChamberTrigger.h"
 #include "AliMUONConstants.h"
@@ -115,10 +117,12 @@ AliMUON::AliMUON()
     fTriggerResponseV1(kFALSE),
     fTriggerCoinc44(0),
     fTriggerEffCells(0),
-    fDigitizerWithNoise(kTRUE),
+    fDigitizerWithNoise(1),
+    fIsTailEffect(kTRUE),
     fRawWriter(0x0),
     fDigitMaker(0x0),
-    fHitStore(0x0)
+    fHitStore(0x0),
+  fDigitStoreConcreteClassName()
 {
 /// Default Constructor
     
@@ -147,10 +151,12 @@ AliMUON::AliMUON(const char *name, const char* title)
     fTriggerResponseV1(kFALSE),
     fTriggerCoinc44(0),
     fTriggerEffCells(0),
-    fDigitizerWithNoise(kTRUE),
+    fDigitizerWithNoise(1),
+    fIsTailEffect(kTRUE),
     fRawWriter(0x0),
     fDigitMaker(new AliMUONDigitMaker),
-    fHitStore(0x0)
+    fHitStore(0x0),
+  fDigitStoreConcreteClassName("AliMUONDigitStoreV2S")
 {
 /// Standard constructor  
   
@@ -477,6 +483,8 @@ void AliMUON::Digits2Raw()
 {
 /// Convert digits of the current event to raw data
 
+  AliRawDataHeaderSim header;
+
   if (!fRawWriter)
   {
     fRawWriter = new AliMUONRawWriter;
@@ -505,6 +513,7 @@ void AliMUON::Digits2Raw()
   
   treeD->GetEvent(0);
   
+  fRawWriter->SetHeader(header);
   if (!fRawWriter->Digits2Raw(digitStore,triggerStore))
   {
     AliError("pb writting raw data");
@@ -601,7 +610,7 @@ Bool_t  AliMUON::GetTriggerEffCells() const
 }  
 
 //____________________________________________________________________
-Bool_t  AliMUON::GetDigitizerWithNoise() const
+Int_t  AliMUON::GetDigitizerWithNoise() const
 {
 ///
 /// Returns fDigitizerWithNoise
@@ -610,3 +619,15 @@ Bool_t  AliMUON::GetDigitizerWithNoise() const
     
 }  
 
+//____________________________________________________________________
+void AliMUON::SetFastDecoder(Bool_t useFastDecoder)
+{
+/// Set fast raw data decoder 
+
+  if ( ! fDigitMaker ) {
+    AliError("Digit maker is not instantiated.");
+    return;
+  }   
+
+  fDigitMaker->SetFastDecoder(useFastDecoder);
+}