#include <TClonesArray.h>
#include <TFile.h>
#include <TH1D.h>
#include <TH2D.h>
#include <TH3D.h>
#include <TProfile.h>
#include <TF1.h>
#include <TCanvas.h>
#include "AliESDEvent.h"
#include "AliLog.h"
#include "AliTRDcluster.h"
#include "AliTRDqaRecPoints.h"
#include "AliTRDgeometry.h"
#include "AliQAChecker.h"
ClassImp(AliTRDqaRecPoints)
AliTRDqaRecPoints::AliTRDqaRecPoints() :
TObject(),
fnEvents(0),
fHist(0),
fnPad(0),
fRef(0)
{
for (Int_t i = 0; i < 540; i++) {
fRefHist[i] = 0x0;
}
}
AliTRDqaRecPoints::AliTRDqaRecPoints(const AliTRDqaRecPoints &) :
TObject(),
fnEvents(0),
fHist(0),
fnPad(0),
fRef(0)
{
for (Int_t i = 0; i < 540; i++) {
fRefHist[i] = 0x0;
}
}
void AliTRDqaRecPoints::Process(const char* filename)
{
AliInfo("End of TRD cycle");
TH1D *hist = new TH1D("fitHist", "", 200, -0.5, 199.5);
for(int i=0; i<540; i++) {
Double_t v = ((TH1D*)fHist->At(0))->GetBinContent(i+1);
Int_t sm = i/30;
Int_t det = i%30;
TH2D *detMap = (TH2D*)fHist->At(87);
Int_t bin = detMap->FindBin(sm, det);
detMap->SetBinContent(bin, v);
}
for (Int_t i=0; i<540; i++) {
hist->Reset();
for(Int_t b=1; b<hist->GetXaxis()->GetNbins()-1; b++) {
Double_t xvalue = hist->GetBinCenter(b);
Int_t bin = ((TH2D*)fHist->At(1))->FindBin(i,xvalue);
Double_t value = ((TH2D*)fHist->At(1))->GetBinContent(bin);
hist->SetBinContent(b, value);
}
if (hist->GetSum() < 100) continue;
hist->Fit("landau", "q0", "goff", 10, 180);
TF1 *fit = hist->GetFunction("landau");
((TH1D*)fHist->At(12))->Fill(fit->GetParameter(1));
((TH1D*)fHist->At(13))->Fill(fit->GetParameter(2));
}
for(Int_t i=0; i<18; i++) {
for(Int_t j=0; j<35; j++) {
hist->Reset();
for(Int_t b=1; b<hist->GetXaxis()->GetNbins()-1; b++) {
Double_t xvalue = hist->GetBinCenter(b);
Double_t svalue = 0;
for(Int_t det=i*30; det<(i+1)*30; det++) {
Int_t bin = ((TH3D*)fHist->At(10))->FindBin(det,j,xvalue);
Double_t value = ((TH3D*)fHist->At(10))->GetBinContent(bin);
svalue += value;
}
hist->SetBinContent(b, svalue);
}
if (hist->GetSum() < 100) continue;
hist->Fit("landau", "q0", "goff", 10, 180);
TF1 *fit = hist->GetFunction("landau");
TH1D *h1 = (TH1D*)fHist->At(14+18+i);
Int_t bin = h1->FindBin(j);
h1->SetBinContent(bin, TMath::Abs(fit->GetParameter(1)));
}
}
for (Int_t i=0; i<540; i++) {
for(Int_t j=0; j<35; j++) {
hist->Reset();
for(Int_t b=1; b<hist->GetXaxis()->GetNbins()-1; b++) {
Double_t xvalue = hist->GetBinCenter(b);
Int_t bin = ((TH3D*)fHist->At(10))->FindBin(i,j,xvalue);
Double_t value = ((TH3D*)fHist->At(10))->GetBinContent(bin);
hist->SetBinContent(b, value);
}
if (hist->GetSum() < 100) continue;
hist->Fit("landau", "q0", "goff", 10, 180);
TF1 *fit = hist->GetFunction("landau");
Int_t sm = i/30;
Int_t det = i%30;
TH2D *h2 = (TH2D*)fHist->At(14+sm);
Int_t bin = h2->FindBin(det,j);
h2->SetBinContent(bin, TMath::Abs(fit->GetParameter(1)));
h2->SetBinError(bin,fit->GetParError(1));
}
}
if (hist) delete hist;
TFile *outFile = new TFile(filename, "RECREATE");
outFile->mkdir("TRD");
gDirectory->cd("TRD");
gDirectory->mkdir("RecPoints");
gDirectory->cd("RecPoints");
fHist->Write();
if (fRef) {
for(Int_t i=0; i<540; i++) {
fRefHist[i]->Write();
}
}
outFile->Close();
}
void AliTRDqaRecPoints::Init()
{
const Int_t kNhist = 88+2*18+1;
TH1 *hist[kNhist];
hist[0] = new TH1D("qaTRD_recPoints_det", ";Detector ID of the cluster", 540, -0.5, 539.5);
hist[1] = new TH2D("qaTRD_recPoints_amp", ";Amplitude", 540, -0.5, 539, 200, -0.5, 199.5);
hist[2] = new TH1D("qaTRD_recPoints_npad", ";Number of Pads", 12, -0.5, 11.5);
hist[3] = new TH1D("qaTRD_recPoints_dist2", ";residuals [2pad]", 100, -1, 1);
hist[4] = new TH1D("qaTRD_recPoints_dist3", ";residuals [3pad]", 100, -1, 1);
hist[5] = new TH1D("qaTRD_recPoints_dist4", ";residuals [4pad]", 100, -1, 1);
hist[6] = new TH1D("qaTRD_recPoints_dist5", ";residuals [5pad]", 100, -1, 1);
hist[7] = new TH2D("qaTRD_recPoints_rowCol", ";row;col", 16, -0.5, 15.5, 145, -0.5, 144.5);
hist[8] = new TH1D("qaTRD_recPoints_time", ";time bin", 35, -0.5, 34.5);
hist[9] = new TH1D("qaTRD_recPoints_nCls", ";number of clusters", 500, -0.5, 499.5);
hist[10] = new TH3D("qaTRD_recPoints_sigTime", ";chamber;time bin;signal",
540, -0.5, 539.5, 35, -0.5, 34.5, 200, -0.5, 199.5);
hist[11] = new TProfile("qaTRD_recPoints_prf", ";distance;center of gravity"
, 120, -0.6, 0.6, -1.2, 1.2, "");
hist[12] = new TH1D("qaTRD_recPoints_ampMPV", ";amplitude MPV", 150, 0, 150);
hist[13] = new TH1D("qaTRD_recPoints_ampSigma", ";amplitude Sigma", 200, 0, 200);
for(Int_t i=0; i<18; i++) {
hist[14+i] = new TH2D(Form("qaTRD_recPoints_sigTime_sm%d",i), Form("sm%d;det;time bin",i),
30, -0.5, 29.5, 35, -0.5, 34.5);
hist[14+i]->SetMinimum(20);
hist[14+i]->SetMaximum(40);
}
for(Int_t i=0; i<18; i++) {
hist[14+18+i] = new TH1D(Form("qaTRD_recPoints_sigTimeShape_sm%d", i),
Form("sm%d;time bin;signal",i),
35, -0.5, 34.5);
hist[14+18+i]->SetMaximum(120);
}
for(Int_t i=0; i<18; i++) {
hist[50+i] = new TH1D(Form("qaTRD_recPoints_nCls_sm%d",i),
Form("sm%d;time bin;number of clusters",i),
35, -0.5, 34.5);
}
for(Int_t i=0; i<18; i++) {
hist[68+i] = new TH1D(Form("qaTRD_recPoints_totalCharge_sm%d", i),
Form("sm%d;time bin;total charge", i),
35, -0.5, 34.5);
}
hist[86] = new TH1D("qaTRD_recPoints_signal", ";amplitude", 200, -0.5, 199.5);
hist[87] = new TH2D("qaTRD_recPoints_detMap", ";sm;chamber", 18, -0.5, 17.5, 30, -0.5, 29.5);
for(Int_t i=0; i<18; i++)
hist[88+i] = new TH2D(Form("qaTRD_recPoints_XY_sm%d", i),
Form("SM%d;Y;X",i), 240, -60, 60, 200, 290, 370);
for(Int_t i=0; i<18; i++)
hist[106+i] = new TH2D(Form("qaTRD_recPoints_XPad_sm%d", i),
Form("SM%d;Y;X",i), 144, -0.5, 143.5, 200, 290, 370);
hist[124] = new TH1D("qRef", "ref", 100, 0, 1e4);
fHist = new TObjArray(200);
for(Int_t i=0; i<kNhist; i++) {
fHist->AddAt(hist[i], i);
}
if (fRef) {
for(Int_t i=0; i<540; i++) {
fRefHist[i] = new TH2D(Form("refRecPoints_sm%d", i), "",
16, -0.5, 15.5, 144, -0.5, 143.5);
}
} else {
TFile *refFile = new TFile("outRef.root");
refFile->cd("TRD/RecPoints");
for(Int_t i=0; i<540; i++) {
fRefHist[i] = (TH2D*)gDirectory->Get(Form("refRecPoints_sm%d", i));
}
}
}
void AliTRDqaRecPoints::AddEvent(TTree * clustersTree)
{
Int_t nsize = Int_t(clustersTree->GetTotBytes() / (sizeof(AliTRDcluster)));
TObjArray *clusterArray = new TObjArray(nsize+1000);
TBranch *branch = clustersTree->GetBranch("TRDcluster");
if (!branch) {
AliError("Can't get the branch !");
return;
}
branch->SetAddress(&clusterArray);
Int_t nEntries = (Int_t) clustersTree->GetEntries();
Int_t nbytes = 0;
AliTRDcluster *c = 0;
Int_t nDet[540];
for (Int_t i=0; i<540; i++) nDet[i] = 0;
for (Int_t iEntry = 0; iEntry < nEntries; iEntry++) {
nbytes += clustersTree->GetEvent(iEntry);
Int_t nCluster = clusterArray->GetEntriesFast();
for (Int_t iCluster = 0; iCluster < nCluster; iCluster++) {
c = (AliTRDcluster *) clusterArray->UncheckedAt(iCluster);
Int_t iDet = c->GetDetector();
if (iDet < 0 || iDet > 539) continue;
Int_t iSM = iDet / 30;
Int_t nPad = c->GetNPads();
if (fnPad && nPad != fnPad) continue;
Int_t padRow = c->GetPadRow();
Int_t padCol = c->GetPadCol();
Double_t refQ = 0;
if (fRef) {
fRefHist[iDet]->Fill(padRow, padCol, c->GetQ());
} else {
Int_t bin = fRefHist[iDet]->FindBin(padRow, padCol);
refQ = fRefHist[iDet]->GetBinContent(bin);
}
((TH1D*)fHist->At(124))->Fill(refQ);
Double_t charge = c->GetQ() - (refQ / (490. * 30));
if (charge < 0) continue;
if (charge > 20) {
((TH2D*)fHist->At(88+iSM))->Fill(c->GetY(), c->GetX());
((TH2D*)fHist->At(106+iSM))->Fill(c->GetPadCol(), c->GetX());
}
nDet[iDet]++;
((TH1D*)fHist->At(0))->Fill(iDet);
((TH1D*)fHist->At(86))->Fill(charge);
((TH1D*)fHist->At(1))->Fill(iDet, charge);
((TH1D*)fHist->At(2))->Fill(c->GetNPads());
if (c->GetNPads() < 6)
((TH1D*)fHist->At(1+c->GetNPads()))->Fill(c->GetCenter());
((TH2D*)fHist->At(7))->Fill(padRow, c->GetPadCol());
((TH1D*)fHist->At(8))->Fill(c->GetPadTime());
((TH3D*)fHist->At(10))->Fill(iDet, c->GetPadTime(), charge);
((TH1D*)fHist->At(50+iSM))->Fill(c->GetPadTime());
((TH1D*)fHist->At(68+iSM))->Fill(c->GetPadTime(), charge);
Short_t *sig = c->GetSignals();
Double_t frac = -10;
if (sig[0] == 0 && sig[1] == 0 && sig[2] == 0 && sig[5] == 0 && sig[6] == 0)
frac = 1. * sig[4] / (sig[3] + sig[4]);
if (sig[0] == 0 && sig[1] == 0 && sig[4] == 0 && sig[5] == 0 && sig[6] == 0)
frac = -1. * sig[2] / (sig[2] + sig[3]);
if (frac > -10) ((TProfile*)fHist->At(11))->Fill(c->GetCenter(), frac);
}
}
for(Int_t i=0; i<540; i++)
if (nDet[i] > 0) ((TH1D*)fHist->At(9))->Fill(nDet[i]);
delete clusterArray;
}
AliTRDqaRecPoints.cxx:100 AliTRDqaRecPoints.cxx:101 AliTRDqaRecPoints.cxx:102 AliTRDqaRecPoints.cxx:103 AliTRDqaRecPoints.cxx:104 AliTRDqaRecPoints.cxx:105 AliTRDqaRecPoints.cxx:106 AliTRDqaRecPoints.cxx:107 AliTRDqaRecPoints.cxx:108 AliTRDqaRecPoints.cxx:109 AliTRDqaRecPoints.cxx:110 AliTRDqaRecPoints.cxx:111 AliTRDqaRecPoints.cxx:112 AliTRDqaRecPoints.cxx:113 AliTRDqaRecPoints.cxx:114 AliTRDqaRecPoints.cxx:115 AliTRDqaRecPoints.cxx:116 AliTRDqaRecPoints.cxx:117 AliTRDqaRecPoints.cxx:118 AliTRDqaRecPoints.cxx:119 AliTRDqaRecPoints.cxx:120 AliTRDqaRecPoints.cxx:121 AliTRDqaRecPoints.cxx:122 AliTRDqaRecPoints.cxx:123 AliTRDqaRecPoints.cxx:124 AliTRDqaRecPoints.cxx:125 AliTRDqaRecPoints.cxx:126 AliTRDqaRecPoints.cxx:127 AliTRDqaRecPoints.cxx:128 AliTRDqaRecPoints.cxx:129 AliTRDqaRecPoints.cxx:130 AliTRDqaRecPoints.cxx:131 AliTRDqaRecPoints.cxx:132 AliTRDqaRecPoints.cxx:133 AliTRDqaRecPoints.cxx:134 AliTRDqaRecPoints.cxx:135 AliTRDqaRecPoints.cxx:136 AliTRDqaRecPoints.cxx:137 AliTRDqaRecPoints.cxx:138 AliTRDqaRecPoints.cxx:139 AliTRDqaRecPoints.cxx:140 AliTRDqaRecPoints.cxx:141 AliTRDqaRecPoints.cxx:142 AliTRDqaRecPoints.cxx:143 AliTRDqaRecPoints.cxx:144 AliTRDqaRecPoints.cxx:145 AliTRDqaRecPoints.cxx:146 AliTRDqaRecPoints.cxx:147 AliTRDqaRecPoints.cxx:148 AliTRDqaRecPoints.cxx:149 AliTRDqaRecPoints.cxx:150 AliTRDqaRecPoints.cxx:151 AliTRDqaRecPoints.cxx:152 AliTRDqaRecPoints.cxx:153 AliTRDqaRecPoints.cxx:154 AliTRDqaRecPoints.cxx:155 AliTRDqaRecPoints.cxx:156 AliTRDqaRecPoints.cxx:157 AliTRDqaRecPoints.cxx:158 AliTRDqaRecPoints.cxx:159 AliTRDqaRecPoints.cxx:160 AliTRDqaRecPoints.cxx:161 AliTRDqaRecPoints.cxx:162 AliTRDqaRecPoints.cxx:163 AliTRDqaRecPoints.cxx:164 AliTRDqaRecPoints.cxx:165 AliTRDqaRecPoints.cxx:166 AliTRDqaRecPoints.cxx:167 AliTRDqaRecPoints.cxx:168 AliTRDqaRecPoints.cxx:169 AliTRDqaRecPoints.cxx:170 AliTRDqaRecPoints.cxx:171 AliTRDqaRecPoints.cxx:172 AliTRDqaRecPoints.cxx:173 AliTRDqaRecPoints.cxx:174 AliTRDqaRecPoints.cxx:175 AliTRDqaRecPoints.cxx:176 AliTRDqaRecPoints.cxx:177 AliTRDqaRecPoints.cxx:178 AliTRDqaRecPoints.cxx:179 AliTRDqaRecPoints.cxx:180 AliTRDqaRecPoints.cxx:181 AliTRDqaRecPoints.cxx:182 AliTRDqaRecPoints.cxx:183 AliTRDqaRecPoints.cxx:184 AliTRDqaRecPoints.cxx:185 AliTRDqaRecPoints.cxx:186 AliTRDqaRecPoints.cxx:187 AliTRDqaRecPoints.cxx:188 AliTRDqaRecPoints.cxx:189 AliTRDqaRecPoints.cxx:190 AliTRDqaRecPoints.cxx:191 AliTRDqaRecPoints.cxx:192 AliTRDqaRecPoints.cxx:193 AliTRDqaRecPoints.cxx:194 AliTRDqaRecPoints.cxx:195 AliTRDqaRecPoints.cxx:196 AliTRDqaRecPoints.cxx:197 AliTRDqaRecPoints.cxx:198 AliTRDqaRecPoints.cxx:199 AliTRDqaRecPoints.cxx:200 AliTRDqaRecPoints.cxx:201 AliTRDqaRecPoints.cxx:202 AliTRDqaRecPoints.cxx:203 AliTRDqaRecPoints.cxx:204 AliTRDqaRecPoints.cxx:205 AliTRDqaRecPoints.cxx:206 AliTRDqaRecPoints.cxx:207 AliTRDqaRecPoints.cxx:208 AliTRDqaRecPoints.cxx:209 AliTRDqaRecPoints.cxx:210 AliTRDqaRecPoints.cxx:211 AliTRDqaRecPoints.cxx:212 AliTRDqaRecPoints.cxx:213 AliTRDqaRecPoints.cxx:214 AliTRDqaRecPoints.cxx:215 AliTRDqaRecPoints.cxx:216 AliTRDqaRecPoints.cxx:217 AliTRDqaRecPoints.cxx:218 AliTRDqaRecPoints.cxx:219 AliTRDqaRecPoints.cxx:220 AliTRDqaRecPoints.cxx:221 AliTRDqaRecPoints.cxx:222 AliTRDqaRecPoints.cxx:223 AliTRDqaRecPoints.cxx:224 AliTRDqaRecPoints.cxx:225 AliTRDqaRecPoints.cxx:226 AliTRDqaRecPoints.cxx:227 AliTRDqaRecPoints.cxx:228 AliTRDqaRecPoints.cxx:229 AliTRDqaRecPoints.cxx:230 AliTRDqaRecPoints.cxx:231 AliTRDqaRecPoints.cxx:232 AliTRDqaRecPoints.cxx:233 AliTRDqaRecPoints.cxx:234 AliTRDqaRecPoints.cxx:235 AliTRDqaRecPoints.cxx:236 AliTRDqaRecPoints.cxx:237 AliTRDqaRecPoints.cxx:238 AliTRDqaRecPoints.cxx:239 AliTRDqaRecPoints.cxx:240 AliTRDqaRecPoints.cxx:241 AliTRDqaRecPoints.cxx:242 AliTRDqaRecPoints.cxx:243 AliTRDqaRecPoints.cxx:244 AliTRDqaRecPoints.cxx:245 AliTRDqaRecPoints.cxx:246 AliTRDqaRecPoints.cxx:247 AliTRDqaRecPoints.cxx:248 AliTRDqaRecPoints.cxx:249 AliTRDqaRecPoints.cxx:250 AliTRDqaRecPoints.cxx:251 AliTRDqaRecPoints.cxx:252 AliTRDqaRecPoints.cxx:253 AliTRDqaRecPoints.cxx:254 AliTRDqaRecPoints.cxx:255 AliTRDqaRecPoints.cxx:256 AliTRDqaRecPoints.cxx:257 AliTRDqaRecPoints.cxx:258 AliTRDqaRecPoints.cxx:259 AliTRDqaRecPoints.cxx:260 AliTRDqaRecPoints.cxx:261 AliTRDqaRecPoints.cxx:262 AliTRDqaRecPoints.cxx:263 AliTRDqaRecPoints.cxx:264 AliTRDqaRecPoints.cxx:265 AliTRDqaRecPoints.cxx:266 AliTRDqaRecPoints.cxx:267 AliTRDqaRecPoints.cxx:268 AliTRDqaRecPoints.cxx:269 AliTRDqaRecPoints.cxx:270 AliTRDqaRecPoints.cxx:271 AliTRDqaRecPoints.cxx:272 AliTRDqaRecPoints.cxx:273 AliTRDqaRecPoints.cxx:274 AliTRDqaRecPoints.cxx:275 AliTRDqaRecPoints.cxx:276 AliTRDqaRecPoints.cxx:277 AliTRDqaRecPoints.cxx:278 AliTRDqaRecPoints.cxx:279 AliTRDqaRecPoints.cxx:280 AliTRDqaRecPoints.cxx:281 AliTRDqaRecPoints.cxx:282 AliTRDqaRecPoints.cxx:283 AliTRDqaRecPoints.cxx:284 AliTRDqaRecPoints.cxx:285 AliTRDqaRecPoints.cxx:286 AliTRDqaRecPoints.cxx:287 AliTRDqaRecPoints.cxx:288 AliTRDqaRecPoints.cxx:289 AliTRDqaRecPoints.cxx:290 AliTRDqaRecPoints.cxx:291 AliTRDqaRecPoints.cxx:292 AliTRDqaRecPoints.cxx:293 AliTRDqaRecPoints.cxx:294 AliTRDqaRecPoints.cxx:295 AliTRDqaRecPoints.cxx:296 AliTRDqaRecPoints.cxx:297 AliTRDqaRecPoints.cxx:298 AliTRDqaRecPoints.cxx:299 AliTRDqaRecPoints.cxx:300 AliTRDqaRecPoints.cxx:301 AliTRDqaRecPoints.cxx:302 AliTRDqaRecPoints.cxx:303 AliTRDqaRecPoints.cxx:304 AliTRDqaRecPoints.cxx:305 AliTRDqaRecPoints.cxx:306 AliTRDqaRecPoints.cxx:307 AliTRDqaRecPoints.cxx:308 AliTRDqaRecPoints.cxx:309 AliTRDqaRecPoints.cxx:310 AliTRDqaRecPoints.cxx:311 AliTRDqaRecPoints.cxx:312 AliTRDqaRecPoints.cxx:313 AliTRDqaRecPoints.cxx:314 AliTRDqaRecPoints.cxx:315 AliTRDqaRecPoints.cxx:316 AliTRDqaRecPoints.cxx:317 AliTRDqaRecPoints.cxx:318 AliTRDqaRecPoints.cxx:319 AliTRDqaRecPoints.cxx:320 AliTRDqaRecPoints.cxx:321 AliTRDqaRecPoints.cxx:322 AliTRDqaRecPoints.cxx:323 AliTRDqaRecPoints.cxx:324 AliTRDqaRecPoints.cxx:325 AliTRDqaRecPoints.cxx:326 AliTRDqaRecPoints.cxx:327 AliTRDqaRecPoints.cxx:328 AliTRDqaRecPoints.cxx:329 AliTRDqaRecPoints.cxx:330 AliTRDqaRecPoints.cxx:331 AliTRDqaRecPoints.cxx:332 AliTRDqaRecPoints.cxx:333 AliTRDqaRecPoints.cxx:334 AliTRDqaRecPoints.cxx:335 AliTRDqaRecPoints.cxx:336 AliTRDqaRecPoints.cxx:337 AliTRDqaRecPoints.cxx:338 AliTRDqaRecPoints.cxx:339 AliTRDqaRecPoints.cxx:340 AliTRDqaRecPoints.cxx:341 AliTRDqaRecPoints.cxx:342 AliTRDqaRecPoints.cxx:343 AliTRDqaRecPoints.cxx:344 AliTRDqaRecPoints.cxx:345 AliTRDqaRecPoints.cxx:346 AliTRDqaRecPoints.cxx:347 AliTRDqaRecPoints.cxx:348 AliTRDqaRecPoints.cxx:349 AliTRDqaRecPoints.cxx:350 AliTRDqaRecPoints.cxx:351 AliTRDqaRecPoints.cxx:352 AliTRDqaRecPoints.cxx:353 AliTRDqaRecPoints.cxx:354 AliTRDqaRecPoints.cxx:355 AliTRDqaRecPoints.cxx:356 AliTRDqaRecPoints.cxx:357 AliTRDqaRecPoints.cxx:358 AliTRDqaRecPoints.cxx:359 AliTRDqaRecPoints.cxx:360 AliTRDqaRecPoints.cxx:361 AliTRDqaRecPoints.cxx:362 AliTRDqaRecPoints.cxx:363 AliTRDqaRecPoints.cxx:364 AliTRDqaRecPoints.cxx:365 AliTRDqaRecPoints.cxx:366 AliTRDqaRecPoints.cxx:367 AliTRDqaRecPoints.cxx:368 AliTRDqaRecPoints.cxx:369 AliTRDqaRecPoints.cxx:370 AliTRDqaRecPoints.cxx:371 AliTRDqaRecPoints.cxx:372 AliTRDqaRecPoints.cxx:373 AliTRDqaRecPoints.cxx:374 AliTRDqaRecPoints.cxx:375 AliTRDqaRecPoints.cxx:376 AliTRDqaRecPoints.cxx:377 AliTRDqaRecPoints.cxx:378 AliTRDqaRecPoints.cxx:379 AliTRDqaRecPoints.cxx:380 AliTRDqaRecPoints.cxx:381 AliTRDqaRecPoints.cxx:382 AliTRDqaRecPoints.cxx:383 AliTRDqaRecPoints.cxx:384 AliTRDqaRecPoints.cxx:385 AliTRDqaRecPoints.cxx:386 AliTRDqaRecPoints.cxx:387 AliTRDqaRecPoints.cxx:388 AliTRDqaRecPoints.cxx:389 AliTRDqaRecPoints.cxx:390 AliTRDqaRecPoints.cxx:391 AliTRDqaRecPoints.cxx:392 AliTRDqaRecPoints.cxx:393 AliTRDqaRecPoints.cxx:394 AliTRDqaRecPoints.cxx:395 AliTRDqaRecPoints.cxx:396 AliTRDqaRecPoints.cxx:397 AliTRDqaRecPoints.cxx:398 AliTRDqaRecPoints.cxx:399 AliTRDqaRecPoints.cxx:400 AliTRDqaRecPoints.cxx:401 AliTRDqaRecPoints.cxx:402 AliTRDqaRecPoints.cxx:403 AliTRDqaRecPoints.cxx:404 AliTRDqaRecPoints.cxx:405 AliTRDqaRecPoints.cxx:406 AliTRDqaRecPoints.cxx:407 AliTRDqaRecPoints.cxx:408 AliTRDqaRecPoints.cxx:409 AliTRDqaRecPoints.cxx:410 AliTRDqaRecPoints.cxx:411 AliTRDqaRecPoints.cxx:412 AliTRDqaRecPoints.cxx:413 AliTRDqaRecPoints.cxx:414 AliTRDqaRecPoints.cxx:415 AliTRDqaRecPoints.cxx:416 AliTRDqaRecPoints.cxx:417 AliTRDqaRecPoints.cxx:418 AliTRDqaRecPoints.cxx:419 AliTRDqaRecPoints.cxx:420 AliTRDqaRecPoints.cxx:421 AliTRDqaRecPoints.cxx:422 AliTRDqaRecPoints.cxx:423 AliTRDqaRecPoints.cxx:424 AliTRDqaRecPoints.cxx:425 AliTRDqaRecPoints.cxx:426 AliTRDqaRecPoints.cxx:427 AliTRDqaRecPoints.cxx:428 AliTRDqaRecPoints.cxx:429 AliTRDqaRecPoints.cxx:430 AliTRDqaRecPoints.cxx:431 AliTRDqaRecPoints.cxx:432 AliTRDqaRecPoints.cxx:433 AliTRDqaRecPoints.cxx:434 AliTRDqaRecPoints.cxx:435 AliTRDqaRecPoints.cxx:436 AliTRDqaRecPoints.cxx:437 AliTRDqaRecPoints.cxx:438 AliTRDqaRecPoints.cxx:439 AliTRDqaRecPoints.cxx:440 AliTRDqaRecPoints.cxx:441 AliTRDqaRecPoints.cxx:442 AliTRDqaRecPoints.cxx:443 AliTRDqaRecPoints.cxx:444 AliTRDqaRecPoints.cxx:445 AliTRDqaRecPoints.cxx:446 AliTRDqaRecPoints.cxx:447 AliTRDqaRecPoints.cxx:448 AliTRDqaRecPoints.cxx:449 AliTRDqaRecPoints.cxx:450 AliTRDqaRecPoints.cxx:451 AliTRDqaRecPoints.cxx:452 AliTRDqaRecPoints.cxx:453 AliTRDqaRecPoints.cxx:454 AliTRDqaRecPoints.cxx:455 AliTRDqaRecPoints.cxx:456 AliTRDqaRecPoints.cxx:457 AliTRDqaRecPoints.cxx:458 AliTRDqaRecPoints.cxx:459 AliTRDqaRecPoints.cxx:460 AliTRDqaRecPoints.cxx:461