Enable (handle by a flag) trigger conversion from raw2sdigits for embedding (Javier...
authorlaphecet <laphecet@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 15 Apr 2011 13:46:53 +0000 (13:46 +0000)
committerlaphecet <laphecet@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 15 Apr 2011 13:46:53 +0000 (13:46 +0000)
MUON/AliMUON.cxx
MUON/AliMUON.h
MUON/Config.C

index caf48cc..d07ad1e 100644 (file)
@@ -31,7 +31,7 @@
 #include "AliMUONCalibrationData.h"
 
 #include "AliMUONDigitStoreV1.h"
-#include "AliMUONVTriggerStore.h"
+#include "AliMUONTriggerStoreV1.h"
 #include "AliMUONHitStoreV1.h"
 
 #include "AliMUONChamberTrigger.h"
@@ -105,6 +105,7 @@ AliMUON::AliMUON()
     fDigitizerWithNoise(1),
     fDigitizerNSigmas(4.0),
     fIsTailEffect(kTRUE),
+    fConvertTrigger(kFALSE),
     fRawWriter(0x0),
     fDigitMaker(0x0),
     fHitStore(0x0),
@@ -143,6 +144,7 @@ AliMUON::AliMUON(const char *name, const char* title)
     fDigitizerWithNoise(1),
     fDigitizerNSigmas(4.0),
     fIsTailEffect(kTRUE),
+    fConvertTrigger(kFALSE),
     fRawWriter(0x0),
     fDigitMaker(new AliMUONDigitMaker),
     fHitStore(0x0),
@@ -523,11 +525,18 @@ Bool_t AliMUON::Raw2SDigits(AliRawReader* rawReader)
   TTree* treeS = fLoader->TreeS();
   
   AliMUONVDigitStore* sDigitStore = AliMUONVDigitStore::Create(DigitStoreClassName());
-  
+       AliMUONVTriggerStore* triggerStore = 0x0;
+       
   sDigitStore->Connect(*treeS);
-  
+       
   if (!fDigitMaker) fDigitMaker = new AliMUONDigitMaker;
-  
+       
+       if (fConvertTrigger) {
+               triggerStore = new AliMUONTriggerStoreV1;
+               triggerStore->Connect(*treeS,true);
+               fDigitMaker->SetMakeTriggerDigits(true);
+       }
+       
   if (!fDigitCalibrator)
   {
     AliMUONRecoParam* recoParam = 0x0;
@@ -560,7 +569,7 @@ Bool_t AliMUON::Raw2SDigits(AliRawReader* rawReader)
     fDigitCalibrator = new AliMUONDigitCalibrator(*fCalibrationData,recoParam,calibMode.Data());
   }
   
-  fDigitMaker->Raw2Digits(rawReader,sDigitStore,0x0);
+       fDigitMaker->Raw2Digits(rawReader,sDigitStore,triggerStore);
   
   fDigitCalibrator->Calibrate(*sDigitStore);
 
@@ -582,6 +591,8 @@ Bool_t AliMUON::Raw2SDigits(AliRawReader* rawReader)
   fLoader->UnloadSDigits();
   
   delete sDigitStore;
+       
+       delete triggerStore;
   
   return kTRUE;
 }
index fb7042c..2763d39 100644 (file)
@@ -126,7 +126,10 @@ class AliMUON : public  AliDetector
   /// Parametrised tail effect in resolution histogram
   virtual void SetTailEffect(Bool_t isTailEffect) { fIsTailEffect=isTailEffect; }
     
-    // Getters
+       /// Enable trigger raw2sdigits conversion 
+       virtual void SetConvertTrigger(Bool_t convertTrigger = true) { fConvertTrigger = convertTrigger;}
+
+       // Getters
                   /// Return reference to Chamber \a id
     virtual AliMUONChamber& Chamber(Int_t id)
       {return *((AliMUONChamber *) (*fChambers)[id]);}
@@ -177,6 +180,7 @@ class AliMUON : public  AliDetector
     Int_t  fDigitizerWithNoise; ///< Flag to switch on/off generation of noisy digits
     Double_t fDigitizerNSigmas; ///< nsigma cut for noise generation
     Bool_t fIsTailEffect;       ///< Switch to turn on/off the tail effect
+       Bool_t fConvertTrigger;     ///< Switch to enable trigger raw2sdigit conversion 
 
     AliMUONRawWriter* fRawWriter; //!< Raw data writer
     
@@ -190,7 +194,7 @@ class AliMUON : public  AliDetector
 
   AliMUONDigitCalibrator* fDigitCalibrator; ///< digit calibrator (for raw2sdigits)
   
-    ClassDef(AliMUON,23)  // MUON Detector base class
+    ClassDef(AliMUON,24)  // MUON Detector base class
 };
 #endif
 
index 18f4a6f..65e8e41 100644 (file)
@@ -273,6 +273,7 @@ void Config(const char* directory="",
     // Noise-only digits in tracker/trigger (0=no noise, 1=default (noise in tracker), 2=noise in tracker and trigger):
     cout << "****** DISABLING NOISE GENERATION AS WE DO EMBEDDING ******" << endl;
     MUON->SetDigitizerWithNoise(0);
+               MUON->SetConvertTrigger(true);
     
     new AliITSv11Hybrid("ITS","ITS v11Hybrid");