#include "AliMUONTrackerQAChecker.h"
#include "AliCDBManager.h"
#include "AliCodeTimer.h"
#include "AliLog.h"
#include "AliMUONQAIndices.h"
#include "AliMUONRecoParam.h"
#include "AliMpBusPatch.h"
#include "AliMpDDLStore.h"
#include "AliQAv1.h"
#include "Riostream.h"
#include "TAxis.h"
#include "TDirectory.h"
#include "TGaxis.h"
#include "TH1.h"
#include "TLine.h"
#include "TMath.h"
#include "TPaveText.h"
#include "TVirtualPad.h"
#include "TStyle.h"
#include "TLatex.h"
ClassImp(AliMUONTrackerQAChecker)
namespace {
int trim(Int_t n,
Double_t* x,
Double_t alpha,
Double_t& tmean,
Double_t& tvar,
Double_t& min,
Double_t& max)
{
if ( n < 2 )
{
return -1;
}
if ( alpha < 0 || alpha >= 0.5 )
{
return -2;
}
Int_t* indices = new Int_t[n];
TMath::Sort(n,x,indices,kFALSE);
Double_t* sx = new Double_t[n];
for ( Int_t i = 0; i < n; ++i )
{
sx[i] = x[indices[i]];
}
delete[] indices;
Int_t k = TMath::FloorNint(alpha * n);
double sum = 0.0;
for ( Int_t i = k; i < n - k ; ++i )
{
sum += sx[i];
}
tmean = sum / ( n - 2 * k );
double t2 = 0.0;
for ( Int_t i = k; i < n - k; ++i )
{
t2 += (sx[i] - tmean) * (sx[i] - tmean);
}
tvar = (
t2 +
k * (sx[k] - tmean) * (sx[k] - tmean) +
k * (sx[n - k - 1] - tmean) * (sx[n - k - 1] - tmean)
) / (n * n);
min = DBL_MAX;
max = 0.0;
for ( Int_t i = k; i < n-k; ++i )
{
min = TMath::Min(min,sx[i]);
max = TMath::Max(max,sx[i]);
}
delete[] sx;
return 0;
}
Int_t GetColorFromCheckCode(AliMUONVQAChecker::ECheckCode code)
{
if ( code == AliMUONVQAChecker::kInfo ) return AliMUONVQAChecker::kInfoColor;
else if ( code == AliMUONVQAChecker::kWarning ) return AliMUONVQAChecker::kWarningColor;
else if ( code == AliMUONVQAChecker::kFatal) return AliMUONVQAChecker::kFatalColor;
else return AliMUONVQAChecker::kErrorColor;
}
const char* NOTENOUGHEVENTMESSAGE = "Not enough event to judge. Please wait a bit";
const char* NOTIFYEXPERTMESSAGE = "PLEASE NOTIFY EXPERT !";
const char* ALLISFINEMESSAGE = "All is fine. Just enjoy.";
const int NOTENOUGHEVENTLIMIT = 50;
void SetupHisto(Int_t neventsseen, Int_t neventsused, const TObjArray& messages, TH1& histo, AliMUONVQAChecker::ECheckCode code, const char* extraopt="")
{
Bool_t allIsFine(kFALSE);
if ( code == AliMUONVQAChecker::kInfo )
{
allIsFine = kTRUE;
}
Double_t y1 = 0.99 - (messages.GetLast()+(allIsFine?1:0)+2)*0.075;
TPaveText* text = new TPaveText(0.5,y1,0.99,0.99,"NDC");
text->AddText(Form("MCH RUN %d - %d events seen - %d events used",AliCDBManager::Instance()->GetRun(),neventsseen,neventsused));
TIter next(&messages);
TObjString* str;
while ( ( str = static_cast<TObjString*>(next()) ) )
{
text->AddText(str->String());
}
if ( allIsFine )
{
text->AddText(ALLISFINEMESSAGE);
}
text->SetFillColor(GetColorFromCheckCode(code));
Int_t color = GetColorFromCheckCode(code);
histo.SetFillStyle(1001);
histo.SetFillColor(color);
TString sopt("BAR");
sopt += extraopt;
histo.SetOption(sopt.Data());
histo.SetBit(TH1::kNoTitle);
TList* lstF = histo.GetListOfFunctions();
TObject* title = lstF->FindObject("title");
if (title) delete lstF->Remove(title);
lstF->Add(text);
}
void ShowTrueValue(TH1& hrostatusnorm, Int_t v)
{
Int_t bin = hrostatusnorm.FindBin(1.0*v);
Double_t value = hrostatusnorm.GetBinContent(bin);
if ( value > 100.0 )
{
TLatex* l = new TLatex(hrostatusnorm.GetBinCenter(bin),50,Form("%g",value));
l->SetTextFont(gStyle->GetTextFont());
l->SetTextAlign(22);
l->SetTextAngle(45);
l->SetTextSize(0.02*hrostatusnorm.GetMarkerSize());
hrostatusnorm.GetListOfFunctions()->Add(l);
}
}
}
AliMUONTrackerQAChecker::AliMUONTrackerQAChecker() : AliMUONVQAChecker()
{
}
AliMUONTrackerQAChecker::~AliMUONTrackerQAChecker()
{
}
AliMUONVQAChecker::ECheckCode*
AliMUONTrackerQAChecker::CheckRecPoints(TObjArray ** list, const AliMUONRecoParam* )
{
AliCodeTimerAuto("",0);
AliMUONVQAChecker::ECheckCode * rv = new AliMUONVQAChecker::ECheckCode[AliRecoParam::kNSpecies] ;
for (Int_t specie = 0 ; specie < AliRecoParam::kNSpecies ; specie++)
rv[specie] = AliMUONVQAChecker::kInfo;
for (Int_t specie = 0 ; specie < AliRecoParam::kNSpecies ; specie++)
{
TH1* h = AliQAv1::GetData(list,AliMUONQAIndices::kTrackerNumberOfClustersPerDE,AliRecoParam::ConvertIndex(specie));
if ( !h ) rv[specie] = AliMUONVQAChecker::kWarning;
else if ( h->GetMean() == 0.0 ) rv[specie] = MarkHisto(*h,AliMUONVQAChecker::kFatal);
}
return rv;
}
AliMUONVQAChecker::ECheckCode
AliMUONTrackerQAChecker::MarkHisto(TH1& histo, AliMUONVQAChecker::ECheckCode value) const
{
if ( value != AliMUONVQAChecker::kInfo )
{
histo.SetBit(AliQAv1::GetQABit());
}
return value;
}
AliMUONVQAChecker::ECheckCode*
AliMUONTrackerQAChecker::CheckESD(TObjArray ** list, const AliMUONRecoParam* )
{
AliCodeTimerAuto("",0);
AliMUONVQAChecker::ECheckCode * rv = new AliMUONVQAChecker::ECheckCode[AliRecoParam::kNSpecies] ;
for (Int_t specie = 0 ; specie < AliRecoParam::kNSpecies ; specie++)
rv[specie] = AliMUONVQAChecker::kInfo;
for (Int_t specie = 0 ; specie < AliRecoParam::kNSpecies ; specie++) {
TH1* h = AliQAv1::GetData(list,AliMUONQAIndices::kESDnTracks,AliRecoParam::ConvertIndex(specie));
if (!h) rv[specie] = AliMUONVQAChecker::kWarning;
else if ( h->GetMean() == 0.0 ) rv[specie] = MarkHisto(*h,AliMUONVQAChecker::kFatal);
h = AliQAv1::GetData(list,AliMUONQAIndices::kESDMatchTrig,AliRecoParam::ConvertIndex(specie));
if (!h) rv[specie] = AliMUONVQAChecker::kWarning;
else if (h->GetMean() == 0.0 ) rv[specie] = MarkHisto(*h,AliMUONVQAChecker::kError);
}
return rv;
}
AliMUONVQAChecker::ECheckCode*
AliMUONTrackerQAChecker::CheckRaws(TObjArray ** list, const AliMUONRecoParam* recoParam)
{
AliCodeTimerAuto("",0);
if (!recoParam) return 0x0;
AliMUONVQAChecker::ECheckCode * rv = new AliMUONVQAChecker::ECheckCode[AliRecoParam::kNSpecies] ;
for (Int_t specie = 0 ; specie < AliRecoParam::kNSpecies ; specie++)
{
rv[specie] = AliMUONVQAChecker::kInfo;
}
for (Int_t specie = 0 ; specie < AliRecoParam::kNSpecies ; specie++)
{
TH1* hneventsseen = AliQAv1::GetData(list,AliMUONQAIndices::kTrackerNofPhysicsEventsSeen,AliRecoParam::ConvertIndex(specie));
TH1* hneventsused = AliQAv1::GetData(list,AliMUONQAIndices::kTrackerNofGoodPhysicsEventsUsed,AliRecoParam::ConvertIndex(specie));
if (!hneventsseen || !hneventsused ) continue;
Int_t neventsseen = TMath::Nint(hneventsseen->GetBinContent(1));
Int_t neventsused = TMath::Nint(hneventsused->GetBinContent(1));
AliMUONVQAChecker::ECheckCode c1 = AliMUONVQAChecker::kInfo;
AliMUONVQAChecker::ECheckCode c2 = AliMUONVQAChecker::kInfo;
AliMUONVQAChecker::ECheckCode c3 = AliMUONVQAChecker::kInfo;
TH1* hbp = AliQAv1::GetData(list,AliMUONQAIndices::kTrackerBusPatchOccupancy,AliRecoParam::ConvertIndex(specie));
TH1* hbpconfig = AliQAv1::GetData(list,AliMUONQAIndices::kTrackerBusPatchConfig,AliRecoParam::ConvertIndex(specie));
TH1* hddl = AliQAv1::GetData(list,AliMUONQAIndices::kTrackerDDLOccupancy,AliRecoParam::ConvertIndex(specie));
if ( hbp && hbpconfig && hddl )
{
c1 = BeautifyOccupancyHistograms(*hddl,*hbp,hbpconfig,neventsseen,neventsused,*recoParam);
}
else
{
AliError(Form("Could not BeautifyOccupancyHistograms : hddl=%p hbpconfig=%p hbp=%p",hddl,hbpconfig,hbp));
}
TH1* hbuspatchtokenerrors = AliQAv1::GetData(list,AliMUONQAIndices::kTrackerBusPatchTokenLostErrors,AliRecoParam::ConvertIndex(specie));
TH1* hrostatus = AliQAv1::GetData(list,AliMUONQAIndices::kTrackerReadoutStatus,AliRecoParam::ConvertIndex(specie));
TH1* hrostatusnorm = AliQAv1::GetData(list,AliMUONQAIndices::kTrackerReadoutStatusPerEvent,AliRecoParam::ConvertIndex(specie));
if ( hrostatus && hrostatusnorm && hbuspatchtokenerrors )
{
c2 = BeautifyReadoutHistograms(*hrostatus,*hrostatusnorm,*hbuspatchtokenerrors,
neventsseen,neventsused,*recoParam);
}
else
{
AliError(Form("Could not BeautifyReadoutHistograms : hrostatus=%p hrostatusnorm=%p hbuspatchtokenerrors=%p",
hrostatus,hrostatusnorm,hbuspatchtokenerrors));
}
TH1* heventsize = AliQAv1::GetData(list,AliMUONQAIndices::kTrackerDDLEventSize,AliRecoParam::ConvertIndex(specie));
TH1* heventsizeperevent = AliQAv1::GetData(list,AliMUONQAIndices::kTrackerDDLEventSizePerEvent,AliRecoParam::ConvertIndex(specie));
if ( heventsize && heventsizeperevent )
{
c3 = BeautifyEventsizeHistograms(*heventsize,*heventsizeperevent,
neventsseen,neventsused,*recoParam);
}
else
{
AliError(Form("Could not BeautifyEventsizeHistograms heventsize=%p heventsizeperevent=%p",heventsize,heventsizeperevent));
}
if ( c1 == AliMUONVQAChecker::kFatal || c2 == AliMUONVQAChecker::kFatal || c3 == AliMUONVQAChecker::kFatal )
{
rv[specie] = AliMUONVQAChecker::kFatal;
}
else if ( c1 == AliMUONVQAChecker::kError || c2 == AliMUONVQAChecker::kError || c3 == AliMUONVQAChecker::kError )
{
rv[specie] = AliMUONVQAChecker::kError;
}
else if ( c1 == AliMUONVQAChecker::kWarning || c2 == AliMUONVQAChecker::kWarning || c3 == AliMUONVQAChecker::kWarning )
{
rv[specie] = AliMUONVQAChecker::kWarning;
}
else
{
rv[specie] = AliMUONVQAChecker::kInfo;
}
}
return rv;
}
AliMUONVQAChecker::ECheckCode
AliMUONTrackerQAChecker::BeautifyOccupancyHistograms(TH1& hddl,
TH1& hbp,
const TH1* hbuspatchconfig,
Int_t neventsseen,
Int_t neventsused,
const AliMUONRecoParam& recoParam)
{
if ( hbuspatchconfig )
{
if ( hbp.GetNbinsX() != hbuspatchconfig->GetNbinsX() ||
hbp.GetXaxis()->GetXmin() != hbuspatchconfig->GetXaxis()->GetXmin() ||
hbp.GetXaxis()->GetXmax() != hbuspatchconfig->GetXaxis()->GetXmax() )
{
AliError("hbp and hbuspatchconfig histograms are not compatible !");
return AliMUONVQAChecker::kFatal;
}
}
hddl.SetStats(kFALSE);
hbp.SetXTitle("Absolute Bus Patch Id");
hbp.SetYTitle("Occupancy (percent)");
hbp.SetStats(kFALSE);
Double_t xmin = hbp.GetXaxis()->GetXmin();
Double_t xmax = hbp.GetXaxis()->GetXmax();
Double_t occMax(0.1);
Double_t maxToleratedOccupancy(recoParam.BuspatchOccupancyHighLimit()*100.0);
Double_t minToleratedOccupancy(recoParam.BuspatchOccupancyLowLimit()*100.0);
TLine* line1 = new TLine(xmin,maxToleratedOccupancy,xmax,maxToleratedOccupancy);
line1->SetLineColor(1);
line1->SetLineWidth(1);
TLine* line2 = new TLine(xmin,minToleratedOccupancy,xmax,minToleratedOccupancy);
line2->SetLineColor(1);
line2->SetLineWidth(1);
TList* lstF = hbp.GetListOfFunctions();
if (lstF) {
TObject *stats = lstF->FindObject("stats");
lstF->Remove(stats);
TObject *obj;
while ((obj = lstF->First())) { while(lstF->Remove(obj)) { } delete obj; }
if (stats) lstF->Add(stats);
}
hbp.GetListOfFunctions()->Add(line1);
hbp.GetListOfFunctions()->Add(line2);
TIter next(AliMpDDLStore::Instance()->CreateBusPatchIterator());
AliMpBusPatch* bp(0x0);
Int_t nBusPatches(0);
Int_t nMissingBusPatches(0);
while ( ( bp = static_cast<AliMpBusPatch*>(next())) )
{
++nBusPatches;
Int_t bin = hbp.FindBin(bp->GetId());
if ( hbp.GetBinContent(bin) <= 0.0 )
{
++nMissingBusPatches;
}
}
next.Reset();
Int_t ok(-1);
Int_t n(0);
Int_t nBusPatchesAboveLimit(0);
Int_t nBusPatchesBelowLimit(0);
Double_t alpha(0.1);
Double_t tmean(0.0),tvar(0.0);
Double_t ymin(0.0),ymax(0.0);
if ( nBusPatches )
{
Double_t* x = new Double_t[nBusPatches];
while ( ( bp = static_cast<AliMpBusPatch*>(next())) )
{
Int_t bin = hbp.FindBin(bp->GetId());
if ( hbp.GetBinContent(bin) > 0 )
{
x[n] = hbp.GetBinContent(bin);
++n;
}
if ( hbp.GetBinContent(bin) > maxToleratedOccupancy )
{
++nBusPatchesAboveLimit;
}
if ( hbp.GetBinContent(bin) < minToleratedOccupancy )
{
if ( hbuspatchconfig && hbuspatchconfig->GetBinContent(bin) > 0 )
{
++nBusPatchesBelowLimit;
}
}
}
ok = trim(n,x,alpha,tmean,tvar,ymin,ymax);
delete[] x;
}
if ( ok < 0 )
{
ymax = occMax;
}
else
{
ymax = TMath::Max(ymax,occMax);
}
hbp.SetMaximum(ymax*1.4);
AliMUONVQAChecker::ECheckCode rv(AliMUONVQAChecker::kInfo);
TObjArray messages;
messages.SetOwner(kTRUE);
if ( neventsseen < NOTENOUGHEVENTLIMIT )
{
messages.Add(new TObjString(NOTENOUGHEVENTMESSAGE));
}
else
{
if ( ok < 0 )
{
messages.Add(new TObjString("Could not compute truncated mean. Not enough events ?"));
if ( neventsused < TMath::Nint(0.1*neventsseen) )
{
messages.Add(new TObjString(Form("We've actually seen %d events, but used only %d !",neventsseen,neventsused)));
messages.Add(new TObjString("For a normal physics run, this is highly suspect !"));
messages.Add(new TObjString(NOTIFYEXPERTMESSAGE));
rv = AliMUONVQAChecker::kFatal;
}
}
else if (!nBusPatches)
{
messages.Add(new TObjString(Form("Could not get the total number of buspatches (%d). ERROR !!!",
nBusPatches)));
messages.Add(new TObjString("Please check with expert !"));
rv = AliMUONVQAChecker::kFatal;
}
else
{
Float_t missingBusPatchFraction = nMissingBusPatches*100.0/nBusPatches;
Float_t aboveLimitFraction = nBusPatchesAboveLimit*100.0/nBusPatches;
Float_t belowLimitFraction = nBusPatchesBelowLimit*100.0/nBusPatches;
messages.Add(new TObjString(Form("%5.2f %% of missing buspatches (%d out of %d)",missingBusPatchFraction,nMissingBusPatches,nBusPatches)));
messages.Add(new TObjString(Form("%5.2f %% bus patches above the %5.2f %% limit",aboveLimitFraction,maxToleratedOccupancy)));
messages.Add(new TObjString(Form("%5.2f %% bus patches below the %e %% limit",belowLimitFraction,minToleratedOccupancy)));
messages.Add(new TObjString(Form("Bus patch mean occupancy (truncated at %2d %%) is %7.2f %%",(Int_t)(alpha*100),tmean)));
if ( aboveLimitFraction > recoParam.FractionOfBuspatchOutsideOccupancyLimit()*100.0 ||
belowLimitFraction > recoParam.FractionOfBuspatchOutsideOccupancyLimit()*100.0 )
{
rv = AliMUONVQAChecker::kError;
}
else
{
rv = AliMUONVQAChecker::kInfo;
}
}
}
SetupHisto(neventsseen,neventsused,messages,hbp,rv);
SetupHisto(neventsseen,neventsused,messages,hddl,rv);
hddl.SetStats(kFALSE);
return rv;
}
AliMUONVQAChecker::ECheckCode
AliMUONTrackerQAChecker::BeautifyReadoutHistograms(TH1& hrostatus,
TH1& hrostatusnorm,
const TH1& hbuspatchtokenerrors,
Int_t neventsseen,
Int_t neventsused,
const AliMUONRecoParam& recoParam)
{
hrostatusnorm.Reset();
AliMUONVQAChecker::ECheckCode rv(AliMUONVQAChecker::kInfo);
TObjArray messages;
messages.SetOwner(kTRUE);
if ( neventsseen < NOTENOUGHEVENTLIMIT )
{
messages.Add(new TObjString(NOTENOUGHEVENTMESSAGE));
}
else
{
hrostatusnorm.Add(&hrostatus,100.0/neventsseen);
hrostatusnorm.SetOption("TEXT45");
hrostatusnorm.SetMinimum(0.0);
hrostatusnorm.SetMaximum(100.0);
Double_t tokenLost = hrostatusnorm.GetBinContent(hrostatusnorm.FindBin(1.0*AliMUONQAIndices::kTrackerRawNofTokenLostErrors));
if ( tokenLost > recoParam.TokenLostLimit() )
{
rv = AliMUONVQAChecker::kError;
messages.Add(new TObjString("There are some token lost errors !"));
messages.Add(new TObjString("PLEASE CHECK THE BUSY TIME FOR MUON !"));
messages.Add(new TObjString("If above 5 ms please have the MUON expert"));
messages.Add(new TObjString("check the following bus patches :"));
for ( Int_t i = 1; i <= hbuspatchtokenerrors.GetNbinsX(); ++i )
{
if ( hbuspatchtokenerrors.GetBinContent(i) > 0 )
{
messages.Add(new TObjString(Form("BP %4d",i)));
}
}
}
if ( hrostatusnorm.GetBinContent(hrostatusnorm.FindBin(AliMUONQAIndices::kTrackerRawNofEmptyEvents)) > 25.0 )
{
messages.Add(new TObjString("Too many empty events !"));
messages.Add(new TObjString(NOTIFYEXPERTMESSAGE));
rv = AliMUONVQAChecker::kFatal;
}
}
SetupHisto(neventsseen,neventsused,messages,hrostatusnorm,rv,"text45");
ShowTrueValue(hrostatusnorm,AliMUONQAIndices::kTrackerRawNofTokenLostErrors);
ShowTrueValue(hrostatusnorm,AliMUONQAIndices::kTrackerRawNofParityErrors);
ShowTrueValue(hrostatusnorm,AliMUONQAIndices::kTrackerRawNofPaddingErrors);
ShowTrueValue(hrostatusnorm,AliMUONQAIndices::kTrackerRawNofGlitchErrors);
return rv;
}
AliMUONVQAChecker::ECheckCode
AliMUONTrackerQAChecker::BeautifyEventsizeHistograms(TH1& heventsize,
TH1& heventsizeperevent,
Int_t neventsseen,
Int_t neventsused,
const AliMUONRecoParam& recoParam)
{
AliMUONVQAChecker::ECheckCode rv(AliMUONVQAChecker::kInfo);
heventsizeperevent.Reset();
TObjArray messages;
messages.SetOwner(kTRUE);
if ( neventsseen < NOTENOUGHEVENTLIMIT )
{
messages.Add(new TObjString(NOTENOUGHEVENTMESSAGE));
}
else
{
heventsizeperevent.Add(&heventsize,1.0/neventsseen/1024.0);
heventsizeperevent.SetMinimum(0);
Double_t totalEventSizePerEvent = heventsizeperevent.Integral();
TString msg;
TString action;
if ( totalEventSizePerEvent > recoParam.EventSizeHardLimit() )
{
rv = AliMUONVQAChecker::kError;
msg = "That is really too high.";
action = NOTIFYEXPERTMESSAGE;
}
else if ( totalEventSizePerEvent > recoParam.EventSizeSoftLimit() )
{
msg = "That is a bit high.";
action = "Please keep an eye on it.";
rv = AliMUONVQAChecker::kWarning;
}
else
{
rv = AliMUONVQAChecker::kInfo;
}
messages.Add(new TObjString(Form("<MCH event size> %5.1f KB/event\n",totalEventSizePerEvent)));
if (msg.Length()>0)
{
messages.Add(new TObjString(msg));
messages.Add(new TObjString(action));
}
}
SetupHisto(neventsseen,neventsused,messages,heventsizeperevent,rv);
return rv;
}
AliMUONTrackerQAChecker.cxx:1 AliMUONTrackerQAChecker.cxx:2 AliMUONTrackerQAChecker.cxx:3 AliMUONTrackerQAChecker.cxx:4 AliMUONTrackerQAChecker.cxx:5 AliMUONTrackerQAChecker.cxx:6 AliMUONTrackerQAChecker.cxx:7 AliMUONTrackerQAChecker.cxx:8 AliMUONTrackerQAChecker.cxx:9 AliMUONTrackerQAChecker.cxx:10 AliMUONTrackerQAChecker.cxx:11 AliMUONTrackerQAChecker.cxx:12 AliMUONTrackerQAChecker.cxx:13 AliMUONTrackerQAChecker.cxx:14 AliMUONTrackerQAChecker.cxx:15 AliMUONTrackerQAChecker.cxx:16 AliMUONTrackerQAChecker.cxx:17 AliMUONTrackerQAChecker.cxx:18 AliMUONTrackerQAChecker.cxx:19 AliMUONTrackerQAChecker.cxx:20 AliMUONTrackerQAChecker.cxx:21 AliMUONTrackerQAChecker.cxx:22 AliMUONTrackerQAChecker.cxx:23 AliMUONTrackerQAChecker.cxx:24 AliMUONTrackerQAChecker.cxx:25 AliMUONTrackerQAChecker.cxx:26 AliMUONTrackerQAChecker.cxx:27 AliMUONTrackerQAChecker.cxx:28 AliMUONTrackerQAChecker.cxx:29 AliMUONTrackerQAChecker.cxx:30 AliMUONTrackerQAChecker.cxx:31 AliMUONTrackerQAChecker.cxx:32 AliMUONTrackerQAChecker.cxx:33 AliMUONTrackerQAChecker.cxx:34 AliMUONTrackerQAChecker.cxx:35 AliMUONTrackerQAChecker.cxx:36 AliMUONTrackerQAChecker.cxx:37 AliMUONTrackerQAChecker.cxx:38 AliMUONTrackerQAChecker.cxx:39 AliMUONTrackerQAChecker.cxx:40 AliMUONTrackerQAChecker.cxx:41 AliMUONTrackerQAChecker.cxx:42 AliMUONTrackerQAChecker.cxx:43 AliMUONTrackerQAChecker.cxx:44 AliMUONTrackerQAChecker.cxx:45 AliMUONTrackerQAChecker.cxx:46 AliMUONTrackerQAChecker.cxx:47 AliMUONTrackerQAChecker.cxx:48 AliMUONTrackerQAChecker.cxx:49 AliMUONTrackerQAChecker.cxx:50 AliMUONTrackerQAChecker.cxx:51 AliMUONTrackerQAChecker.cxx:52 AliMUONTrackerQAChecker.cxx:53 AliMUONTrackerQAChecker.cxx:54 AliMUONTrackerQAChecker.cxx:55 AliMUONTrackerQAChecker.cxx:56 AliMUONTrackerQAChecker.cxx:57 AliMUONTrackerQAChecker.cxx:58 AliMUONTrackerQAChecker.cxx:59 AliMUONTrackerQAChecker.cxx:60 AliMUONTrackerQAChecker.cxx:61 AliMUONTrackerQAChecker.cxx:62 AliMUONTrackerQAChecker.cxx:63 AliMUONTrackerQAChecker.cxx:64 AliMUONTrackerQAChecker.cxx:65 AliMUONTrackerQAChecker.cxx:66 AliMUONTrackerQAChecker.cxx:67 AliMUONTrackerQAChecker.cxx:68 AliMUONTrackerQAChecker.cxx:69 AliMUONTrackerQAChecker.cxx:70 AliMUONTrackerQAChecker.cxx:71 AliMUONTrackerQAChecker.cxx:72 AliMUONTrackerQAChecker.cxx:73 AliMUONTrackerQAChecker.cxx:74 AliMUONTrackerQAChecker.cxx:75 AliMUONTrackerQAChecker.cxx:76 AliMUONTrackerQAChecker.cxx:77 AliMUONTrackerQAChecker.cxx:78 AliMUONTrackerQAChecker.cxx:79 AliMUONTrackerQAChecker.cxx:80 AliMUONTrackerQAChecker.cxx:81 AliMUONTrackerQAChecker.cxx:82 AliMUONTrackerQAChecker.cxx:83 AliMUONTrackerQAChecker.cxx:84 AliMUONTrackerQAChecker.cxx:85 AliMUONTrackerQAChecker.cxx:86 AliMUONTrackerQAChecker.cxx:87 AliMUONTrackerQAChecker.cxx:88 AliMUONTrackerQAChecker.cxx:89 AliMUONTrackerQAChecker.cxx:90 AliMUONTrackerQAChecker.cxx:91 AliMUONTrackerQAChecker.cxx:92 AliMUONTrackerQAChecker.cxx:93 AliMUONTrackerQAChecker.cxx:94 AliMUONTrackerQAChecker.cxx:95 AliMUONTrackerQAChecker.cxx:96 AliMUONTrackerQAChecker.cxx:97 AliMUONTrackerQAChecker.cxx:98 AliMUONTrackerQAChecker.cxx:99 AliMUONTrackerQAChecker.cxx:100 AliMUONTrackerQAChecker.cxx:101 AliMUONTrackerQAChecker.cxx:102 AliMUONTrackerQAChecker.cxx:103 AliMUONTrackerQAChecker.cxx:104 AliMUONTrackerQAChecker.cxx:105 AliMUONTrackerQAChecker.cxx:106 AliMUONTrackerQAChecker.cxx:107 AliMUONTrackerQAChecker.cxx:108 AliMUONTrackerQAChecker.cxx:109 AliMUONTrackerQAChecker.cxx:110 AliMUONTrackerQAChecker.cxx:111 AliMUONTrackerQAChecker.cxx:112 AliMUONTrackerQAChecker.cxx:113 AliMUONTrackerQAChecker.cxx:114 AliMUONTrackerQAChecker.cxx:115 AliMUONTrackerQAChecker.cxx:116 AliMUONTrackerQAChecker.cxx:117 AliMUONTrackerQAChecker.cxx:118 AliMUONTrackerQAChecker.cxx:119 AliMUONTrackerQAChecker.cxx:120 AliMUONTrackerQAChecker.cxx:121 AliMUONTrackerQAChecker.cxx:122 AliMUONTrackerQAChecker.cxx:123 AliMUONTrackerQAChecker.cxx:124 AliMUONTrackerQAChecker.cxx:125 AliMUONTrackerQAChecker.cxx:126 AliMUONTrackerQAChecker.cxx:127 AliMUONTrackerQAChecker.cxx:128 AliMUONTrackerQAChecker.cxx:129 AliMUONTrackerQAChecker.cxx:130 AliMUONTrackerQAChecker.cxx:131 AliMUONTrackerQAChecker.cxx:132 AliMUONTrackerQAChecker.cxx:133 AliMUONTrackerQAChecker.cxx:134 AliMUONTrackerQAChecker.cxx:135 AliMUONTrackerQAChecker.cxx:136 AliMUONTrackerQAChecker.cxx:137 AliMUONTrackerQAChecker.cxx:138 AliMUONTrackerQAChecker.cxx:139 AliMUONTrackerQAChecker.cxx:140 AliMUONTrackerQAChecker.cxx:141 AliMUONTrackerQAChecker.cxx:142 AliMUONTrackerQAChecker.cxx:143 AliMUONTrackerQAChecker.cxx:144 AliMUONTrackerQAChecker.cxx:145 AliMUONTrackerQAChecker.cxx:146 AliMUONTrackerQAChecker.cxx:147 AliMUONTrackerQAChecker.cxx:148 AliMUONTrackerQAChecker.cxx:149 AliMUONTrackerQAChecker.cxx:150 AliMUONTrackerQAChecker.cxx:151 AliMUONTrackerQAChecker.cxx:152 AliMUONTrackerQAChecker.cxx:153 AliMUONTrackerQAChecker.cxx:154 AliMUONTrackerQAChecker.cxx:155 AliMUONTrackerQAChecker.cxx:156 AliMUONTrackerQAChecker.cxx:157 AliMUONTrackerQAChecker.cxx:158 AliMUONTrackerQAChecker.cxx:159 AliMUONTrackerQAChecker.cxx:160 AliMUONTrackerQAChecker.cxx:161 AliMUONTrackerQAChecker.cxx:162 AliMUONTrackerQAChecker.cxx:163 AliMUONTrackerQAChecker.cxx:164 AliMUONTrackerQAChecker.cxx:165 AliMUONTrackerQAChecker.cxx:166 AliMUONTrackerQAChecker.cxx:167 AliMUONTrackerQAChecker.cxx:168 AliMUONTrackerQAChecker.cxx:169 AliMUONTrackerQAChecker.cxx:170 AliMUONTrackerQAChecker.cxx:171 AliMUONTrackerQAChecker.cxx:172 AliMUONTrackerQAChecker.cxx:173 AliMUONTrackerQAChecker.cxx:174 AliMUONTrackerQAChecker.cxx:175 AliMUONTrackerQAChecker.cxx:176 AliMUONTrackerQAChecker.cxx:177 AliMUONTrackerQAChecker.cxx:178 AliMUONTrackerQAChecker.cxx:179 AliMUONTrackerQAChecker.cxx:180 AliMUONTrackerQAChecker.cxx:181 AliMUONTrackerQAChecker.cxx:182 AliMUONTrackerQAChecker.cxx:183 AliMUONTrackerQAChecker.cxx:184 AliMUONTrackerQAChecker.cxx:185 AliMUONTrackerQAChecker.cxx:186 AliMUONTrackerQAChecker.cxx:187 AliMUONTrackerQAChecker.cxx:188 AliMUONTrackerQAChecker.cxx:189 AliMUONTrackerQAChecker.cxx:190 AliMUONTrackerQAChecker.cxx:191 AliMUONTrackerQAChecker.cxx:192 AliMUONTrackerQAChecker.cxx:193 AliMUONTrackerQAChecker.cxx:194 AliMUONTrackerQAChecker.cxx:195 AliMUONTrackerQAChecker.cxx:196 AliMUONTrackerQAChecker.cxx:197 AliMUONTrackerQAChecker.cxx:198 AliMUONTrackerQAChecker.cxx:199 AliMUONTrackerQAChecker.cxx:200 AliMUONTrackerQAChecker.cxx:201 AliMUONTrackerQAChecker.cxx:202 AliMUONTrackerQAChecker.cxx:203 AliMUONTrackerQAChecker.cxx:204 AliMUONTrackerQAChecker.cxx:205 AliMUONTrackerQAChecker.cxx:206 AliMUONTrackerQAChecker.cxx:207 AliMUONTrackerQAChecker.cxx:208 AliMUONTrackerQAChecker.cxx:209 AliMUONTrackerQAChecker.cxx:210 AliMUONTrackerQAChecker.cxx:211 AliMUONTrackerQAChecker.cxx:212 AliMUONTrackerQAChecker.cxx:213 AliMUONTrackerQAChecker.cxx:214 AliMUONTrackerQAChecker.cxx:215 AliMUONTrackerQAChecker.cxx:216 AliMUONTrackerQAChecker.cxx:217 AliMUONTrackerQAChecker.cxx:218 AliMUONTrackerQAChecker.cxx:219 AliMUONTrackerQAChecker.cxx:220 AliMUONTrackerQAChecker.cxx:221 AliMUONTrackerQAChecker.cxx:222 AliMUONTrackerQAChecker.cxx:223 AliMUONTrackerQAChecker.cxx:224 AliMUONTrackerQAChecker.cxx:225 AliMUONTrackerQAChecker.cxx:226 AliMUONTrackerQAChecker.cxx:227 AliMUONTrackerQAChecker.cxx:228 AliMUONTrackerQAChecker.cxx:229 AliMUONTrackerQAChecker.cxx:230 AliMUONTrackerQAChecker.cxx:231 AliMUONTrackerQAChecker.cxx:232 AliMUONTrackerQAChecker.cxx:233 AliMUONTrackerQAChecker.cxx:234 AliMUONTrackerQAChecker.cxx:235 AliMUONTrackerQAChecker.cxx:236 AliMUONTrackerQAChecker.cxx:237 AliMUONTrackerQAChecker.cxx:238 AliMUONTrackerQAChecker.cxx:239 AliMUONTrackerQAChecker.cxx:240 AliMUONTrackerQAChecker.cxx:241 AliMUONTrackerQAChecker.cxx:242 AliMUONTrackerQAChecker.cxx:243 AliMUONTrackerQAChecker.cxx:244 AliMUONTrackerQAChecker.cxx:245 AliMUONTrackerQAChecker.cxx:246 AliMUONTrackerQAChecker.cxx:247 AliMUONTrackerQAChecker.cxx:248 AliMUONTrackerQAChecker.cxx:249 AliMUONTrackerQAChecker.cxx:250 AliMUONTrackerQAChecker.cxx:251 AliMUONTrackerQAChecker.cxx:252 AliMUONTrackerQAChecker.cxx:253 AliMUONTrackerQAChecker.cxx:254 AliMUONTrackerQAChecker.cxx:255 AliMUONTrackerQAChecker.cxx:256 AliMUONTrackerQAChecker.cxx:257 AliMUONTrackerQAChecker.cxx:258 AliMUONTrackerQAChecker.cxx:259 AliMUONTrackerQAChecker.cxx:260 AliMUONTrackerQAChecker.cxx:261 AliMUONTrackerQAChecker.cxx:262 AliMUONTrackerQAChecker.cxx:263 AliMUONTrackerQAChecker.cxx:264 AliMUONTrackerQAChecker.cxx:265 AliMUONTrackerQAChecker.cxx:266 AliMUONTrackerQAChecker.cxx:267 AliMUONTrackerQAChecker.cxx:268 AliMUONTrackerQAChecker.cxx:269 AliMUONTrackerQAChecker.cxx:270 AliMUONTrackerQAChecker.cxx:271 AliMUONTrackerQAChecker.cxx:272 AliMUONTrackerQAChecker.cxx:273 AliMUONTrackerQAChecker.cxx:274 AliMUONTrackerQAChecker.cxx:275 AliMUONTrackerQAChecker.cxx:276 AliMUONTrackerQAChecker.cxx:277 AliMUONTrackerQAChecker.cxx:278 AliMUONTrackerQAChecker.cxx:279 AliMUONTrackerQAChecker.cxx:280 AliMUONTrackerQAChecker.cxx:281 AliMUONTrackerQAChecker.cxx:282 AliMUONTrackerQAChecker.cxx:283 AliMUONTrackerQAChecker.cxx:284 AliMUONTrackerQAChecker.cxx:285 AliMUONTrackerQAChecker.cxx:286 AliMUONTrackerQAChecker.cxx:287 AliMUONTrackerQAChecker.cxx:288 AliMUONTrackerQAChecker.cxx:289 AliMUONTrackerQAChecker.cxx:290 AliMUONTrackerQAChecker.cxx:291 AliMUONTrackerQAChecker.cxx:292 AliMUONTrackerQAChecker.cxx:293 AliMUONTrackerQAChecker.cxx:294 AliMUONTrackerQAChecker.cxx:295 AliMUONTrackerQAChecker.cxx:296 AliMUONTrackerQAChecker.cxx:297 AliMUONTrackerQAChecker.cxx:298 AliMUONTrackerQAChecker.cxx:299 AliMUONTrackerQAChecker.cxx:300 AliMUONTrackerQAChecker.cxx:301 AliMUONTrackerQAChecker.cxx:302 AliMUONTrackerQAChecker.cxx:303 AliMUONTrackerQAChecker.cxx:304 AliMUONTrackerQAChecker.cxx:305 AliMUONTrackerQAChecker.cxx:306 AliMUONTrackerQAChecker.cxx:307 AliMUONTrackerQAChecker.cxx:308 AliMUONTrackerQAChecker.cxx:309 AliMUONTrackerQAChecker.cxx:310 AliMUONTrackerQAChecker.cxx:311 AliMUONTrackerQAChecker.cxx:312 AliMUONTrackerQAChecker.cxx:313 AliMUONTrackerQAChecker.cxx:314 AliMUONTrackerQAChecker.cxx:315 AliMUONTrackerQAChecker.cxx:316 AliMUONTrackerQAChecker.cxx:317 AliMUONTrackerQAChecker.cxx:318 AliMUONTrackerQAChecker.cxx:319 AliMUONTrackerQAChecker.cxx:320 AliMUONTrackerQAChecker.cxx:321 AliMUONTrackerQAChecker.cxx:322 AliMUONTrackerQAChecker.cxx:323 AliMUONTrackerQAChecker.cxx:324 AliMUONTrackerQAChecker.cxx:325 AliMUONTrackerQAChecker.cxx:326 AliMUONTrackerQAChecker.cxx:327 AliMUONTrackerQAChecker.cxx:328 AliMUONTrackerQAChecker.cxx:329 AliMUONTrackerQAChecker.cxx:330 AliMUONTrackerQAChecker.cxx:331 AliMUONTrackerQAChecker.cxx:332 AliMUONTrackerQAChecker.cxx:333 AliMUONTrackerQAChecker.cxx:334 AliMUONTrackerQAChecker.cxx:335 AliMUONTrackerQAChecker.cxx:336 AliMUONTrackerQAChecker.cxx:337 AliMUONTrackerQAChecker.cxx:338 AliMUONTrackerQAChecker.cxx:339 AliMUONTrackerQAChecker.cxx:340 AliMUONTrackerQAChecker.cxx:341 AliMUONTrackerQAChecker.cxx:342 AliMUONTrackerQAChecker.cxx:343 AliMUONTrackerQAChecker.cxx:344 AliMUONTrackerQAChecker.cxx:345 AliMUONTrackerQAChecker.cxx:346 AliMUONTrackerQAChecker.cxx:347 AliMUONTrackerQAChecker.cxx:348 AliMUONTrackerQAChecker.cxx:349 AliMUONTrackerQAChecker.cxx:350 AliMUONTrackerQAChecker.cxx:351 AliMUONTrackerQAChecker.cxx:352 AliMUONTrackerQAChecker.cxx:353 AliMUONTrackerQAChecker.cxx:354 AliMUONTrackerQAChecker.cxx:355 AliMUONTrackerQAChecker.cxx:356 AliMUONTrackerQAChecker.cxx:357 AliMUONTrackerQAChecker.cxx:358 AliMUONTrackerQAChecker.cxx:359 AliMUONTrackerQAChecker.cxx:360 AliMUONTrackerQAChecker.cxx:361 AliMUONTrackerQAChecker.cxx:362 AliMUONTrackerQAChecker.cxx:363 AliMUONTrackerQAChecker.cxx:364 AliMUONTrackerQAChecker.cxx:365 AliMUONTrackerQAChecker.cxx:366 AliMUONTrackerQAChecker.cxx:367 AliMUONTrackerQAChecker.cxx:368 AliMUONTrackerQAChecker.cxx:369 AliMUONTrackerQAChecker.cxx:370 AliMUONTrackerQAChecker.cxx:371 AliMUONTrackerQAChecker.cxx:372 AliMUONTrackerQAChecker.cxx:373 AliMUONTrackerQAChecker.cxx:374 AliMUONTrackerQAChecker.cxx:375 AliMUONTrackerQAChecker.cxx:376 AliMUONTrackerQAChecker.cxx:377 AliMUONTrackerQAChecker.cxx:378 AliMUONTrackerQAChecker.cxx:379 AliMUONTrackerQAChecker.cxx:380 AliMUONTrackerQAChecker.cxx:381 AliMUONTrackerQAChecker.cxx:382 AliMUONTrackerQAChecker.cxx:383 AliMUONTrackerQAChecker.cxx:384 AliMUONTrackerQAChecker.cxx:385 AliMUONTrackerQAChecker.cxx:386 AliMUONTrackerQAChecker.cxx:387 AliMUONTrackerQAChecker.cxx:388 AliMUONTrackerQAChecker.cxx:389 AliMUONTrackerQAChecker.cxx:390 AliMUONTrackerQAChecker.cxx:391 AliMUONTrackerQAChecker.cxx:392 AliMUONTrackerQAChecker.cxx:393 AliMUONTrackerQAChecker.cxx:394 AliMUONTrackerQAChecker.cxx:395 AliMUONTrackerQAChecker.cxx:396 AliMUONTrackerQAChecker.cxx:397 AliMUONTrackerQAChecker.cxx:398 AliMUONTrackerQAChecker.cxx:399 AliMUONTrackerQAChecker.cxx:400 AliMUONTrackerQAChecker.cxx:401 AliMUONTrackerQAChecker.cxx:402 AliMUONTrackerQAChecker.cxx:403 AliMUONTrackerQAChecker.cxx:404 AliMUONTrackerQAChecker.cxx:405 AliMUONTrackerQAChecker.cxx:406 AliMUONTrackerQAChecker.cxx:407 AliMUONTrackerQAChecker.cxx:408 AliMUONTrackerQAChecker.cxx:409 AliMUONTrackerQAChecker.cxx:410 AliMUONTrackerQAChecker.cxx:411 AliMUONTrackerQAChecker.cxx:412 AliMUONTrackerQAChecker.cxx:413 AliMUONTrackerQAChecker.cxx:414 AliMUONTrackerQAChecker.cxx:415 AliMUONTrackerQAChecker.cxx:416 AliMUONTrackerQAChecker.cxx:417 AliMUONTrackerQAChecker.cxx:418 AliMUONTrackerQAChecker.cxx:419 AliMUONTrackerQAChecker.cxx:420 AliMUONTrackerQAChecker.cxx:421 AliMUONTrackerQAChecker.cxx:422 AliMUONTrackerQAChecker.cxx:423 AliMUONTrackerQAChecker.cxx:424 AliMUONTrackerQAChecker.cxx:425 AliMUONTrackerQAChecker.cxx:426 AliMUONTrackerQAChecker.cxx:427 AliMUONTrackerQAChecker.cxx:428 AliMUONTrackerQAChecker.cxx:429 AliMUONTrackerQAChecker.cxx:430 AliMUONTrackerQAChecker.cxx:431 AliMUONTrackerQAChecker.cxx:432 AliMUONTrackerQAChecker.cxx:433 AliMUONTrackerQAChecker.cxx:434 AliMUONTrackerQAChecker.cxx:435 AliMUONTrackerQAChecker.cxx:436 AliMUONTrackerQAChecker.cxx:437 AliMUONTrackerQAChecker.cxx:438 AliMUONTrackerQAChecker.cxx:439 AliMUONTrackerQAChecker.cxx:440 AliMUONTrackerQAChecker.cxx:441 AliMUONTrackerQAChecker.cxx:442 AliMUONTrackerQAChecker.cxx:443 AliMUONTrackerQAChecker.cxx:444 AliMUONTrackerQAChecker.cxx:445 AliMUONTrackerQAChecker.cxx:446 AliMUONTrackerQAChecker.cxx:447 AliMUONTrackerQAChecker.cxx:448 AliMUONTrackerQAChecker.cxx:449 AliMUONTrackerQAChecker.cxx:450 AliMUONTrackerQAChecker.cxx:451 AliMUONTrackerQAChecker.cxx:452 AliMUONTrackerQAChecker.cxx:453 AliMUONTrackerQAChecker.cxx:454 AliMUONTrackerQAChecker.cxx:455 AliMUONTrackerQAChecker.cxx:456 AliMUONTrackerQAChecker.cxx:457 AliMUONTrackerQAChecker.cxx:458 AliMUONTrackerQAChecker.cxx:459 AliMUONTrackerQAChecker.cxx:460 AliMUONTrackerQAChecker.cxx:461 AliMUONTrackerQAChecker.cxx:462 AliMUONTrackerQAChecker.cxx:463 AliMUONTrackerQAChecker.cxx:464 AliMUONTrackerQAChecker.cxx:465 AliMUONTrackerQAChecker.cxx:466 AliMUONTrackerQAChecker.cxx:467 AliMUONTrackerQAChecker.cxx:468 AliMUONTrackerQAChecker.cxx:469 AliMUONTrackerQAChecker.cxx:470 AliMUONTrackerQAChecker.cxx:471 AliMUONTrackerQAChecker.cxx:472 AliMUONTrackerQAChecker.cxx:473 AliMUONTrackerQAChecker.cxx:474 AliMUONTrackerQAChecker.cxx:475 AliMUONTrackerQAChecker.cxx:476 AliMUONTrackerQAChecker.cxx:477 AliMUONTrackerQAChecker.cxx:478 AliMUONTrackerQAChecker.cxx:479 AliMUONTrackerQAChecker.cxx:480 AliMUONTrackerQAChecker.cxx:481 AliMUONTrackerQAChecker.cxx:482 AliMUONTrackerQAChecker.cxx:483 AliMUONTrackerQAChecker.cxx:484 AliMUONTrackerQAChecker.cxx:485 AliMUONTrackerQAChecker.cxx:486 AliMUONTrackerQAChecker.cxx:487 AliMUONTrackerQAChecker.cxx:488 AliMUONTrackerQAChecker.cxx:489 AliMUONTrackerQAChecker.cxx:490 AliMUONTrackerQAChecker.cxx:491 AliMUONTrackerQAChecker.cxx:492 AliMUONTrackerQAChecker.cxx:493 AliMUONTrackerQAChecker.cxx:494 AliMUONTrackerQAChecker.cxx:495 AliMUONTrackerQAChecker.cxx:496 AliMUONTrackerQAChecker.cxx:497 AliMUONTrackerQAChecker.cxx:498 AliMUONTrackerQAChecker.cxx:499 AliMUONTrackerQAChecker.cxx:500 AliMUONTrackerQAChecker.cxx:501 AliMUONTrackerQAChecker.cxx:502 AliMUONTrackerQAChecker.cxx:503 AliMUONTrackerQAChecker.cxx:504 AliMUONTrackerQAChecker.cxx:505 AliMUONTrackerQAChecker.cxx:506 AliMUONTrackerQAChecker.cxx:507 AliMUONTrackerQAChecker.cxx:508 AliMUONTrackerQAChecker.cxx:509 AliMUONTrackerQAChecker.cxx:510 AliMUONTrackerQAChecker.cxx:511 AliMUONTrackerQAChecker.cxx:512 AliMUONTrackerQAChecker.cxx:513 AliMUONTrackerQAChecker.cxx:514 AliMUONTrackerQAChecker.cxx:515 AliMUONTrackerQAChecker.cxx:516 AliMUONTrackerQAChecker.cxx:517 AliMUONTrackerQAChecker.cxx:518 AliMUONTrackerQAChecker.cxx:519 AliMUONTrackerQAChecker.cxx:520 AliMUONTrackerQAChecker.cxx:521 AliMUONTrackerQAChecker.cxx:522 AliMUONTrackerQAChecker.cxx:523 AliMUONTrackerQAChecker.cxx:524 AliMUONTrackerQAChecker.cxx:525 AliMUONTrackerQAChecker.cxx:526 AliMUONTrackerQAChecker.cxx:527 AliMUONTrackerQAChecker.cxx:528 AliMUONTrackerQAChecker.cxx:529 AliMUONTrackerQAChecker.cxx:530 AliMUONTrackerQAChecker.cxx:531 AliMUONTrackerQAChecker.cxx:532 AliMUONTrackerQAChecker.cxx:533 AliMUONTrackerQAChecker.cxx:534 AliMUONTrackerQAChecker.cxx:535 AliMUONTrackerQAChecker.cxx:536 AliMUONTrackerQAChecker.cxx:537 AliMUONTrackerQAChecker.cxx:538 AliMUONTrackerQAChecker.cxx:539 AliMUONTrackerQAChecker.cxx:540 AliMUONTrackerQAChecker.cxx:541 AliMUONTrackerQAChecker.cxx:542 AliMUONTrackerQAChecker.cxx:543 AliMUONTrackerQAChecker.cxx:544 AliMUONTrackerQAChecker.cxx:545 AliMUONTrackerQAChecker.cxx:546 AliMUONTrackerQAChecker.cxx:547 AliMUONTrackerQAChecker.cxx:548 AliMUONTrackerQAChecker.cxx:549 AliMUONTrackerQAChecker.cxx:550 AliMUONTrackerQAChecker.cxx:551 AliMUONTrackerQAChecker.cxx:552 AliMUONTrackerQAChecker.cxx:553 AliMUONTrackerQAChecker.cxx:554 AliMUONTrackerQAChecker.cxx:555 AliMUONTrackerQAChecker.cxx:556 AliMUONTrackerQAChecker.cxx:557 AliMUONTrackerQAChecker.cxx:558 AliMUONTrackerQAChecker.cxx:559 AliMUONTrackerQAChecker.cxx:560 AliMUONTrackerQAChecker.cxx:561 AliMUONTrackerQAChecker.cxx:562 AliMUONTrackerQAChecker.cxx:563 AliMUONTrackerQAChecker.cxx:564 AliMUONTrackerQAChecker.cxx:565 AliMUONTrackerQAChecker.cxx:566 AliMUONTrackerQAChecker.cxx:567 AliMUONTrackerQAChecker.cxx:568 AliMUONTrackerQAChecker.cxx:569 AliMUONTrackerQAChecker.cxx:570 AliMUONTrackerQAChecker.cxx:571 AliMUONTrackerQAChecker.cxx:572 AliMUONTrackerQAChecker.cxx:573 AliMUONTrackerQAChecker.cxx:574 AliMUONTrackerQAChecker.cxx:575 AliMUONTrackerQAChecker.cxx:576 AliMUONTrackerQAChecker.cxx:577 AliMUONTrackerQAChecker.cxx:578 AliMUONTrackerQAChecker.cxx:579 AliMUONTrackerQAChecker.cxx:580 AliMUONTrackerQAChecker.cxx:581 AliMUONTrackerQAChecker.cxx:582 AliMUONTrackerQAChecker.cxx:583 AliMUONTrackerQAChecker.cxx:584 AliMUONTrackerQAChecker.cxx:585 AliMUONTrackerQAChecker.cxx:586 AliMUONTrackerQAChecker.cxx:587 AliMUONTrackerQAChecker.cxx:588 AliMUONTrackerQAChecker.cxx:589 AliMUONTrackerQAChecker.cxx:590 AliMUONTrackerQAChecker.cxx:591 AliMUONTrackerQAChecker.cxx:592 AliMUONTrackerQAChecker.cxx:593 AliMUONTrackerQAChecker.cxx:594 AliMUONTrackerQAChecker.cxx:595 AliMUONTrackerQAChecker.cxx:596 AliMUONTrackerQAChecker.cxx:597 AliMUONTrackerQAChecker.cxx:598 AliMUONTrackerQAChecker.cxx:599 AliMUONTrackerQAChecker.cxx:600 AliMUONTrackerQAChecker.cxx:601 AliMUONTrackerQAChecker.cxx:602 AliMUONTrackerQAChecker.cxx:603 AliMUONTrackerQAChecker.cxx:604 AliMUONTrackerQAChecker.cxx:605 AliMUONTrackerQAChecker.cxx:606 AliMUONTrackerQAChecker.cxx:607 AliMUONTrackerQAChecker.cxx:608 AliMUONTrackerQAChecker.cxx:609 AliMUONTrackerQAChecker.cxx:610 AliMUONTrackerQAChecker.cxx:611 AliMUONTrackerQAChecker.cxx:612 AliMUONTrackerQAChecker.cxx:613 AliMUONTrackerQAChecker.cxx:614 AliMUONTrackerQAChecker.cxx:615 AliMUONTrackerQAChecker.cxx:616 AliMUONTrackerQAChecker.cxx:617 AliMUONTrackerQAChecker.cxx:618 AliMUONTrackerQAChecker.cxx:619 AliMUONTrackerQAChecker.cxx:620 AliMUONTrackerQAChecker.cxx:621 AliMUONTrackerQAChecker.cxx:622 AliMUONTrackerQAChecker.cxx:623 AliMUONTrackerQAChecker.cxx:624 AliMUONTrackerQAChecker.cxx:625 AliMUONTrackerQAChecker.cxx:626 AliMUONTrackerQAChecker.cxx:627 AliMUONTrackerQAChecker.cxx:628 AliMUONTrackerQAChecker.cxx:629 AliMUONTrackerQAChecker.cxx:630 AliMUONTrackerQAChecker.cxx:631 AliMUONTrackerQAChecker.cxx:632 AliMUONTrackerQAChecker.cxx:633 AliMUONTrackerQAChecker.cxx:634 AliMUONTrackerQAChecker.cxx:635 AliMUONTrackerQAChecker.cxx:636 AliMUONTrackerQAChecker.cxx:637 AliMUONTrackerQAChecker.cxx:638 AliMUONTrackerQAChecker.cxx:639 AliMUONTrackerQAChecker.cxx:640 AliMUONTrackerQAChecker.cxx:641 AliMUONTrackerQAChecker.cxx:642 AliMUONTrackerQAChecker.cxx:643 AliMUONTrackerQAChecker.cxx:644 AliMUONTrackerQAChecker.cxx:645 AliMUONTrackerQAChecker.cxx:646 AliMUONTrackerQAChecker.cxx:647 AliMUONTrackerQAChecker.cxx:648 AliMUONTrackerQAChecker.cxx:649 AliMUONTrackerQAChecker.cxx:650 AliMUONTrackerQAChecker.cxx:651 AliMUONTrackerQAChecker.cxx:652 AliMUONTrackerQAChecker.cxx:653 AliMUONTrackerQAChecker.cxx:654 AliMUONTrackerQAChecker.cxx:655 AliMUONTrackerQAChecker.cxx:656 AliMUONTrackerQAChecker.cxx:657 AliMUONTrackerQAChecker.cxx:658 AliMUONTrackerQAChecker.cxx:659 AliMUONTrackerQAChecker.cxx:660 AliMUONTrackerQAChecker.cxx:661 AliMUONTrackerQAChecker.cxx:662 AliMUONTrackerQAChecker.cxx:663 AliMUONTrackerQAChecker.cxx:664 AliMUONTrackerQAChecker.cxx:665 AliMUONTrackerQAChecker.cxx:666 AliMUONTrackerQAChecker.cxx:667 AliMUONTrackerQAChecker.cxx:668 AliMUONTrackerQAChecker.cxx:669 AliMUONTrackerQAChecker.cxx:670 AliMUONTrackerQAChecker.cxx:671 AliMUONTrackerQAChecker.cxx:672 AliMUONTrackerQAChecker.cxx:673 AliMUONTrackerQAChecker.cxx:674 AliMUONTrackerQAChecker.cxx:675 AliMUONTrackerQAChecker.cxx:676 AliMUONTrackerQAChecker.cxx:677 AliMUONTrackerQAChecker.cxx:678 AliMUONTrackerQAChecker.cxx:679 AliMUONTrackerQAChecker.cxx:680 AliMUONTrackerQAChecker.cxx:681 AliMUONTrackerQAChecker.cxx:682 AliMUONTrackerQAChecker.cxx:683 AliMUONTrackerQAChecker.cxx:684 AliMUONTrackerQAChecker.cxx:685 AliMUONTrackerQAChecker.cxx:686 AliMUONTrackerQAChecker.cxx:687 AliMUONTrackerQAChecker.cxx:688 AliMUONTrackerQAChecker.cxx:689 AliMUONTrackerQAChecker.cxx:690 AliMUONTrackerQAChecker.cxx:691 AliMUONTrackerQAChecker.cxx:692 AliMUONTrackerQAChecker.cxx:693 AliMUONTrackerQAChecker.cxx:694 AliMUONTrackerQAChecker.cxx:695 AliMUONTrackerQAChecker.cxx:696 AliMUONTrackerQAChecker.cxx:697 AliMUONTrackerQAChecker.cxx:698 AliMUONTrackerQAChecker.cxx:699 AliMUONTrackerQAChecker.cxx:700 AliMUONTrackerQAChecker.cxx:701 AliMUONTrackerQAChecker.cxx:702 AliMUONTrackerQAChecker.cxx:703 AliMUONTrackerQAChecker.cxx:704 AliMUONTrackerQAChecker.cxx:705 AliMUONTrackerQAChecker.cxx:706 AliMUONTrackerQAChecker.cxx:707 AliMUONTrackerQAChecker.cxx:708 AliMUONTrackerQAChecker.cxx:709 AliMUONTrackerQAChecker.cxx:710 AliMUONTrackerQAChecker.cxx:711 AliMUONTrackerQAChecker.cxx:712 AliMUONTrackerQAChecker.cxx:713 AliMUONTrackerQAChecker.cxx:714 AliMUONTrackerQAChecker.cxx:715 AliMUONTrackerQAChecker.cxx:716 AliMUONTrackerQAChecker.cxx:717 AliMUONTrackerQAChecker.cxx:718 AliMUONTrackerQAChecker.cxx:719 AliMUONTrackerQAChecker.cxx:720 AliMUONTrackerQAChecker.cxx:721 AliMUONTrackerQAChecker.cxx:722 AliMUONTrackerQAChecker.cxx:723 AliMUONTrackerQAChecker.cxx:724 AliMUONTrackerQAChecker.cxx:725 AliMUONTrackerQAChecker.cxx:726