#include <TClass.h>
#include <TH1F.h>
#include <TH1I.h>
#include <TH2.h>
#include <TF1.h>
#include <TIterator.h>
#include <TKey.h>
#include <TFile.h>
#include <TLine.h>
#include <TParameter.h>
#include <TPaveText.h>
#include "AliLog.h"
#include "AliQAv1.h"
#include "AliQAChecker.h"
#include "AliHMPIDQAChecker.h"
#include "AliCDBEntry.h"
#include "AliQAManager.h"
#include "AliQAThresholds.h"
ClassImp(AliHMPIDQAChecker)
AliHMPIDQAChecker::AliHMPIDQAChecker() :
AliQACheckerBase("HMPID","HMPID Quality Assurance Data Checker"),
fNoReference(kTRUE),
fQARefRec(NULL),
fHmpQaThr_NumberOfExcludedDDL(0),
fHmpQaThr_DataSizeLowerThreshold(900),
fHmpQaThr_DataSizeUpperThreshold(1500),
fHmpQaThr_PadOccupancyLowerThreshold(0.005),
fHmpQaThr_PadOccupancyUpperThreshold(0.8),
fHmpQaThr_SectorGainLossWarningThreshold(3),
fHmpQaThr_SectorGainLossErrorThreshold(6),
fHmpQaThr_MissingPadFractionWarningThreshold(0.3),
fHmpQaThr_MissingPadFractionErrorThreshold(0.5),
fIsOnlineThr(kFALSE)
{
char * detOCDBDir = Form("HMPID/%s/%s", AliQAv1::GetRefOCDBDirName(), AliQAv1::GetRefDataDirName()) ;
AliCDBEntry * QARefRec = AliQAManager::QAManager()->Get(detOCDBDir);
if(QARefRec) {
fQARefRec = dynamic_cast<TObjArray*> (QARefRec->GetObject()) ;
if (fQARefRec)
if (fQARefRec->GetEntries())
fNoReference = kFALSE ;
if (fNoReference)
AliInfo("QA reference data NOT retrieved for Reconstruction check. No HMPIDChecker!");
}
}
AliHMPIDQAChecker::~AliHMPIDQAChecker()
{
if(fQARefRec) { fQARefRec->Delete() ; delete fQARefRec ; }
}
void AliHMPIDQAChecker::Check(Double_t * check, AliQAv1::ALITASK_t index, TObjArray ** list, const AliDetectorRecoParam * )
{
InitOnlineThresholds();
if(fNoReference)
for (Int_t specie = 0 ; specie < AliRecoParam::kNSpecies ; specie++) {
check[specie] = 1.0;
if ( !AliQAv1::Instance()->IsEventSpecieSet(specie) ) continue ;
if(CheckEntries(list[specie]) == 0) {
AliWarning("histograms are empty");
check[specie] = 0.4;
}
check[specie] = AliQAv1::kINFO ;
if(index == AliQAv1::kSIM) check[specie] = CheckSim(list[specie], fQARefRec);
if(index == AliQAv1::kREC) check[specie] = CheckRec(list[specie], fQARefRec);
if(index == AliQAv1::kRAW) { check[specie] = CheckRaw(specie,list[specie]); }
}
}
Double_t AliHMPIDQAChecker::CheckEntries(TObjArray * list) const
{
Double_t test = 0.0 ;
Int_t count = 0 ;
if (list->GetEntries() == 0){
test = 1. ;
}
else {
TIter next(list) ;
TH1 * hdata ;
count = 0 ;
while ( (hdata = dynamic_cast<TH1 *>(next())) ) {
if (hdata) {
Double_t rv = 0.;
if(hdata->GetEntries()>0)rv=1;
count++ ;
test += rv ;
}
else{
AliError("Data type cannot be processed") ;
}
}
if (count != 0) {
if (test==0) {
AliWarning("Histograms are booked for THIS specific Task, but they are all empty: setting flag to kWARNING");
test = 0.;
}
else test = 1 ;
}
}
return test ;
}
Double_t AliHMPIDQAChecker::CheckSim(TObjArray *listsim, TObjArray *listref) const
{
Float_t checkresponse = 0;
Float_t counter = 0 ;
TIter next(listsim) ;
TH1* histo;
while ( (histo = dynamic_cast<TH1 *>(next())) ) {
Int_t nbinsabove = 0;
for (Int_t ibin=histo->FindBin(1); ibin<=histo->FindBin(50); ibin++) {
if (histo->GetBinContent(ibin)>5) nbinsabove++;
}
if( nbinsabove < 10 ) counter++;
else {
TString h = histo->GetTitle();
if(h.Contains("Zoom")){
histo->Fit("expo","LQ0","",5,50);
if(histo->GetFunction("expo")->GetParameter(1) !=0 ) if(TMath::Abs((-1./(histo->GetFunction("expo"))->GetParameter(1)) - 35 ) > 5) counter++;
}
if(h.Contains("size MIP")) if(TMath::Abs(histo->GetMean()-5) > 2) counter++;
if(h.Contains("size Phots")) if(TMath::Abs(histo->GetMean()-2) > 2) counter++;
if(h.Contains("distribution")) if(histo->KolmogorovTest((TH1F *)listref->At(0))<0.8) counter++;
AliDebug(AliQAv1::GetQADebugLevel(),Form(" Kolm. test : %f ",histo->KolmogorovTest((TH1F *)listref->At(0))));
}
}
Float_t response = counter/(7.+7.+42.+42.);
if(response < 0.1) checkresponse = 0.7;
else if(response < 0.5) checkresponse = 0.4;
else checkresponse = 0.001;
return checkresponse;
}
Double_t AliHMPIDQAChecker::CheckRec(TObjArray *listrec, TObjArray *listref) const
{
Float_t checkresponse = 0;
Float_t counter = 0 ;
TIter next(listrec) ;
TH1* histo;
while ( (histo = dynamic_cast<TH1 *>(next())) ) {
Int_t nbinsabove = 0;
for (Int_t ibin=histo->FindBin(1); ibin<=histo->FindBin(50); ibin++) {
if (histo->GetBinContent(ibin)>5) nbinsabove++;
}
if( nbinsabove < 10 ) counter++;
else {
TString h = histo->GetTitle();
if(h.Contains("Zoom")){
histo->Fit("expo","LQ0","",5,50);
if(histo->GetFunction("expo")->GetParameter(1) !=0 ) if(TMath::Abs((-1./(histo->GetFunction("expo"))->GetParameter(1)) - 35 ) > 5) counter++;
}
if(h.Contains("size MIP")) if(TMath::Abs(histo->GetMean()-5) > 2) counter++;
if(h.Contains("size Phots")) if(TMath::Abs(histo->GetMean()-2) > 2) counter++;
if(h.Contains("distribution")) if(histo->KolmogorovTest((TH1F *)listref->At(0))<0.8) counter++;
AliDebug(AliQAv1::GetQADebugLevel(),Form(" Kolm. test : %f ",histo->KolmogorovTest((TH1F *)listref->At(0))));
}
}
Float_t response = counter/(7.+7.+42.+42.);
if(response < 0.1) checkresponse = 0.7;
else if(response < 0.5) checkresponse = 0.4;
else checkresponse = 0.001;
return checkresponse;
}
Double_t AliHMPIDQAChecker::CheckRaw(Int_t specie, TObjArray* list)
{
Int_t hmpQaFlags[4]={-1};
TString histname ="null";
TPaveText text(0.65,0.8,0.9,0.99,"NDC");
TPaveText text1(0.65,0.8,0.9,0.99,"NDC");
Int_t entries = list->GetEntriesFast();
if ( entries == 0 ) {
AliWarning(Form("HMPID QA Checker RAWS: no object to analyse! Exiting..."));
return AliQAv1::kFATAL;
}
TLine* lineDdlDataSizeMin = new TLine(1536,fHmpQaThr_DataSizeUpperThreshold,1548,fHmpQaThr_DataSizeUpperThreshold);
TLine* lineDdlDataSizeMax = new TLine(1536,fHmpQaThr_DataSizeLowerThreshold,1548,fHmpQaThr_DataSizeLowerThreshold);
TLine* linePadOccupMin = new TLine(1536,fHmpQaThr_PadOccupancyUpperThreshold,1548,fHmpQaThr_PadOccupancyUpperThreshold);
TLine* linePadOccupMax = new TLine(1536,fHmpQaThr_PadOccupancyLowerThreshold,1548,fHmpQaThr_PadOccupancyLowerThreshold);
Int_t badDdlCnt = 0, badOccCnt = 0;
if( list->FindObject(Form("%s_hHmpDdlDataSize",AliRecoParam::GetEventSpecieName(specie)) ))
{
TH1* h1 = dynamic_cast<TH1*>( list->FindObject(Form("%s_hHmpDdlDataSize",AliRecoParam::GetEventSpecieName(specie))));
if(h1) {
if( h1->Integral() > 1 ) {
h1->SetStats(0);
if( h1->GetListOfFunctions() ) h1->GetListOfFunctions()->Clear();
for ( Int_t iddl = 1 ; iddl <= 14; iddl++)
{
if( h1->GetBinContent(iddl) < fHmpQaThr_DataSizeLowerThreshold || h1->GetBinContent(iddl) > fHmpQaThr_DataSizeUpperThreshold ) badDdlCnt++;
}
badDdlCnt -= fHmpQaThr_NumberOfExcludedDDL;
if ( badDdlCnt == 0 )
{
hmpQaFlags[0] = AliQAv1::kINFO;
text1.Clear();
text1.AddText(Form("OK (%d)",fIsOnlineThr));
text1.SetFillColor(kGreen);
h1->GetListOfFunctions()->Add((TPaveText*)text1.Clone());
lineDdlDataSizeMin->SetLineColor(kGreen);
lineDdlDataSizeMax->SetLineColor(kGreen);
h1->GetListOfFunctions()->Add((TLine*)lineDdlDataSizeMin->Clone());
h1->GetListOfFunctions()->Add((TLine*)lineDdlDataSizeMax->Clone());
}
else if ( badDdlCnt == 1 )
{
hmpQaFlags[0] = AliQAv1::kWARNING;
text1.Clear();
text1.AddText(Form("WARNING CHECK TWIKI (%d)",fIsOnlineThr));
text1.SetFillColor(kOrange);
h1->GetListOfFunctions()->Add((TPaveText*)text1.Clone());
lineDdlDataSizeMin->SetLineColor(kOrange);
lineDdlDataSizeMax->SetLineColor(kOrange);
h1->GetListOfFunctions()->Add((TLine*)lineDdlDataSizeMin->Clone());
h1->GetListOfFunctions()->Add((TLine*)lineDdlDataSizeMax->Clone());
}
else if ( badDdlCnt >= 2 )
{
hmpQaFlags[0] = AliQAv1::kERROR;
text1.Clear();
text1.AddText(Form("ERROR CALL ONCALL (%d)",fIsOnlineThr));
text1.SetFillColor(kRed);
h1->GetListOfFunctions()->Add((TPaveText*)text1.Clone());
lineDdlDataSizeMin->SetLineColor(kRed);
lineDdlDataSizeMax->SetLineColor(kRed);
h1->GetListOfFunctions()->Add((TLine*)lineDdlDataSizeMin->Clone());
h1->GetListOfFunctions()->Add((TLine*)lineDdlDataSizeMax->Clone());
}
else
{
hmpQaFlags[0] = AliQAv1::kFATAL;
text1.Clear();
text1.AddText(Form("FATAL CALL ONCALL (%d)",fIsOnlineThr));
text1.SetFillColor(kRed);
h1->GetListOfFunctions()->Add((TPaveText*)text1.Clone());
lineDdlDataSizeMin->SetLineColor(kRed);
lineDdlDataSizeMax->SetLineColor(kRed);
h1->GetListOfFunctions()->Add((TLine*)lineDdlDataSizeMin->Clone());
h1->GetListOfFunctions()->Add((TLine*)lineDdlDataSizeMax->Clone());
}
}
}
}
if( list->FindObject(Form("%s_fHmpPadOcc",AliRecoParam::GetEventSpecieName(specie)) ))
{
TH1* h1 = dynamic_cast<TH1*>( list->FindObject(Form("%s_fHmpPadOcc",AliRecoParam::GetEventSpecieName(specie))));
if(h1) {
if( h1->Integral() > 1 ) {
h1->SetStats(0);
if( h1->GetListOfFunctions() ) h1->GetListOfFunctions()->Clear();
for ( Int_t iddl = 1 ; iddl <= 14; iddl++)
{
if( h1->GetBinContent(iddl) < fHmpQaThr_PadOccupancyLowerThreshold || h1->GetBinContent(iddl) > fHmpQaThr_PadOccupancyUpperThreshold ) badOccCnt++;
}
badOccCnt -= fHmpQaThr_NumberOfExcludedDDL;
if ( badOccCnt == 0 )
{
hmpQaFlags[1] = AliQAv1::kINFO;
text.Clear();
text.AddText(Form("OK (%d)",fIsOnlineThr));
text.SetFillColor(kGreen);
h1->GetListOfFunctions()->Add((TPaveText*)text.Clone());
linePadOccupMin->SetLineColor(kGreen);
linePadOccupMax->SetLineColor(kGreen);
h1->GetListOfFunctions()->Add((TLine*)linePadOccupMin->Clone());
h1->GetListOfFunctions()->Add((TLine*)linePadOccupMax->Clone());
}
else if ( badOccCnt == 1 )
{
hmpQaFlags[1] = AliQAv1::kWARNING;
text.Clear();
text.AddText(Form("WARNING CHECK TWIKI (%d)",fIsOnlineThr));
text.SetFillColor(kOrange);
h1->GetListOfFunctions()->Add((TPaveText*)text.Clone());
linePadOccupMin->SetLineColor(kGreen);
linePadOccupMax->SetLineColor(kGreen);
h1->GetListOfFunctions()->Add((TLine*)linePadOccupMin->Clone());
h1->GetListOfFunctions()->Add((TLine*)linePadOccupMax->Clone());
}
else if ( badOccCnt == 2 )
{
hmpQaFlags[1] = AliQAv1::kERROR;
text.Clear();
text.AddText(Form("ERROR CALL ONCALL (%d)",fIsOnlineThr));
text.SetFillColor(kRed);
h1->GetListOfFunctions()->Add((TPaveText*)text.Clone());
linePadOccupMin->SetLineColor(kGreen);
linePadOccupMax->SetLineColor(kGreen);
h1->GetListOfFunctions()->Add((TLine*)linePadOccupMin->Clone());
h1->GetListOfFunctions()->Add((TLine*)linePadOccupMax->Clone());
}
else
{
hmpQaFlags[1] = AliQAv1::kFATAL;
text.Clear();
text.AddText(Form("FATAL CALL ONCALL (%d)",fIsOnlineThr));
text.SetFillColor(kRed);
h1->GetListOfFunctions()->Add((TPaveText*)text.Clone());
linePadOccupMin->SetLineColor(kGreen);
linePadOccupMax->SetLineColor(kGreen);
h1->GetListOfFunctions()->Add((TLine*)linePadOccupMin->Clone());
h1->GetListOfFunctions()->Add((TLine*)linePadOccupMax->Clone());
}
}
}
}
Int_t sumPadMapChROR[7]={0};
Int_t sumPadMapChROL[7]={0};
Int_t bigMapFlag = AliQAv1::kINFO;
Int_t errCntBigMap = 0;
if( list->FindObject(Form("%s_hHmpBigMap",AliRecoParam::GetEventSpecieName(specie)) ))
{
TH2* h2 = dynamic_cast<TH2*>( list->FindObject(Form("%s_hHmpBigMap",AliRecoParam::GetEventSpecieName(specie))));
if(h2) {
if( h2->Integral() > 1 ) {
h2->SetStats(0);
if( h2->GetListOfFunctions() ) h2->GetListOfFunctions()->Clear();
for(Int_t ich = 0; ich < 7; ich++)
{
for(Int_t iy=1+ich*144;iy<=144+ich*144;iy++) {
for(Int_t ix=1;ix<=80;ix++) if(h2->GetBinContent(ix,iy) > 0) sumPadMapChROL[ich]++;
for(Int_t ix=81;ix<=160;ix++) if(h2->GetBinContent(ix,iy) > 0) sumPadMapChROR[ich]++;
}
}
for(Int_t ich = 0; ich < 7; ich++)
{
bigMapFlag = AliQAv1::kINFO;
if( (1-sumPadMapChROL[ich]/1.0/11520) > fHmpQaThr_MissingPadFractionWarningThreshold ||
(1-sumPadMapChROR[ich]/1.0/11520) > fHmpQaThr_MissingPadFractionWarningThreshold )
{
bigMapFlag = AliQAv1::kWARNING;
}
if( (1-sumPadMapChROL[ich]/1.0/11520) > fHmpQaThr_MissingPadFractionErrorThreshold ||
(1-sumPadMapChROR[ich]/1.0/11520) > fHmpQaThr_MissingPadFractionErrorThreshold ) {
bigMapFlag = AliQAv1::kERROR;
errCntBigMap++;
}
}
if( errCntBigMap > 0 ) bigMapFlag = AliQAv1::kERROR;
if ( bigMapFlag == AliQAv1::kINFO )
{
hmpQaFlags[2] = AliQAv1::kINFO;
text.Clear();
text.AddText(Form("OK (%d)",fIsOnlineThr));
text.SetFillColor(kGreen);
h2->GetListOfFunctions()->Add((TPaveText*)text.Clone());
}
else if ( bigMapFlag == AliQAv1::kWARNING )
{
hmpQaFlags[2] = AliQAv1::kWARNING;
text.Clear();
text.AddText(Form("WARNING CHECK TWIKI (%d)",fIsOnlineThr));
text.SetFillColor(kOrange);
h2->GetListOfFunctions()->Add((TPaveText*)text.Clone());
}
else if ( bigMapFlag == AliQAv1::kERROR )
{
hmpQaFlags[2] = AliQAv1::kERROR;
text.Clear();
text.AddText(Form("ERROR CALL ONCALL (%d)",fIsOnlineThr));
text.SetFillColor(kRed);
h2->GetListOfFunctions()->Add((TPaveText*)text.Clone());
}
else
{
hmpQaFlags[2] = AliQAv1::kFATAL;
text.Clear();
text.AddText(Form("FATAL CALL ONCALL (%d)",fIsOnlineThr));
text.SetFillColor(kRed);
h2->GetListOfFunctions()->Add((TPaveText*)text.Clone());
}
}
}
}
Int_t numSectorsMissing = 0, numSectorsGainLoss = 0;
Double_t hSumQPerSector[42]={0};
if( list->FindObject(Form("%s_fHmpHvSectorQ",AliRecoParam::GetEventSpecieName(specie))))
{
TH2* h2 = dynamic_cast<TH2*>( list->FindObject(Form("%s_fHmpHvSectorQ",AliRecoParam::GetEventSpecieName(specie))));
if(h2) {
if(h2->Integral() > 0 ) {
h2->SetStats(0);
if( h2->GetListOfFunctions() ) h2->GetListOfFunctions()->Clear();
for(Int_t isec = 1 ; isec <= 42; isec++)
{
for(Int_t ibiny=100;ibiny<410;ibiny++) {hSumQPerSector[isec-1] += h2->GetBinContent(ibiny,isec); }
if(hSumQPerSector[isec-1] < 0.001) {numSectorsGainLoss++;}
if(h2->GetBinContent(1,isec) < 0.01 ) {numSectorsMissing++; }
}
Int_t sectorErrors = numSectorsGainLoss+numSectorsMissing;
if ( sectorErrors <= 3)
{
hmpQaFlags[3] = AliQAv1::kINFO;
text.Clear();
text.AddText(Form("OK (%d)",fIsOnlineThr));
text.SetFillColor(kGreen);
h2->GetListOfFunctions()->Add((TPaveText*)text.Clone());
}
else if ( sectorErrors > fHmpQaThr_SectorGainLossWarningThreshold)
{
hmpQaFlags[3] = AliQAv1::kWARNING;
text.Clear();
text.AddText(Form("WARNING CHECK TWIKI (%d)",fIsOnlineThr));
if(numSectorsMissing > 0 ) text.AddText(Form("MISSING SECTOR?"));
text.SetFillColor(kOrange);
h2->GetListOfFunctions()->Add((TPaveText*)text.Clone());
}
else if ( sectorErrors > fHmpQaThr_SectorGainLossErrorThreshold)
{
hmpQaFlags[3] = AliQAv1::kERROR;
text.Clear();
text.AddText(Form("ERROR CALL ONCALL (%d)",fIsOnlineThr));
if(numSectorsMissing > 0 ) text.AddText(Form("MISSING SECTOR?"));
text.SetFillColor(kRed);
h2->GetListOfFunctions()->Add((TPaveText*)text.Clone());
}
else
{
hmpQaFlags[3] = AliQAv1::kFATAL;
text.Clear();
text.AddText(Form("FATAL CALL ONCALL (%d)",fIsOnlineThr));
text.SetFillColor(kRed);
h2->GetListOfFunctions()->Add((TPaveText*)text.Clone());
}
}
}
}
lineDdlDataSizeMin->Delete();
lineDdlDataSizeMax->Delete();
linePadOccupMin->Delete();
linePadOccupMax->Delete();
Double_t dflag = -1;
switch ( TMath::MaxElement(4,hmpQaFlags))
{
case AliQAv1::kINFO:
dflag = 1.0;
break;
case AliQAv1::kWARNING:
dflag = 0.75;
break;
case AliQAv1::kERROR:
dflag = 0.25;
break;
case AliQAv1::kFATAL:
dflag = -1.0;
break;
default:
dflag = AliQAv1::kNULLBit;
break;
}
return dflag;
}
void AliHMPIDQAChecker::InitOnlineThresholds()
{
AliCDBManager* man = AliCDBManager::Instance();
if(!man) { fIsOnlineThr = kFALSE; return; }
if(!man->Get("GRP/Calib/QAThresholds")) { fIsOnlineThr = kFALSE; return; }
AliCDBEntry* entry = man->Get("GRP/Calib/QAThresholds");
if(!entry) { fIsOnlineThr = kFALSE; return; }
TObjArray* branch = (TObjArray*) entry->GetObject();
if(!branch ) { fIsOnlineThr = kFALSE; return; }
AliQAThresholds* thresholds = (AliQAThresholds*) branch->FindObject("HMP");
if(!thresholds) { fIsOnlineThr = kFALSE; return; }
else
fIsOnlineThr = kTRUE;
Int_t teCnt = 0;
TString parName = "zero";
while ( thresholds->GetThreshold(teCnt))
{
if(!((thresholds->GetThreshold(teCnt))->GetName())) return;
parName = (thresholds->GetThreshold(teCnt))->GetName();
if( parName.Contains("HmpNumberOfExcludedDDLthreshold") )
{
TParameter<int>* myParam = (TParameter<int>*) thresholds->GetThreshold(teCnt);
fHmpQaThr_NumberOfExcludedDDL = myParam->GetVal();
}
if( parName.Contains("HmpDataSizeLowerThreshold") )
{
TParameter<int>* myParam = (TParameter<int>*) thresholds->GetThreshold(teCnt);
fHmpQaThr_DataSizeLowerThreshold = myParam->GetVal();
}
if( parName.Contains("HmpDataSizeUpperThreshold") )
{
TParameter<int>* myParam = (TParameter<int>*) thresholds->GetThreshold(teCnt);
fHmpQaThr_DataSizeUpperThreshold = myParam->GetVal();
}
if( parName.Contains("HmpPadOccupancyLowerThreshold") )
{
TParameter<float>* myParam = (TParameter<float>*) thresholds->GetThreshold(teCnt);
fHmpQaThr_PadOccupancyLowerThreshold = myParam->GetVal();
}
if( parName.Contains("HmpPadOccupancyUpperThreshold") )
{
TParameter<float>* myParam = (TParameter<float>*) thresholds->GetThreshold(teCnt);
fHmpQaThr_PadOccupancyUpperThreshold = myParam->GetVal();
}
if( parName.Contains("HmpSectorGainLossWarningThreshold") )
{
TParameter<int>* myParam = (TParameter<int>*) thresholds->GetThreshold(teCnt);
fHmpQaThr_SectorGainLossWarningThreshold = myParam->GetVal();
}
if( parName.Contains("HmpSectorGainLossErrorThreshold") )
{
TParameter<int>* myParam = (TParameter<int>*) thresholds->GetThreshold(teCnt);
fHmpQaThr_SectorGainLossErrorThreshold = myParam->GetVal();
}
if( parName.Contains("HmpMissingPadFractionWarningThreshold") )
{
TParameter<float>* myParam = (TParameter<float>*) thresholds->GetThreshold(teCnt);
fHmpQaThr_MissingPadFractionWarningThreshold = myParam->GetVal();
}
if( parName.Contains("HmpMissingPadFractionErrorThreshold") )
{
TParameter<float>* myParam = (TParameter<float>*) thresholds->GetThreshold(teCnt);
fHmpQaThr_MissingPadFractionErrorThreshold = myParam->GetVal();
}
teCnt++;
}
}
void AliHMPIDQAChecker::PrintThresholds()
{
Printf("--- Printing thresholds ---");
Printf("--- Default or online: %i ---",fIsOnlineThr);
Printf("--- fHmpQaThr_NumberOfExcludedDDL: %i ---",fHmpQaThr_NumberOfExcludedDDL);
Printf("--- fHmpQaThr_DataSizeLowerThreshold: %i ---",fHmpQaThr_DataSizeLowerThreshold);
Printf("--- fHmpQaThr_DataSizeUpperThreshold: %i ---",fHmpQaThr_DataSizeUpperThreshold);
Printf("--- fHmpQaThr_PadOccupancyLowerThreshold: %f ---",fHmpQaThr_PadOccupancyLowerThreshold);
Printf("--- fHmpQaThr_PadOccupancyUpperThreshold: %f ---",fHmpQaThr_PadOccupancyUpperThreshold);
Printf("--- fHmpQaThr_SectorGainLossWarningThreshold: %i ---",fHmpQaThr_SectorGainLossWarningThreshold);
Printf("--- fHmpQaThr_SectorGainLossErrorThreshold: %i ---",fHmpQaThr_SectorGainLossErrorThreshold);
Printf("--- fHmpQaThr_MissingPadFractionWarningThreshold: %f ---",fHmpQaThr_MissingPadFractionWarningThreshold);
Printf("--- fHmpQaThr_MissingPadFractionErrorThreshold: %f ---",fHmpQaThr_MissingPadFractionErrorThreshold);
Printf("--- Printing thresholds done ---");
}
AliHMPIDQAChecker.cxx:100 AliHMPIDQAChecker.cxx:101 AliHMPIDQAChecker.cxx:102 AliHMPIDQAChecker.cxx:103 AliHMPIDQAChecker.cxx:104 AliHMPIDQAChecker.cxx:105 AliHMPIDQAChecker.cxx:106 AliHMPIDQAChecker.cxx:107 AliHMPIDQAChecker.cxx:108 AliHMPIDQAChecker.cxx:109 AliHMPIDQAChecker.cxx:110 AliHMPIDQAChecker.cxx:111 AliHMPIDQAChecker.cxx:112 AliHMPIDQAChecker.cxx:113 AliHMPIDQAChecker.cxx:114 AliHMPIDQAChecker.cxx:115 AliHMPIDQAChecker.cxx:116 AliHMPIDQAChecker.cxx:117 AliHMPIDQAChecker.cxx:118 AliHMPIDQAChecker.cxx:119 AliHMPIDQAChecker.cxx:120 AliHMPIDQAChecker.cxx:121 AliHMPIDQAChecker.cxx:122 AliHMPIDQAChecker.cxx:123 AliHMPIDQAChecker.cxx:124 AliHMPIDQAChecker.cxx:125 AliHMPIDQAChecker.cxx:126 AliHMPIDQAChecker.cxx:127 AliHMPIDQAChecker.cxx:128 AliHMPIDQAChecker.cxx:129 AliHMPIDQAChecker.cxx:130 AliHMPIDQAChecker.cxx:131 AliHMPIDQAChecker.cxx:132 AliHMPIDQAChecker.cxx:133 AliHMPIDQAChecker.cxx:134 AliHMPIDQAChecker.cxx:135 AliHMPIDQAChecker.cxx:136 AliHMPIDQAChecker.cxx:137 AliHMPIDQAChecker.cxx:138 AliHMPIDQAChecker.cxx:139 AliHMPIDQAChecker.cxx:140 AliHMPIDQAChecker.cxx:141 AliHMPIDQAChecker.cxx:142 AliHMPIDQAChecker.cxx:143 AliHMPIDQAChecker.cxx:144 AliHMPIDQAChecker.cxx:145 AliHMPIDQAChecker.cxx:146 AliHMPIDQAChecker.cxx:147 AliHMPIDQAChecker.cxx:148 AliHMPIDQAChecker.cxx:149 AliHMPIDQAChecker.cxx:150 AliHMPIDQAChecker.cxx:151 AliHMPIDQAChecker.cxx:152 AliHMPIDQAChecker.cxx:153 AliHMPIDQAChecker.cxx:154 AliHMPIDQAChecker.cxx:155 AliHMPIDQAChecker.cxx:156 AliHMPIDQAChecker.cxx:157 AliHMPIDQAChecker.cxx:158 AliHMPIDQAChecker.cxx:159 AliHMPIDQAChecker.cxx:160 AliHMPIDQAChecker.cxx:161 AliHMPIDQAChecker.cxx:162 AliHMPIDQAChecker.cxx:163 AliHMPIDQAChecker.cxx:164 AliHMPIDQAChecker.cxx:165 AliHMPIDQAChecker.cxx:166 AliHMPIDQAChecker.cxx:167 AliHMPIDQAChecker.cxx:168 AliHMPIDQAChecker.cxx:169 AliHMPIDQAChecker.cxx:170 AliHMPIDQAChecker.cxx:171 AliHMPIDQAChecker.cxx:172 AliHMPIDQAChecker.cxx:173 AliHMPIDQAChecker.cxx:174 AliHMPIDQAChecker.cxx:175 AliHMPIDQAChecker.cxx:176 AliHMPIDQAChecker.cxx:177 AliHMPIDQAChecker.cxx:178 AliHMPIDQAChecker.cxx:179 AliHMPIDQAChecker.cxx:180 AliHMPIDQAChecker.cxx:181 AliHMPIDQAChecker.cxx:182 AliHMPIDQAChecker.cxx:183 AliHMPIDQAChecker.cxx:184 AliHMPIDQAChecker.cxx:185 AliHMPIDQAChecker.cxx:186 AliHMPIDQAChecker.cxx:187 AliHMPIDQAChecker.cxx:188 AliHMPIDQAChecker.cxx:189 AliHMPIDQAChecker.cxx:190 AliHMPIDQAChecker.cxx:191 AliHMPIDQAChecker.cxx:192 AliHMPIDQAChecker.cxx:193 AliHMPIDQAChecker.cxx:194 AliHMPIDQAChecker.cxx:195 AliHMPIDQAChecker.cxx:196 AliHMPIDQAChecker.cxx:197 AliHMPIDQAChecker.cxx:198 AliHMPIDQAChecker.cxx:199 AliHMPIDQAChecker.cxx:200 AliHMPIDQAChecker.cxx:201 AliHMPIDQAChecker.cxx:202 AliHMPIDQAChecker.cxx:203 AliHMPIDQAChecker.cxx:204 AliHMPIDQAChecker.cxx:205 AliHMPIDQAChecker.cxx:206 AliHMPIDQAChecker.cxx:207 AliHMPIDQAChecker.cxx:208 AliHMPIDQAChecker.cxx:209 AliHMPIDQAChecker.cxx:210 AliHMPIDQAChecker.cxx:211 AliHMPIDQAChecker.cxx:212 AliHMPIDQAChecker.cxx:213 AliHMPIDQAChecker.cxx:214 AliHMPIDQAChecker.cxx:215 AliHMPIDQAChecker.cxx:216 AliHMPIDQAChecker.cxx:217 AliHMPIDQAChecker.cxx:218 AliHMPIDQAChecker.cxx:219 AliHMPIDQAChecker.cxx:220 AliHMPIDQAChecker.cxx:221 AliHMPIDQAChecker.cxx:222 AliHMPIDQAChecker.cxx:223 AliHMPIDQAChecker.cxx:224 AliHMPIDQAChecker.cxx:225 AliHMPIDQAChecker.cxx:226 AliHMPIDQAChecker.cxx:227 AliHMPIDQAChecker.cxx:228 AliHMPIDQAChecker.cxx:229 AliHMPIDQAChecker.cxx:230 AliHMPIDQAChecker.cxx:231 AliHMPIDQAChecker.cxx:232 AliHMPIDQAChecker.cxx:233 AliHMPIDQAChecker.cxx:234 AliHMPIDQAChecker.cxx:235 AliHMPIDQAChecker.cxx:236 AliHMPIDQAChecker.cxx:237 AliHMPIDQAChecker.cxx:238 AliHMPIDQAChecker.cxx:239 AliHMPIDQAChecker.cxx:240 AliHMPIDQAChecker.cxx:241 AliHMPIDQAChecker.cxx:242 AliHMPIDQAChecker.cxx:243 AliHMPIDQAChecker.cxx:244 AliHMPIDQAChecker.cxx:245 AliHMPIDQAChecker.cxx:246 AliHMPIDQAChecker.cxx:247 AliHMPIDQAChecker.cxx:248 AliHMPIDQAChecker.cxx:249 AliHMPIDQAChecker.cxx:250 AliHMPIDQAChecker.cxx:251 AliHMPIDQAChecker.cxx:252 AliHMPIDQAChecker.cxx:253 AliHMPIDQAChecker.cxx:254 AliHMPIDQAChecker.cxx:255 AliHMPIDQAChecker.cxx:256 AliHMPIDQAChecker.cxx:257 AliHMPIDQAChecker.cxx:258 AliHMPIDQAChecker.cxx:259 AliHMPIDQAChecker.cxx:260 AliHMPIDQAChecker.cxx:261 AliHMPIDQAChecker.cxx:262 AliHMPIDQAChecker.cxx:263 AliHMPIDQAChecker.cxx:264 AliHMPIDQAChecker.cxx:265 AliHMPIDQAChecker.cxx:266 AliHMPIDQAChecker.cxx:267 AliHMPIDQAChecker.cxx:268 AliHMPIDQAChecker.cxx:269 AliHMPIDQAChecker.cxx:270 AliHMPIDQAChecker.cxx:271 AliHMPIDQAChecker.cxx:272 AliHMPIDQAChecker.cxx:273 AliHMPIDQAChecker.cxx:274 AliHMPIDQAChecker.cxx:275 AliHMPIDQAChecker.cxx:276 AliHMPIDQAChecker.cxx:277 AliHMPIDQAChecker.cxx:278 AliHMPIDQAChecker.cxx:279 AliHMPIDQAChecker.cxx:280 AliHMPIDQAChecker.cxx:281 AliHMPIDQAChecker.cxx:282 AliHMPIDQAChecker.cxx:283 AliHMPIDQAChecker.cxx:284 AliHMPIDQAChecker.cxx:285 AliHMPIDQAChecker.cxx:286 AliHMPIDQAChecker.cxx:287 AliHMPIDQAChecker.cxx:288 AliHMPIDQAChecker.cxx:289 AliHMPIDQAChecker.cxx:290 AliHMPIDQAChecker.cxx:291 AliHMPIDQAChecker.cxx:292 AliHMPIDQAChecker.cxx:293 AliHMPIDQAChecker.cxx:294 AliHMPIDQAChecker.cxx:295 AliHMPIDQAChecker.cxx:296 AliHMPIDQAChecker.cxx:297 AliHMPIDQAChecker.cxx:298 AliHMPIDQAChecker.cxx:299 AliHMPIDQAChecker.cxx:300 AliHMPIDQAChecker.cxx:301 AliHMPIDQAChecker.cxx:302 AliHMPIDQAChecker.cxx:303 AliHMPIDQAChecker.cxx:304 AliHMPIDQAChecker.cxx:305 AliHMPIDQAChecker.cxx:306 AliHMPIDQAChecker.cxx:307 AliHMPIDQAChecker.cxx:308 AliHMPIDQAChecker.cxx:309 AliHMPIDQAChecker.cxx:310 AliHMPIDQAChecker.cxx:311 AliHMPIDQAChecker.cxx:312 AliHMPIDQAChecker.cxx:313 AliHMPIDQAChecker.cxx:314 AliHMPIDQAChecker.cxx:315 AliHMPIDQAChecker.cxx:316 AliHMPIDQAChecker.cxx:317 AliHMPIDQAChecker.cxx:318 AliHMPIDQAChecker.cxx:319 AliHMPIDQAChecker.cxx:320 AliHMPIDQAChecker.cxx:321 AliHMPIDQAChecker.cxx:322 AliHMPIDQAChecker.cxx:323 AliHMPIDQAChecker.cxx:324 AliHMPIDQAChecker.cxx:325 AliHMPIDQAChecker.cxx:326 AliHMPIDQAChecker.cxx:327 AliHMPIDQAChecker.cxx:328 AliHMPIDQAChecker.cxx:329 AliHMPIDQAChecker.cxx:330 AliHMPIDQAChecker.cxx:331 AliHMPIDQAChecker.cxx:332 AliHMPIDQAChecker.cxx:333 AliHMPIDQAChecker.cxx:334 AliHMPIDQAChecker.cxx:335 AliHMPIDQAChecker.cxx:336 AliHMPIDQAChecker.cxx:337 AliHMPIDQAChecker.cxx:338 AliHMPIDQAChecker.cxx:339 AliHMPIDQAChecker.cxx:340 AliHMPIDQAChecker.cxx:341 AliHMPIDQAChecker.cxx:342 AliHMPIDQAChecker.cxx:343 AliHMPIDQAChecker.cxx:344 AliHMPIDQAChecker.cxx:345 AliHMPIDQAChecker.cxx:346 AliHMPIDQAChecker.cxx:347 AliHMPIDQAChecker.cxx:348 AliHMPIDQAChecker.cxx:349 AliHMPIDQAChecker.cxx:350 AliHMPIDQAChecker.cxx:351 AliHMPIDQAChecker.cxx:352 AliHMPIDQAChecker.cxx:353 AliHMPIDQAChecker.cxx:354 AliHMPIDQAChecker.cxx:355 AliHMPIDQAChecker.cxx:356 AliHMPIDQAChecker.cxx:357 AliHMPIDQAChecker.cxx:358 AliHMPIDQAChecker.cxx:359 AliHMPIDQAChecker.cxx:360 AliHMPIDQAChecker.cxx:361 AliHMPIDQAChecker.cxx:362 AliHMPIDQAChecker.cxx:363 AliHMPIDQAChecker.cxx:364 AliHMPIDQAChecker.cxx:365 AliHMPIDQAChecker.cxx:366 AliHMPIDQAChecker.cxx:367 AliHMPIDQAChecker.cxx:368 AliHMPIDQAChecker.cxx:369 AliHMPIDQAChecker.cxx:370 AliHMPIDQAChecker.cxx:371 AliHMPIDQAChecker.cxx:372 AliHMPIDQAChecker.cxx:373 AliHMPIDQAChecker.cxx:374 AliHMPIDQAChecker.cxx:375 AliHMPIDQAChecker.cxx:376 AliHMPIDQAChecker.cxx:377 AliHMPIDQAChecker.cxx:378 AliHMPIDQAChecker.cxx:379 AliHMPIDQAChecker.cxx:380 AliHMPIDQAChecker.cxx:381 AliHMPIDQAChecker.cxx:382 AliHMPIDQAChecker.cxx:383 AliHMPIDQAChecker.cxx:384 AliHMPIDQAChecker.cxx:385 AliHMPIDQAChecker.cxx:386 AliHMPIDQAChecker.cxx:387 AliHMPIDQAChecker.cxx:388 AliHMPIDQAChecker.cxx:389 AliHMPIDQAChecker.cxx:390 AliHMPIDQAChecker.cxx:391 AliHMPIDQAChecker.cxx:392 AliHMPIDQAChecker.cxx:393 AliHMPIDQAChecker.cxx:394 AliHMPIDQAChecker.cxx:395 AliHMPIDQAChecker.cxx:396 AliHMPIDQAChecker.cxx:397 AliHMPIDQAChecker.cxx:398 AliHMPIDQAChecker.cxx:399 AliHMPIDQAChecker.cxx:400 AliHMPIDQAChecker.cxx:401 AliHMPIDQAChecker.cxx:402 AliHMPIDQAChecker.cxx:403 AliHMPIDQAChecker.cxx:404 AliHMPIDQAChecker.cxx:405 AliHMPIDQAChecker.cxx:406 AliHMPIDQAChecker.cxx:407 AliHMPIDQAChecker.cxx:408 AliHMPIDQAChecker.cxx:409 AliHMPIDQAChecker.cxx:410 AliHMPIDQAChecker.cxx:411 AliHMPIDQAChecker.cxx:412 AliHMPIDQAChecker.cxx:413 AliHMPIDQAChecker.cxx:414 AliHMPIDQAChecker.cxx:415 AliHMPIDQAChecker.cxx:416 AliHMPIDQAChecker.cxx:417 AliHMPIDQAChecker.cxx:418 AliHMPIDQAChecker.cxx:419 AliHMPIDQAChecker.cxx:420 AliHMPIDQAChecker.cxx:421 AliHMPIDQAChecker.cxx:422 AliHMPIDQAChecker.cxx:423 AliHMPIDQAChecker.cxx:424 AliHMPIDQAChecker.cxx:425 AliHMPIDQAChecker.cxx:426 AliHMPIDQAChecker.cxx:427 AliHMPIDQAChecker.cxx:428 AliHMPIDQAChecker.cxx:429 AliHMPIDQAChecker.cxx:430 AliHMPIDQAChecker.cxx:431 AliHMPIDQAChecker.cxx:432 AliHMPIDQAChecker.cxx:433 AliHMPIDQAChecker.cxx:434 AliHMPIDQAChecker.cxx:435 AliHMPIDQAChecker.cxx:436 AliHMPIDQAChecker.cxx:437 AliHMPIDQAChecker.cxx:438 AliHMPIDQAChecker.cxx:439 AliHMPIDQAChecker.cxx:440 AliHMPIDQAChecker.cxx:441 AliHMPIDQAChecker.cxx:442 AliHMPIDQAChecker.cxx:443 AliHMPIDQAChecker.cxx:444 AliHMPIDQAChecker.cxx:445 AliHMPIDQAChecker.cxx:446 AliHMPIDQAChecker.cxx:447 AliHMPIDQAChecker.cxx:448 AliHMPIDQAChecker.cxx:449 AliHMPIDQAChecker.cxx:450 AliHMPIDQAChecker.cxx:451 AliHMPIDQAChecker.cxx:452 AliHMPIDQAChecker.cxx:453 AliHMPIDQAChecker.cxx:454 AliHMPIDQAChecker.cxx:455 AliHMPIDQAChecker.cxx:456 AliHMPIDQAChecker.cxx:457 AliHMPIDQAChecker.cxx:458 AliHMPIDQAChecker.cxx:459 AliHMPIDQAChecker.cxx:460 AliHMPIDQAChecker.cxx:461 AliHMPIDQAChecker.cxx:462 AliHMPIDQAChecker.cxx:463 AliHMPIDQAChecker.cxx:464 AliHMPIDQAChecker.cxx:465 AliHMPIDQAChecker.cxx:466 AliHMPIDQAChecker.cxx:467 AliHMPIDQAChecker.cxx:468 AliHMPIDQAChecker.cxx:469 AliHMPIDQAChecker.cxx:470 AliHMPIDQAChecker.cxx:471 AliHMPIDQAChecker.cxx:472 AliHMPIDQAChecker.cxx:473 AliHMPIDQAChecker.cxx:474 AliHMPIDQAChecker.cxx:475 AliHMPIDQAChecker.cxx:476 AliHMPIDQAChecker.cxx:477 AliHMPIDQAChecker.cxx:478 AliHMPIDQAChecker.cxx:479 AliHMPIDQAChecker.cxx:480 AliHMPIDQAChecker.cxx:481 AliHMPIDQAChecker.cxx:482 AliHMPIDQAChecker.cxx:483 AliHMPIDQAChecker.cxx:484 AliHMPIDQAChecker.cxx:485 AliHMPIDQAChecker.cxx:486 AliHMPIDQAChecker.cxx:487 AliHMPIDQAChecker.cxx:488 AliHMPIDQAChecker.cxx:489 AliHMPIDQAChecker.cxx:490 AliHMPIDQAChecker.cxx:491 AliHMPIDQAChecker.cxx:492 AliHMPIDQAChecker.cxx:493 AliHMPIDQAChecker.cxx:494 AliHMPIDQAChecker.cxx:495 AliHMPIDQAChecker.cxx:496 AliHMPIDQAChecker.cxx:497 AliHMPIDQAChecker.cxx:498 AliHMPIDQAChecker.cxx:499 AliHMPIDQAChecker.cxx:500 AliHMPIDQAChecker.cxx:501 AliHMPIDQAChecker.cxx:502 AliHMPIDQAChecker.cxx:503 AliHMPIDQAChecker.cxx:504 AliHMPIDQAChecker.cxx:505 AliHMPIDQAChecker.cxx:506 AliHMPIDQAChecker.cxx:507 AliHMPIDQAChecker.cxx:508 AliHMPIDQAChecker.cxx:509 AliHMPIDQAChecker.cxx:510 AliHMPIDQAChecker.cxx:511 AliHMPIDQAChecker.cxx:512 AliHMPIDQAChecker.cxx:513 AliHMPIDQAChecker.cxx:514 AliHMPIDQAChecker.cxx:515 AliHMPIDQAChecker.cxx:516 AliHMPIDQAChecker.cxx:517 AliHMPIDQAChecker.cxx:518 AliHMPIDQAChecker.cxx:519 AliHMPIDQAChecker.cxx:520 AliHMPIDQAChecker.cxx:521 AliHMPIDQAChecker.cxx:522 AliHMPIDQAChecker.cxx:523 AliHMPIDQAChecker.cxx:524 AliHMPIDQAChecker.cxx:525 AliHMPIDQAChecker.cxx:526 AliHMPIDQAChecker.cxx:527 AliHMPIDQAChecker.cxx:528 AliHMPIDQAChecker.cxx:529 AliHMPIDQAChecker.cxx:530 AliHMPIDQAChecker.cxx:531 AliHMPIDQAChecker.cxx:532 AliHMPIDQAChecker.cxx:533 AliHMPIDQAChecker.cxx:534 AliHMPIDQAChecker.cxx:535 AliHMPIDQAChecker.cxx:536 AliHMPIDQAChecker.cxx:537 AliHMPIDQAChecker.cxx:538 AliHMPIDQAChecker.cxx:539 AliHMPIDQAChecker.cxx:540 AliHMPIDQAChecker.cxx:541 AliHMPIDQAChecker.cxx:542 AliHMPIDQAChecker.cxx:543 AliHMPIDQAChecker.cxx:544 AliHMPIDQAChecker.cxx:545 AliHMPIDQAChecker.cxx:546 AliHMPIDQAChecker.cxx:547 AliHMPIDQAChecker.cxx:548 AliHMPIDQAChecker.cxx:549 AliHMPIDQAChecker.cxx:550 AliHMPIDQAChecker.cxx:551 AliHMPIDQAChecker.cxx:552 AliHMPIDQAChecker.cxx:553 AliHMPIDQAChecker.cxx:554 AliHMPIDQAChecker.cxx:555 AliHMPIDQAChecker.cxx:556 AliHMPIDQAChecker.cxx:557 AliHMPIDQAChecker.cxx:558 AliHMPIDQAChecker.cxx:559 AliHMPIDQAChecker.cxx:560 AliHMPIDQAChecker.cxx:561 AliHMPIDQAChecker.cxx:562 AliHMPIDQAChecker.cxx:563 AliHMPIDQAChecker.cxx:564 AliHMPIDQAChecker.cxx:565 AliHMPIDQAChecker.cxx:566 AliHMPIDQAChecker.cxx:567 AliHMPIDQAChecker.cxx:568 AliHMPIDQAChecker.cxx:569 AliHMPIDQAChecker.cxx:570 AliHMPIDQAChecker.cxx:571 AliHMPIDQAChecker.cxx:572 AliHMPIDQAChecker.cxx:573 AliHMPIDQAChecker.cxx:574 AliHMPIDQAChecker.cxx:575 AliHMPIDQAChecker.cxx:576 AliHMPIDQAChecker.cxx:577 AliHMPIDQAChecker.cxx:578 AliHMPIDQAChecker.cxx:579 AliHMPIDQAChecker.cxx:580 AliHMPIDQAChecker.cxx:581 AliHMPIDQAChecker.cxx:582 AliHMPIDQAChecker.cxx:583 AliHMPIDQAChecker.cxx:584 AliHMPIDQAChecker.cxx:585 AliHMPIDQAChecker.cxx:586 AliHMPIDQAChecker.cxx:587 AliHMPIDQAChecker.cxx:588 AliHMPIDQAChecker.cxx:589 AliHMPIDQAChecker.cxx:590 AliHMPIDQAChecker.cxx:591 AliHMPIDQAChecker.cxx:592 AliHMPIDQAChecker.cxx:593 AliHMPIDQAChecker.cxx:594 AliHMPIDQAChecker.cxx:595 AliHMPIDQAChecker.cxx:596 AliHMPIDQAChecker.cxx:597 AliHMPIDQAChecker.cxx:598 AliHMPIDQAChecker.cxx:599 AliHMPIDQAChecker.cxx:600 AliHMPIDQAChecker.cxx:601 AliHMPIDQAChecker.cxx:602 AliHMPIDQAChecker.cxx:603 AliHMPIDQAChecker.cxx:604 AliHMPIDQAChecker.cxx:605 AliHMPIDQAChecker.cxx:606 AliHMPIDQAChecker.cxx:607 AliHMPIDQAChecker.cxx:608 AliHMPIDQAChecker.cxx:609 AliHMPIDQAChecker.cxx:610 AliHMPIDQAChecker.cxx:611 AliHMPIDQAChecker.cxx:612 AliHMPIDQAChecker.cxx:613 AliHMPIDQAChecker.cxx:614 AliHMPIDQAChecker.cxx:615 AliHMPIDQAChecker.cxx:616 AliHMPIDQAChecker.cxx:617 AliHMPIDQAChecker.cxx:618 AliHMPIDQAChecker.cxx:619 AliHMPIDQAChecker.cxx:620 AliHMPIDQAChecker.cxx:621 AliHMPIDQAChecker.cxx:622 AliHMPIDQAChecker.cxx:623 AliHMPIDQAChecker.cxx:624 AliHMPIDQAChecker.cxx:625 AliHMPIDQAChecker.cxx:626 AliHMPIDQAChecker.cxx:627 AliHMPIDQAChecker.cxx:628 AliHMPIDQAChecker.cxx:629 AliHMPIDQAChecker.cxx:630 AliHMPIDQAChecker.cxx:631 AliHMPIDQAChecker.cxx:632 AliHMPIDQAChecker.cxx:633 AliHMPIDQAChecker.cxx:634 AliHMPIDQAChecker.cxx:635 AliHMPIDQAChecker.cxx:636 AliHMPIDQAChecker.cxx:637 AliHMPIDQAChecker.cxx:638 AliHMPIDQAChecker.cxx:639 AliHMPIDQAChecker.cxx:640 AliHMPIDQAChecker.cxx:641 AliHMPIDQAChecker.cxx:642 AliHMPIDQAChecker.cxx:643 AliHMPIDQAChecker.cxx:644 AliHMPIDQAChecker.cxx:645 AliHMPIDQAChecker.cxx:646 AliHMPIDQAChecker.cxx:647 AliHMPIDQAChecker.cxx:648 AliHMPIDQAChecker.cxx:649 AliHMPIDQAChecker.cxx:650 AliHMPIDQAChecker.cxx:651 AliHMPIDQAChecker.cxx:652 AliHMPIDQAChecker.cxx:653 AliHMPIDQAChecker.cxx:654 AliHMPIDQAChecker.cxx:655 AliHMPIDQAChecker.cxx:656 AliHMPIDQAChecker.cxx:657 AliHMPIDQAChecker.cxx:658 AliHMPIDQAChecker.cxx:659 AliHMPIDQAChecker.cxx:660 AliHMPIDQAChecker.cxx:661 AliHMPIDQAChecker.cxx:662 AliHMPIDQAChecker.cxx:663 AliHMPIDQAChecker.cxx:664 AliHMPIDQAChecker.cxx:665 AliHMPIDQAChecker.cxx:666 AliHMPIDQAChecker.cxx:667 AliHMPIDQAChecker.cxx:668 AliHMPIDQAChecker.cxx:669 AliHMPIDQAChecker.cxx:670 AliHMPIDQAChecker.cxx:671 AliHMPIDQAChecker.cxx:672 AliHMPIDQAChecker.cxx:673 AliHMPIDQAChecker.cxx:674 AliHMPIDQAChecker.cxx:675 AliHMPIDQAChecker.cxx:676 AliHMPIDQAChecker.cxx:677 AliHMPIDQAChecker.cxx:678 AliHMPIDQAChecker.cxx:679 AliHMPIDQAChecker.cxx:680 AliHMPIDQAChecker.cxx:681 AliHMPIDQAChecker.cxx:682 AliHMPIDQAChecker.cxx:683 AliHMPIDQAChecker.cxx:684 AliHMPIDQAChecker.cxx:685 AliHMPIDQAChecker.cxx:686 AliHMPIDQAChecker.cxx:687 AliHMPIDQAChecker.cxx:688 AliHMPIDQAChecker.cxx:689 AliHMPIDQAChecker.cxx:690 AliHMPIDQAChecker.cxx:691 AliHMPIDQAChecker.cxx:692 AliHMPIDQAChecker.cxx:693 AliHMPIDQAChecker.cxx:694 AliHMPIDQAChecker.cxx:695 AliHMPIDQAChecker.cxx:696 AliHMPIDQAChecker.cxx:697 AliHMPIDQAChecker.cxx:698 AliHMPIDQAChecker.cxx:699 AliHMPIDQAChecker.cxx:700 AliHMPIDQAChecker.cxx:701 AliHMPIDQAChecker.cxx:702 AliHMPIDQAChecker.cxx:703 AliHMPIDQAChecker.cxx:704 AliHMPIDQAChecker.cxx:705 AliHMPIDQAChecker.cxx:706 AliHMPIDQAChecker.cxx:707 AliHMPIDQAChecker.cxx:708 AliHMPIDQAChecker.cxx:709 AliHMPIDQAChecker.cxx:710 AliHMPIDQAChecker.cxx:711 AliHMPIDQAChecker.cxx:712 AliHMPIDQAChecker.cxx:713 AliHMPIDQAChecker.cxx:714 AliHMPIDQAChecker.cxx:715 AliHMPIDQAChecker.cxx:716 AliHMPIDQAChecker.cxx:717 AliHMPIDQAChecker.cxx:718 AliHMPIDQAChecker.cxx:719 AliHMPIDQAChecker.cxx:720 AliHMPIDQAChecker.cxx:721 AliHMPIDQAChecker.cxx:722 AliHMPIDQAChecker.cxx:723 AliHMPIDQAChecker.cxx:724 AliHMPIDQAChecker.cxx:725 AliHMPIDQAChecker.cxx:726 AliHMPIDQAChecker.cxx:727