Adding a data member fIsApplicable and its getter to handle the run types
authorivana <ivana@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 11 Dec 2007 14:20:12 +0000 (14:20 +0000)
committerivana <ivana@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 11 Dec 2007 14:20:12 +0000 (14:20 +0000)
which we have nothing to do with.
(Laurent)

MUON/AliMUONPreprocessor.cxx
MUON/AliMUONPreprocessor.h
MUON/AliMUONTrackerPreprocessor.cxx
MUON/AliMUONTriggerPreprocessor.cxx

index 3fe8401..6fc433f 100644 (file)
@@ -48,6 +48,7 @@ ClassImp(AliMUONPreprocessor)
 AliMUONPreprocessor::AliMUONPreprocessor(const char* detName, AliShuttleInterface* shuttle)
 : AliPreprocessor(detName, shuttle),
   fIsValid(kFALSE),
+  fIsApplicable(kTRUE),
   fSubprocessors(new TObjArray()),
   fProcessDCS(kFALSE)
 {
@@ -69,6 +70,7 @@ AliMUONPreprocessor::ClearSubprocessors()
   fSubprocessors->Clear();
   fProcessDCS = kFALSE;
   fIsValid = kFALSE;
+  fIsApplicable = kTRUE;
 }
 
 //_____________________________________________________________________________
@@ -115,6 +117,9 @@ AliMUONPreprocessor::Initialize(Int_t run, UInt_t startTime, UInt_t endTime)
     }
   }
 
+  if (! IsApplicable() ) 
+    Log(Form("WARNING-RunType=%s is not one I should handle.",GetRunType()));
+
   Log(Form("Initialize was %s",( IsValid() ? "fine" : "NOT OK")));
 }
 
@@ -130,6 +135,12 @@ AliMUONPreprocessor::Process(TMap* dcsAliasMap)
     return 99;
   }
   
+  if (!IsApplicable())
+  {
+    Log("Nothing to do for me");
+    return 0;
+  }
+  
   UInt_t rv(0);
   
   for ( Int_t i = 0; i <= fSubprocessors->GetLast(); ++i )
index dc51b1a..5cfae35 100644 (file)
@@ -57,6 +57,9 @@ public:
   /// Mark as invalid
   void Invalidate() { fIsValid = kFALSE; }
   
+  /// Whether we should do something or not
+  Bool_t IsApplicable() { return fIsApplicable; }
+  
 protected:
   AliMUONPreprocessor(const char* detName, AliShuttleInterface* shuttle);
   virtual ~AliMUONPreprocessor();
@@ -65,7 +68,8 @@ protected:
   void ClearSubprocessors();
   
   Bool_t fIsValid; //!< whether we were correctly initialized
-
+  Bool_t fIsApplicable; //!< whether we have something to do
+  
 private:
   /// Not implemented
   AliMUONPreprocessor(const AliMUONPreprocessor& rhs);
@@ -79,7 +83,7 @@ private:
   TObjArray* fSubprocessors; //!< sub processors to execute
   Bool_t fProcessDCS; //!< whether the current subprocessor(s) needs DCS or not
 
-  ClassDef(AliMUONPreprocessor,3) // MUON Shuttle preprocessor
+  ClassDef(AliMUONPreprocessor,4) // MUON Shuttle preprocessor
 };
 
 #endif
index 8d813ba..821399b 100644 (file)
@@ -75,6 +75,7 @@ AliMUONTrackerPreprocessor::Initialize(Int_t run, UInt_t startTime, UInt_t endTi
   TString runType = GetRunType();
   
   fIsValid = kTRUE;
+  fIsApplicable = kTRUE;
   
   if ( runType == "PEDESTAL_RUN" ) // FIXME : check the name
   {
@@ -99,7 +100,7 @@ AliMUONTrackerPreprocessor::Initialize(Int_t run, UInt_t startTime, UInt_t endTi
   }
   else
   {
-    Log(Form("WARNING-RunType=%s is not one I should handle.",runType.Data()));
+    fIsApplicable = kFALSE;
   }
   
   AliMUONPreprocessor::Initialize(run,startTime,endTime);
index 3c7b720..02ff14b 100644 (file)
@@ -59,6 +59,7 @@ AliMUONTriggerPreprocessor::Initialize(Int_t run, UInt_t startTime, UInt_t endTi
   ClearSubprocessors();
   
   fIsValid = kTRUE;
+  fIsApplicable = kTRUE;
   
   TString runType = GetRunType();
   
@@ -70,7 +71,7 @@ AliMUONTriggerPreprocessor::Initialize(Int_t run, UInt_t startTime, UInt_t endTi
   }
   else
   {
-    Log(Form("WARNING-RunType=%s is not one I should handle.",runType.Data()));
+    fIsApplicable = kFALSE;
   }
   
   AliMUONPreprocessor::Initialize(run,startTime,endTime);