+ // wrap up and save QA in proper file
+ AliQA * qa = AliQA::Instance() ;
+ qa->Show() ;
+ AliQA::GetQAResultFile()->cd() ;
+ qa->Write(qa->GetName(), kWriteDelete) ;
+ AliQA::GetQAResultFile()->Close() ;
+}
+
+//____________________________________________________________________________
+void AliQACheckerBase::SetHiLo(Float_t * hiValue, Float_t * lowValue)
+{
+ AliInfo("Previous setting was:") ;
+ printf( " INFO -> %1.5f < value < %1.5f \n", fLowTestValue[AliQA::kINFO], fUpTestValue[AliQA::kINFO]) ;
+ printf( " WARNING -> %1.5f < value <= %1.5f \n", fLowTestValue[AliQA::kWARNING], fUpTestValue[AliQA::kWARNING]) ;
+ printf( " ERROR -> %1.5f < value <= %1.5f \n", fLowTestValue[AliQA::kERROR], fUpTestValue[AliQA::kERROR]) ;
+ printf( " FATAL -> %1.5f <= value < %1.5f \n", fLowTestValue[AliQA::kFATAL], fUpTestValue[AliQA::kFATAL]) ;
+
+ for (Int_t index = 0 ; index < AliQA::kNBIT ; index++) {
+ fLowTestValue[index] = lowValue[index] ;
+ fUpTestValue[index] = hiValue[index] ;
+ }
+ AliInfo("Current setting is:") ;
+ printf( " INFO -> %1.5f < value < %1.5f \n", fLowTestValue[AliQA::kINFO], fUpTestValue[AliQA::kINFO]) ;
+ printf( " WARNING -> %1.5f < value <= %1.5f \n", fLowTestValue[AliQA::kWARNING], fUpTestValue[AliQA::kWARNING]) ;
+ printf( " ERROR -> %1.5f < value <= %1.5f \n", fLowTestValue[AliQA::kERROR], fUpTestValue[AliQA::kERROR]) ;
+ printf( " FATAL -> %1.5f <= value < %1.5f \n", fLowTestValue[AliQA::kFATAL], fUpTestValue[AliQA::kFATAL]) ;
+}
+
+//____________________________________________________________________________
+void AliQACheckerBase::SetQA(AliQA::ALITASK_t index, Double_t * value) const
+{
+ // sets the QA according the return value of the Check
+
+ AliQA * qa = AliQA::Instance(index) ;
+ for (Int_t specie = 0 ; specie < AliRecoParam::kNSpecies ; specie++) {
+ if ( value == NULL ) { // No checker is implemented, set all QA to Fatal
+ qa->Set(AliQA::kFATAL, specie) ;
+ } else {
+ if ( value[specie] >= fLowTestValue[AliQA::kFATAL] && value[specie] < fUpTestValue[AliQA::kFATAL] )
+ qa->Set(AliQA::kFATAL, specie) ;
+ else if ( value[specie] > fLowTestValue[AliQA::kERROR] && value[specie] <= fUpTestValue[AliQA::kERROR] )
+ qa->Set(AliQA::kERROR, specie) ;
+ else if ( value[specie] > fLowTestValue[AliQA::kWARNING] && value[specie] <= fUpTestValue[AliQA::kWARNING] )
+ qa->Set(AliQA::kWARNING, specie) ;
+ else if ( value[specie] > fLowTestValue[AliQA::kINFO] && value[specie] <= fUpTestValue[AliQA::kINFO] )
+ qa->Set(AliQA::kINFO, specie) ;
+ }
+ }