]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONTrackerPreprocessor.cxx
ALIROOT-5420 Changes for CDH v3
[u/mrichter/AliRoot.git] / MUON / AliMUONTrackerPreprocessor.cxx
index 7eda73b18f10f8d36dd6055680e872cad68207e8..0b18b2c58dd548a1359000999b6d10d3f84abd67 100644 (file)
@@ -21,6 +21,7 @@
 #include "AliMUONHVSubprocessor.h"
 #include "AliMUONGMSSubprocessor.h"
 #include "AliMUONGainSubprocessor.h"
+#include "AliMUONOccupancySubprocessor.h"
 
 #include "AliLog.h"
 #include "AliShuttleInterface.h"
@@ -45,12 +46,18 @@ ClassImp(AliMUONTrackerPreprocessor)
 //_____________________________________________________________________________
 AliMUONTrackerPreprocessor::AliMUONTrackerPreprocessor(AliShuttleInterface* shuttle)
 : AliMUONPreprocessor("MCH",shuttle),
-  fPedestalSubprocessor(new AliMUONPedestalSubprocessor(this)),
-  fGMSSubprocessor(new AliMUONGMSSubprocessor(this)),    
-  fHVSubprocessor(new AliMUONHVSubprocessor(this)),
-  fGainSubprocessor(new AliMUONGainSubprocessor(this))
+fPedestalSubprocessor(new AliMUONPedestalSubprocessor(this)),
+fGMSSubprocessor(new AliMUONGMSSubprocessor(this)),    
+fHVSubprocessor(new AliMUONHVSubprocessor(this,kTRUE)),
+fGainSubprocessor(new AliMUONGainSubprocessor(this)),
+fOccupancySubprocessor(new AliMUONOccupancySubprocessor(this))
 {
   /// ctor. 
+    
+    AddRunType("PEDESTAL");
+    AddRunType("CALIBRATION");
+    AddRunType("GMS");
+    AddRunType("PHYSICS");
 }
 
 //_____________________________________________________________________________
@@ -62,42 +69,52 @@ AliMUONTrackerPreprocessor::~AliMUONTrackerPreprocessor()
   delete fGMSSubprocessor;
   delete fHVSubprocessor;
   delete fGainSubprocessor;
+  delete fOccupancySubprocessor;
 }
 
 //_____________________________________________________________________________
 void
 AliMUONTrackerPreprocessor::Initialize(Int_t run, UInt_t startTime, UInt_t endTime)
 {
-  /// Re-register the subprocessor(s) depnding on the actual runTYpe
+  /// Re-register the subprocessor(s) depending on the actual runType
 
   ClearSubprocessors();
   
   TString runType = GetRunType();
   
-  if ( runType == "PEDESTAL_RUN" ) // FIXME : check the name
+  fIsValid = kTRUE;
+  fIsApplicable = kTRUE;
+  
+  if ( runType == "PEDESTAL" )
   {
     Add(fPedestalSubprocessor); // to be called only for pedestal runs
     Log("INFO-Will run Pedestal subprocessor");
   }
-  else if ( runType == "ELECTRONICS_CALIBRATION_RUN" ) // FIXME : check the name
+  else if ( runType == "CALIBRATION" )
   {
-    Add(new AliMUONGainSubprocessor(this)); // to be called only for gain runs
+    Add(fGainSubprocessor); // to be called only for gain runs
     Log("INFO-Will run Gain subprocessor");
   }
-  else if ( runType == "GMS" ) // FIXME : check the name
+  else if ( runType == "GMS" )
   {
     Add(fGMSSubprocessor);
     Log("INFO-Will run GMS subprocessor");
   }
-  else if ( runType == "PHYSICS" ) // FIXME : check the name
+  else if ( runType == "PHYSICS" )
   {
     Bool_t useDCS(kTRUE);
     Add(fHVSubprocessor,useDCS); // to be called only for physics runs
+    Add(fOccupancySubprocessor);
     Log("INFO-Will run HV subprocessor");
+    if ( fHVSubprocessor->IncludeHVCurrent() )
+    {
+      Log("INFO-HV subprocessor will store HV currents in addition to the voltages");
+    }
+    Log("INFO-Will run Occupancy subprocessor");
   }
   else
   {
-    Log(Form("ERROR-Unknown RunType=%",runType.Data()));
+    fIsApplicable = kFALSE;
   }
   
   AliMUONPreprocessor::Initialize(run,startTime,endTime);