if (!n)
{
Master()->Log("Failed to read any pedestals");
+
delete fPedestals;
fPedestals = 0;
delete fConfig;
fConfig = 0;
+
+ // OK, we did not get our pedestals. Check if the ped run itself
+ // was bad, i.e. too few events
+ TString nevents(Master()->GetRunParameter("totalEvents"));
+
+ if ( nevents.Atoi() < 50 )
+ {
+ Master()->Log(Form("The run had only %d events, so the failure to read pedestals is normal",nevents.Atoi()));
+ // too few events, failure is normal, returns OK.
+ return kTRUE;
+ }
+
+ // no ped, but run looks clean, that's an error
return kFALSE;
}
validityStart,validityInfinite);
}
+ /// Publish AliPreprocessor::GetRunParameter
+ const char* GetRunParameter(const char* param)
+ {
+ return AliPreprocessor::GetRunParameter(param);
+ }
+
/// Publish AliPreprocessor::GetFile function
const char* GetFile(Int_t system, const char* id, const char* source)
{
// In real life the parameters will be retrieved automatically from the run logbook;
shuttle->SetInputRunType(runType);
+ shuttle->AddInputRunParameter("totalEvents","20");
+
// Create the preprocessor that should be tested, it registers itself automatically to the shuttle
new AliMUONTrackerPreprocessor(shuttle);
new AliMUONTriggerPreprocessor(shuttle);