Reflecting changes in AliPreprocessor
authorivana <ivana@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 5 Apr 2007 15:12:55 +0000 (15:12 +0000)
committerivana <ivana@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 5 Apr 2007 15:12:55 +0000 (15:12 +0000)
(Laurent)

MUON/AliMUONGMSSubprocessor.cxx
MUON/AliMUONGainSubprocessor.cxx
MUON/AliMUONHVSubprocessor.cxx
MUON/AliMUONPedestalSubprocessor.cxx
MUON/AliMUONPreprocessor.cxx
MUON/AliMUONPreprocessor.h
MUON/AliMUONTrackerPreprocessor.cxx
MUON/TestMUONPreprocessor.C

index 06a993b..027d127 100644 (file)
@@ -72,14 +72,14 @@ UInt_t AliMUONGMSSubprocessor::ProcessFile(const TString& fileName)
   TFile f(fileName.Data());
   if ( ! f.IsOpen() ) {
     Master()->Log(Form("Cannot open file %s",fileName.Data()));
-    return 0;
+    return 1;
   }  
   
   // Get array with matrices
   TClonesArray* array = (TClonesArray*)f.Get(fgkMatrixArrayName);
   if ( ! array ) {
     Master()->Log(Form("TClonesArray not found in file %s",fileName.Data()));
-    return 0;
+    return 2;
   }  
   
   // Convert matrices into Alice alignment objects
@@ -96,12 +96,12 @@ UInt_t AliMUONGMSSubprocessor::ProcessFile(const TString& fileName)
   metaData.SetResponsible("");
   metaData.SetComment("This preprocessor fills GMS alignment objects.");
 
-  UInt_t result = Master()->Store("SHUTTLE", "GMS", data, &metaData, 0, 0);
+  Bool_t result = Master()->Store("SHUTTLE", "GMS", data, &metaData, 0, 0);
 
   // Clear MisAlignArray in transformer
   fTransformer.ClearMisAlignmentData();
 
-  return result;
+  return (result!=kTRUE);
 }  
 
 //
index 49d15c3..a013596 100644 (file)
@@ -123,7 +123,7 @@ AliMUONGainSubprocessor::Process(TMap* /*dcsAliasMap*/)
   {
     // this is the only reason to fail for the moment : getting no Gain
     // at all.
-    return 0;
+    return 1;
   }
     
   AliMUON2DStoreValidator validator;
@@ -158,9 +158,9 @@ AliMUONGainSubprocessor::Process(TMap* /*dcsAliasMap*/)
        metaData.SetComment("Computed by AliMUONGainSubprocessor $Id$");
   
   Bool_t validToInfinity = kTRUE;
-       UInt_t result = Master()->Store("Calib", "Gains", fGains, &metaData, 0, validToInfinity);
+       Bool_t result = Master()->Store("Calib", "Gains", fGains, &metaData, 0, validToInfinity);
   
-  return result;  
+  return ( result != kTRUE ); // return 0 if everything is ok  
 }
 
 //_____________________________________________________________________________
index bfba3d0..29e97bf 100644 (file)
@@ -120,7 +120,6 @@ AliMUONHVSubprocessor::Process(TMap* dcsAliasMap)
     if (!hvPair)
     {
       ++aliasNotFound;
-//      Master()->Log(Form("WARNING Did not find expected alias (%s)",aliasName.Data()));
     }
     else
     {
@@ -129,7 +128,6 @@ AliMUONHVSubprocessor::Process(TMap* dcsAliasMap)
       if (!values)
       {
         ++valueNotFound;
-//        Master()->Log(Form("WARNING Could not get values for alias (%s)",aliasName.Data()));
       }
       else
       {
@@ -143,7 +141,7 @@ AliMUONHVSubprocessor::Process(TMap* dcsAliasMap)
   if ( kNoAliases ) 
   {
     Master()->Log("ERROR : no DCS values found");
-    return 0;
+    return 1;
   }
   
   if ( aliasNotFound ) 
@@ -165,8 +163,8 @@ AliMUONHVSubprocessor::Process(TMap* dcsAliasMap)
   
   Bool_t validToInfinity(kFALSE);
   
-  UInt_t result = Master()->Store("Calib","HV",&hv,&metaData,0,validToInfinity);
+  Bool_t result = Master()->Store("Calib","HV",&hv,&metaData,0,validToInfinity);
   
-  return result;
+  return ( result != kTRUE); // return 0 if everything is ok
 }
 
index c1a1433..b4b1845 100644 (file)
@@ -121,7 +121,7 @@ AliMUONPedestalSubprocessor::Process(TMap* /*dcsAliasMap*/)
   {
     // this is the only reason to fail for the moment : getting no pedestal
     // at all.
-    return 0;
+    return 1;
   }
     
   AliMUON2DStoreValidator validator;
@@ -156,9 +156,9 @@ AliMUONPedestalSubprocessor::Process(TMap* /*dcsAliasMap*/)
        metaData.SetComment("Computed by AliMUONPedestalSubprocessor $Id$");
   
   Bool_t validToInfinity = kTRUE;
-       UInt_t result = Master()->Store("Calib", "Pedestals", fPedestals, &metaData, 0, validToInfinity);
+       Bool_t result = Master()->Store("Calib", "Pedestals", fPedestals, &metaData, 0, validToInfinity);
   
-  return result;  
+  return ( result != kTRUE ); // return 0 if everything is ok.  
 }
 
 //_____________________________________________________________________________
index a1a8dbf..51b50d9 100644 (file)
@@ -42,7 +42,8 @@ ClassImp(AliMUONPreprocessor)
 //_____________________________________________________________________________
 AliMUONPreprocessor::AliMUONPreprocessor(const char* detName, AliShuttleInterface* shuttle)
 : AliPreprocessor(detName, shuttle),
-  fSubprocessors(new TObjArray())
+  fSubprocessors(new TObjArray()),
+  fProcessDCS(kFALSE)
 {
   /// ctor
 }
@@ -60,14 +61,16 @@ AliMUONPreprocessor::ClearSubprocessors()
 {
   /// Empty our subprocessor list
   fSubprocessors->Clear();
+  fProcessDCS = kFALSE;
 }
 
 //_____________________________________________________________________________
 void
-AliMUONPreprocessor::Add(AliMUONVSubprocessor* sub)
+AliMUONPreprocessor::Add(AliMUONVSubprocessor* sub, Bool_t processDCS)
 {
   /// Add a subprocessor to our list of workers
   fSubprocessors->Add(sub);
+  if ( processDCS == kTRUE ) fProcessDCS = processDCS;
 }
 
 //_____________________________________________________________________________
index 909d481..e7ea4ff 100644 (file)
@@ -26,6 +26,8 @@ public:
   virtual UInt_t Process(TMap* dcsAliasMap);
   virtual void Print(Option_t* opt="") const;
   
+  virtual Bool_t ProcessDCS() { return fProcessDCS; }
+
   /// Publish AliPreprocessor::Log function
   void Log(const char* message) { AliPreprocessor::Log(message); }
   
@@ -34,7 +36,7 @@ public:
   { return AliPreprocessor::GetFileSources(system,id); }
 
   /// Publish AliPreprocessor::Store function
-  UInt_t Store(const char* pathLevel2, const char* pathLevel3, TObject* object,
+  Bool_t Store(const char* pathLevel2, const char* pathLevel3, TObject* object,
                AliCDBMetaData* metaData, 
                Int_t validityStart = 0, Bool_t validityInfinite = kFALSE)
   {
@@ -52,7 +54,7 @@ protected:
   AliMUONPreprocessor(const char* detName, AliShuttleInterface* shuttle);
   virtual ~AliMUONPreprocessor();
   
-  void Add(AliMUONVSubprocessor* subProcessor); 
+  void Add(AliMUONVSubprocessor* subProcessor, Bool_t processDCS=kFALSE); 
   void ClearSubprocessors();
   
 private:
@@ -66,8 +68,9 @@ private:
 private:
 
   TObjArray* fSubprocessors; //!< sub processors to execute
+  Bool_t fProcessDCS; //!< whether the current subprocessor(s) needs DCS or not
   
-  ClassDef(AliMUONPreprocessor,1) // MUON Shuttle preprocessor
+  ClassDef(AliMUONPreprocessor,2) // MUON Shuttle preprocessor
 };
 
 #endif
index 637d66e..7da333d 100644 (file)
@@ -89,7 +89,8 @@ AliMUONTrackerPreprocessor::Initialize(Int_t run, UInt_t startTime, UInt_t endTi
   }
   else if ( runType == "PHYSICS" ) // FIXME : check the name
   {
-    Add(fHVSubprocessor); // to be called only for physics runs
+    Bool_t useDCS(kTRUE);
+    Add(fHVSubprocessor,useDCS); // to be called only for physics runs
     Log("INFO-Will run HV subprocessor");
   }
   else
index 3830a4a..c5cacf4 100644 (file)
@@ -105,9 +105,10 @@ void TestMUONPreprocessor(Int_t runNumber=80)
   // To test it, we must provide the run parameters manually. They will be retrieved in the preprocessor
   // using GetRunParameter function.
   // In real life the parameters will be retrieved automatically from the run logbook;
-//  shuttle->AddInputRunType("MCH", "PEDESTAL_RUN"); 
-  shuttle->AddInputRunType("MCH","ELECTRONICS_CALIBRATION_RUN");
-  // shuttle->AddInputRunType("MCH", "GMS"); 
+  shuttle->SetInputRunType("PEDESTAL_RUN"); 
+  //shuttle->SetInputRunType("ELECTRONICS_CALIBRATION_RUN");
+  //shuttle->SetInputRunType("GMS"); 
+  //shuttle->SetInputRunType("PHYSICS");
   // PEDESTAL_RUN -> pedestals
   // ELECTRONICS_CALIBRATION_RUN -> gains
   // PHYSICS ? -> HV
@@ -135,8 +136,6 @@ TMap* CreateDCSAliasMap()
   TMap* aliasMap = new TMap;
   aliasMap->SetOwner(kTRUE);
   
-  return aliasMap;
-  
   TRandom random(0);
   
   AliMUONHVNamer hvNamer;