#include "TH1.h"
#include "TString.h"
#include "TCanvas.h"
#include "TStyle.h"
#include "TPad.h"
#include "AliITSQASSDChecker.h"
#include "AliITSQADataMakerRec.h"
#include "AliLog.h"
ClassImp(AliITSQASSDChecker)
AliITSQASSDChecker& AliITSQASSDChecker::operator = (const AliITSQASSDChecker& qac )
{
this->~AliITSQASSDChecker();
new(this) AliITSQASSDChecker(qac);
return *this;
}
void AliITSQASSDChecker::CheckRaws(TH1* histo) {
Double_t minSSDDataSize = 0;
Double_t maxSSDDataSize = 200;
Double_t minDDLDataSize = 0;
Double_t maxDDLDataSize = 50;
Double_t minLDCDataSize = 0;
Double_t maxLDCDataSize = 100;
Double_t minMeanDDLDataSize = 0;
Double_t maxMeanDDLDataSize = 50;
Double_t minMeanLDCDataSize = 0;
Double_t maxMeanLDCDataSize = 100;
TString histname = histo->GetName();
if (histname.EndsWith("SSDEventType")) {
if (histo->GetEntries()==0) {
AliWarning("Event type histogram is empty");
}
else if (histo->GetBinContent(histo->FindBin(7))==0) AliWarning("No type 7 (physics) events in EventType");
}
if (histname.EndsWith("SSDDataSize")) {
if (histo->GetEntries()==0) AliWarning("SSD data size histogram is empty");
if (histo->GetMean()>maxSSDDataSize||histo->GetMean()<minSSDDataSize) AliWarning(Form("SSD mean data size is %-.2g kB", histo->GetMean()));
}
if (histname.EndsWith("SSDDataSizePerDDL")) {
if (histo->GetEntries()==0) {
AliWarning("Data size per DDL histogram is empty");
}
else {
for(Int_t i = 512; i < 528; i++) {
if(histo->GetBinContent(histo->FindBin(i))==0) {
AliWarning(Form("Data size / DDL histogram: bin for DDL %i is empty",i));
}
else if(histo->GetBinContent(histo->FindBin(i))<minDDLDataSize||histo->GetBinContent(histo->FindBin(i))>maxDDLDataSize) AliWarning(Form("Data size DDL %i is %-.2g kB",i,histo->GetBinContent(histo->FindBin(i))));
}
}
}
if (histname.EndsWith("SSDDataSizePerLDC")) {
if (histo->GetEntries()==0) {
AliWarning("Data size per LDC histogram is empty");
}
else {
AliInfo(Form("Data size per LDC histogram has %f entries",histo->GetEntries()));
for(Int_t i = 170; i < 178; i++) {
if(histo->GetBinContent(histo->FindBin(i))==0) {
AliWarning(Form("Data size / LDC histogram: bin for LDC %i is empty",i));
}
else if(AliITSQADataMakerRec::AreEqual(histo->GetBinContent(histo->FindBin(i)),minLDCDataSize) ||histo->GetBinContent(histo->FindBin(i))>maxLDCDataSize) AliWarning(Form("Data size LDC %i is %-.2g kB",i,histo->GetBinContent(i)));
}
}
}
if (histname.EndsWith("SSDLDCId")) {
if (histo->GetEntries()==0) {
AliWarning("LDC ID histogram is empty");
}
else {
for(Int_t i = 170; i < 177; i++) {
if(histo->GetBinContent(histo->FindBin(i))==0) {
AliWarning(Form("LDC ID histogram: No entries for LDC %i",i));
}
else if(histo->GetBinContent(histo->FindBin(i))!=histo->GetBinContent(histo->FindBin(i+1))) {
AliWarning("LDC Id distribution is not uniform");
i=176;
}
}
}
}
if (histname.EndsWith("SSDDDLId")) {
if (histo->GetEntries()==0) {
AliWarning("DDL ID histogram is empty");
}
else {
for(Int_t i = 512; i < 527; i++) {
if(histo->GetBinContent(histo->FindBin(i))==0) {
AliWarning(Form("DDL ID histogram: No entries for DDL %i",i));
}
else if(histo->GetBinContent(histo->FindBin(i))!=histo->GetBinContent(histo->FindBin(i+1))) {
AliWarning("DDL Id distribution is not uniform");
i=526;
}
}
}
}
if (histname.Contains("SSDDataSizeLDC")) {
if (histo->GetEntries()==0) {
AliWarning(Form("LDC %s data size distribution is empty", histname(histname.Length()-3,3).Data()));
}
else if (histo->GetMean()<minMeanLDCDataSize||histo->GetMean()>maxMeanLDCDataSize) AliWarning(Form("Mean data size of LDC %s is %-.2g kB",histname(histname.Length()-3,3).Data(), histo->GetMean()));
}
if (histname.Contains("SSDDataSizeDDL")) {
if (histo->GetEntries()==0) {
AliWarning(Form("DDL %s data size distribution is empty", histname(histname.Length()-3,3).Data()));
}
else if (histo->GetMean()<minMeanDDLDataSize||histo->GetMean()>maxMeanDDLDataSize) AliWarning(Form("Mean data size of DDL %s is %-.2g kB",histname(histname.Length()-3,3).Data(), histo->GetMean()));
}
}
Bool_t AliITSQASSDChecker::MakeSSDImage( TObjArray ** list, AliQAv1::TASKINDEX_t task, AliQAv1::MODE_t mode) {
gStyle->SetPalette(1,0);
Bool_t rval=kFALSE;
fImage=(TCanvas**)AliQAChecker::Instance()->GetDetQAChecker(0)->GetImage();
if(task == AliQAv1::kRAWS)
rval = MakeSSDRawsImage(list, task,mode);
else rval=kFALSE;
return rval;
}
Bool_t AliITSQASSDChecker::MakeSSDRawsImage(TObjArray ** list, AliQAv1::TASKINDEX_t task, AliQAv1::MODE_t mode ) {
for (Int_t esIndex = 0 ; esIndex < AliRecoParam::kNSpecies ; esIndex++) {
if (! AliQAv1::Instance(AliQAv1::GetDetIndex(GetName()))->IsEventSpecieSet(AliRecoParam::ConvertIndex(esIndex)) || list[esIndex]->GetEntries() == 0) continue;
else {
const Char_t * title = Form("QA_%s_%s_%s", GetName(), AliQAv1::GetTaskName(task).Data(), AliRecoParam::GetEventSpecieName(esIndex)) ;
if ( !fImage[esIndex] ) fImage[esIndex] = new TCanvas(title, title,1280,980) ;
fImage[esIndex]->Clear() ;
fImage[esIndex]->SetTitle(title) ;
fImage[esIndex]->cd();
fImage[esIndex]->Print(Form("%s%s%d.%s", AliQAv1::GetImageFileName(), AliQAv1::GetModeName(mode), AliQAChecker::Instance()->GetRunNumber(), AliQAv1::GetImageFileFormat()), "ps") ;
fImage[esIndex]->Clear() ;
Int_t nx =2;
Int_t ny =2;
fImage[esIndex]->Divide(nx, ny) ;
TIter nexthist(list[esIndex]) ;
TH1* hist = NULL ;
Int_t npad = 1 ;
fImage[esIndex]->cd(npad);
fImage[esIndex]->cd(npad)->SetBorderMode(0) ;
while ( (hist=static_cast<TH1*>(nexthist())) ) {
TString cln(hist->ClassName()) ;
if ( ! cln.Contains("TH") ) continue ;
if(hist->TestBit(AliQAv1::GetImageBit())) {
hist->GetXaxis()->SetTitleSize(0.02);
hist->GetYaxis()->SetTitleSize(0.02);
hist->GetXaxis()->SetLabelSize(0.02);
hist->GetYaxis()->SetLabelSize(0.02);
if(cln.Contains("TH2")) {
gPad->SetRightMargin(0.15);
gPad->SetLeftMargin(0.05);
hist->SetStats(0);
hist->SetOption("colz") ;
}
hist->DrawCopy() ;
fImage[esIndex]->cd(++npad) ;
fImage[esIndex]->cd(npad)->SetBorderMode(0) ;
}
}
fImage[esIndex]->Print(Form("%s%s%d.%s", AliQAv1::GetImageFileName(), AliQAv1::GetModeName(mode), AliQAChecker::Instance()->GetRunNumber(), AliQAv1::GetImageFileFormat()), "ps") ;
}
}
return kTRUE;
}
Double_t AliITSQASSDChecker::Check(AliQAv1::ALITASK_t , const TObjArray * list, const AliDetectorRecoParam * ) {
AliDebug(AliQAv1::GetQADebugLevel(),Form("AliITSQASSDChecker called with offset: %d\n", fSubDetOffset));
AliInfo(Form("AliITSQASSDChecker called with offset: %d\n", fSubDetOffset) );
Double_t test = 0.0 ;
Int_t count = 0 ;
TString listname = list->GetName();
if (list->GetEntries() == 0){
test = 1. ;
}
else {
TIter next(list) ;
TH1 * hdata ;
count = 0 ;
while ( (hdata = dynamic_cast<TH1 *>(next())) ) {
if (hdata) {
TString histname = hdata->GetName();
if(!histname.Contains("fHistSSD")) continue;
Double_t rv = 0.;
if(hdata->GetEntries()>0) {
rv = 1;
}
count++ ;
test += rv ;
}
else{
AliError("Data type cannot be processed") ;
}
}
if (count != 0) {
if (AliITSQADataMakerRec::AreEqual(test,0.)) {
AliWarning("Histograms are there, but they are all empty: setting flag to kWARNING");
test = 0.5;
}
else {
test /= count ;
}
}
}
return test ;
}
void AliITSQASSDChecker::SetTaskOffset(Int_t TaskOffset){
fSubDetOffset = TaskOffset;
}
void AliITSQASSDChecker::SetStepBit(const Double_t *steprange) {
fStepBitSSD = new Double_t[AliQAv1::kNBIT];
for(Int_t bit=0;bit<AliQAv1::kNBIT;bit++)
{
fStepBitSSD[bit]=steprange[bit];
}
}
void AliITSQASSDChecker::SetSSDLimits(const Float_t *lowvalue, const Float_t * highvalue){
fLowSSDValue = new Float_t[AliQAv1::kNBIT];
fHighSSDValue= new Float_t[AliQAv1::kNBIT];
for(Int_t bit=0;bit<AliQAv1::kNBIT;bit++)
{
fLowSSDValue[bit]=lowvalue[bit];
fHighSSDValue[bit]= highvalue[bit];
}
}
AliITSQASSDChecker.cxx:10 AliITSQASSDChecker.cxx:11 AliITSQASSDChecker.cxx:12 AliITSQASSDChecker.cxx:13 AliITSQASSDChecker.cxx:14 AliITSQASSDChecker.cxx:15 AliITSQASSDChecker.cxx:16 AliITSQASSDChecker.cxx:17 AliITSQASSDChecker.cxx:18 AliITSQASSDChecker.cxx:19 AliITSQASSDChecker.cxx:20 AliITSQASSDChecker.cxx:21 AliITSQASSDChecker.cxx:22 AliITSQASSDChecker.cxx:23 AliITSQASSDChecker.cxx:24 AliITSQASSDChecker.cxx:25 AliITSQASSDChecker.cxx:26 AliITSQASSDChecker.cxx:27 AliITSQASSDChecker.cxx:28 AliITSQASSDChecker.cxx:29 AliITSQASSDChecker.cxx:30 AliITSQASSDChecker.cxx:31 AliITSQASSDChecker.cxx:32 AliITSQASSDChecker.cxx:33 AliITSQASSDChecker.cxx:34 AliITSQASSDChecker.cxx:35 AliITSQASSDChecker.cxx:36 AliITSQASSDChecker.cxx:37 AliITSQASSDChecker.cxx:38 AliITSQASSDChecker.cxx:39 AliITSQASSDChecker.cxx:40 AliITSQASSDChecker.cxx:41 AliITSQASSDChecker.cxx:42 AliITSQASSDChecker.cxx:43 AliITSQASSDChecker.cxx:44 AliITSQASSDChecker.cxx:45 AliITSQASSDChecker.cxx:46 AliITSQASSDChecker.cxx:47 AliITSQASSDChecker.cxx:48 AliITSQASSDChecker.cxx:49 AliITSQASSDChecker.cxx:50 AliITSQASSDChecker.cxx:51 AliITSQASSDChecker.cxx:52 AliITSQASSDChecker.cxx:53 AliITSQASSDChecker.cxx:54 AliITSQASSDChecker.cxx:55 AliITSQASSDChecker.cxx:56 AliITSQASSDChecker.cxx:57 AliITSQASSDChecker.cxx:58 AliITSQASSDChecker.cxx:59 AliITSQASSDChecker.cxx:60 AliITSQASSDChecker.cxx:61 AliITSQASSDChecker.cxx:62 AliITSQASSDChecker.cxx:63 AliITSQASSDChecker.cxx:64 AliITSQASSDChecker.cxx:65 AliITSQASSDChecker.cxx:66 AliITSQASSDChecker.cxx:67 AliITSQASSDChecker.cxx:68 AliITSQASSDChecker.cxx:69 AliITSQASSDChecker.cxx:70 AliITSQASSDChecker.cxx:71 AliITSQASSDChecker.cxx:72 AliITSQASSDChecker.cxx:73 AliITSQASSDChecker.cxx:74 AliITSQASSDChecker.cxx:75 AliITSQASSDChecker.cxx:76 AliITSQASSDChecker.cxx:77 AliITSQASSDChecker.cxx:78 AliITSQASSDChecker.cxx:79 AliITSQASSDChecker.cxx:80 AliITSQASSDChecker.cxx:81 AliITSQASSDChecker.cxx:82 AliITSQASSDChecker.cxx:83 AliITSQASSDChecker.cxx:84 AliITSQASSDChecker.cxx:85 AliITSQASSDChecker.cxx:86 AliITSQASSDChecker.cxx:87 AliITSQASSDChecker.cxx:88 AliITSQASSDChecker.cxx:89 AliITSQASSDChecker.cxx:90 AliITSQASSDChecker.cxx:91 AliITSQASSDChecker.cxx:92 AliITSQASSDChecker.cxx:93 AliITSQASSDChecker.cxx:94 AliITSQASSDChecker.cxx:95 AliITSQASSDChecker.cxx:96 AliITSQASSDChecker.cxx:97 AliITSQASSDChecker.cxx:98 AliITSQASSDChecker.cxx:99 AliITSQASSDChecker.cxx:100 AliITSQASSDChecker.cxx:101 AliITSQASSDChecker.cxx:102 AliITSQASSDChecker.cxx:103 AliITSQASSDChecker.cxx:104 AliITSQASSDChecker.cxx:105 AliITSQASSDChecker.cxx:106 AliITSQASSDChecker.cxx:107 AliITSQASSDChecker.cxx:108 AliITSQASSDChecker.cxx:109 AliITSQASSDChecker.cxx:110 AliITSQASSDChecker.cxx:111 AliITSQASSDChecker.cxx:112 AliITSQASSDChecker.cxx:113 AliITSQASSDChecker.cxx:114 AliITSQASSDChecker.cxx:115 AliITSQASSDChecker.cxx:116 AliITSQASSDChecker.cxx:117 AliITSQASSDChecker.cxx:118 AliITSQASSDChecker.cxx:119 AliITSQASSDChecker.cxx:120 AliITSQASSDChecker.cxx:121 AliITSQASSDChecker.cxx:122 AliITSQASSDChecker.cxx:123 AliITSQASSDChecker.cxx:124 AliITSQASSDChecker.cxx:125 AliITSQASSDChecker.cxx:126 AliITSQASSDChecker.cxx:127 AliITSQASSDChecker.cxx:128 AliITSQASSDChecker.cxx:129 AliITSQASSDChecker.cxx:130 AliITSQASSDChecker.cxx:131 AliITSQASSDChecker.cxx:132 AliITSQASSDChecker.cxx:133 AliITSQASSDChecker.cxx:134 AliITSQASSDChecker.cxx:135 AliITSQASSDChecker.cxx:136 AliITSQASSDChecker.cxx:137 AliITSQASSDChecker.cxx:138 AliITSQASSDChecker.cxx:139 AliITSQASSDChecker.cxx:140 AliITSQASSDChecker.cxx:141 AliITSQASSDChecker.cxx:142 AliITSQASSDChecker.cxx:143 AliITSQASSDChecker.cxx:144 AliITSQASSDChecker.cxx:145 AliITSQASSDChecker.cxx:146 AliITSQASSDChecker.cxx:147 AliITSQASSDChecker.cxx:148 AliITSQASSDChecker.cxx:149 AliITSQASSDChecker.cxx:150 AliITSQASSDChecker.cxx:151 AliITSQASSDChecker.cxx:152 AliITSQASSDChecker.cxx:153 AliITSQASSDChecker.cxx:154 AliITSQASSDChecker.cxx:155 AliITSQASSDChecker.cxx:156 AliITSQASSDChecker.cxx:157 AliITSQASSDChecker.cxx:158 AliITSQASSDChecker.cxx:159 AliITSQASSDChecker.cxx:160 AliITSQASSDChecker.cxx:161 AliITSQASSDChecker.cxx:162 AliITSQASSDChecker.cxx:163 AliITSQASSDChecker.cxx:164 AliITSQASSDChecker.cxx:165 AliITSQASSDChecker.cxx:166 AliITSQASSDChecker.cxx:167 AliITSQASSDChecker.cxx:168 AliITSQASSDChecker.cxx:169 AliITSQASSDChecker.cxx:170 AliITSQASSDChecker.cxx:171 AliITSQASSDChecker.cxx:172 AliITSQASSDChecker.cxx:173 AliITSQASSDChecker.cxx:174 AliITSQASSDChecker.cxx:175 AliITSQASSDChecker.cxx:176 AliITSQASSDChecker.cxx:177 AliITSQASSDChecker.cxx:178 AliITSQASSDChecker.cxx:179 AliITSQASSDChecker.cxx:180 AliITSQASSDChecker.cxx:181 AliITSQASSDChecker.cxx:182 AliITSQASSDChecker.cxx:183 AliITSQASSDChecker.cxx:184 AliITSQASSDChecker.cxx:185 AliITSQASSDChecker.cxx:186 AliITSQASSDChecker.cxx:187 AliITSQASSDChecker.cxx:188 AliITSQASSDChecker.cxx:189 AliITSQASSDChecker.cxx:190 AliITSQASSDChecker.cxx:191 AliITSQASSDChecker.cxx:192 AliITSQASSDChecker.cxx:193 AliITSQASSDChecker.cxx:194 AliITSQASSDChecker.cxx:195 AliITSQASSDChecker.cxx:196 AliITSQASSDChecker.cxx:197 AliITSQASSDChecker.cxx:198 AliITSQASSDChecker.cxx:199 AliITSQASSDChecker.cxx:200 AliITSQASSDChecker.cxx:201 AliITSQASSDChecker.cxx:202 AliITSQASSDChecker.cxx:203 AliITSQASSDChecker.cxx:204 AliITSQASSDChecker.cxx:205 AliITSQASSDChecker.cxx:206 AliITSQASSDChecker.cxx:207 AliITSQASSDChecker.cxx:208 AliITSQASSDChecker.cxx:209 AliITSQASSDChecker.cxx:210 AliITSQASSDChecker.cxx:211 AliITSQASSDChecker.cxx:212 AliITSQASSDChecker.cxx:213 AliITSQASSDChecker.cxx:214 AliITSQASSDChecker.cxx:215 AliITSQASSDChecker.cxx:216 AliITSQASSDChecker.cxx:217 AliITSQASSDChecker.cxx:218 AliITSQASSDChecker.cxx:219 AliITSQASSDChecker.cxx:220 AliITSQASSDChecker.cxx:221 AliITSQASSDChecker.cxx:222 AliITSQASSDChecker.cxx:223 AliITSQASSDChecker.cxx:224 AliITSQASSDChecker.cxx:225 AliITSQASSDChecker.cxx:226 AliITSQASSDChecker.cxx:227 AliITSQASSDChecker.cxx:228 AliITSQASSDChecker.cxx:229 AliITSQASSDChecker.cxx:230 AliITSQASSDChecker.cxx:231 AliITSQASSDChecker.cxx:232 AliITSQASSDChecker.cxx:233 AliITSQASSDChecker.cxx:234 AliITSQASSDChecker.cxx:235 AliITSQASSDChecker.cxx:236 AliITSQASSDChecker.cxx:237 AliITSQASSDChecker.cxx:238 AliITSQASSDChecker.cxx:239 AliITSQASSDChecker.cxx:240 AliITSQASSDChecker.cxx:241 AliITSQASSDChecker.cxx:242 AliITSQASSDChecker.cxx:243 AliITSQASSDChecker.cxx:244 AliITSQASSDChecker.cxx:245 AliITSQASSDChecker.cxx:246 AliITSQASSDChecker.cxx:247 AliITSQASSDChecker.cxx:248 AliITSQASSDChecker.cxx:249 AliITSQASSDChecker.cxx:250 AliITSQASSDChecker.cxx:251 AliITSQASSDChecker.cxx:252 AliITSQASSDChecker.cxx:253 AliITSQASSDChecker.cxx:254 AliITSQASSDChecker.cxx:255 AliITSQASSDChecker.cxx:256 AliITSQASSDChecker.cxx:257 AliITSQASSDChecker.cxx:258 AliITSQASSDChecker.cxx:259 AliITSQASSDChecker.cxx:260 AliITSQASSDChecker.cxx:261 AliITSQASSDChecker.cxx:262 AliITSQASSDChecker.cxx:263 AliITSQASSDChecker.cxx:264 AliITSQASSDChecker.cxx:265 AliITSQASSDChecker.cxx:266 AliITSQASSDChecker.cxx:267 AliITSQASSDChecker.cxx:268 AliITSQASSDChecker.cxx:269 AliITSQASSDChecker.cxx:270 AliITSQASSDChecker.cxx:271 AliITSQASSDChecker.cxx:272 AliITSQASSDChecker.cxx:273 AliITSQASSDChecker.cxx:274 AliITSQASSDChecker.cxx:275 AliITSQASSDChecker.cxx:276 AliITSQASSDChecker.cxx:277 AliITSQASSDChecker.cxx:278 AliITSQASSDChecker.cxx:279 AliITSQASSDChecker.cxx:280 AliITSQASSDChecker.cxx:281 AliITSQASSDChecker.cxx:282 AliITSQASSDChecker.cxx:283 AliITSQASSDChecker.cxx:284 AliITSQASSDChecker.cxx:285 AliITSQASSDChecker.cxx:286 AliITSQASSDChecker.cxx:287 AliITSQASSDChecker.cxx:288 AliITSQASSDChecker.cxx:289 AliITSQASSDChecker.cxx:290 AliITSQASSDChecker.cxx:291 AliITSQASSDChecker.cxx:292 AliITSQASSDChecker.cxx:293 AliITSQASSDChecker.cxx:294 AliITSQASSDChecker.cxx:295 AliITSQASSDChecker.cxx:296 AliITSQASSDChecker.cxx:297 AliITSQASSDChecker.cxx:298 AliITSQASSDChecker.cxx:299 AliITSQASSDChecker.cxx:300 AliITSQASSDChecker.cxx:301 AliITSQASSDChecker.cxx:302 AliITSQASSDChecker.cxx:303 AliITSQASSDChecker.cxx:304 AliITSQASSDChecker.cxx:305 AliITSQASSDChecker.cxx:306 AliITSQASSDChecker.cxx:307 AliITSQASSDChecker.cxx:308 AliITSQASSDChecker.cxx:309 AliITSQASSDChecker.cxx:310 AliITSQASSDChecker.cxx:311 AliITSQASSDChecker.cxx:312 AliITSQASSDChecker.cxx:313 AliITSQASSDChecker.cxx:314 AliITSQASSDChecker.cxx:315 AliITSQASSDChecker.cxx:316 AliITSQASSDChecker.cxx:317 AliITSQASSDChecker.cxx:318 AliITSQASSDChecker.cxx:319 AliITSQASSDChecker.cxx:320 AliITSQASSDChecker.cxx:321 AliITSQASSDChecker.cxx:322 AliITSQASSDChecker.cxx:323 AliITSQASSDChecker.cxx:324 AliITSQASSDChecker.cxx:325 AliITSQASSDChecker.cxx:326 AliITSQASSDChecker.cxx:327 AliITSQASSDChecker.cxx:328 AliITSQASSDChecker.cxx:329 AliITSQASSDChecker.cxx:330 AliITSQASSDChecker.cxx:331 AliITSQASSDChecker.cxx:332 AliITSQASSDChecker.cxx:333 AliITSQASSDChecker.cxx:334 AliITSQASSDChecker.cxx:335 AliITSQASSDChecker.cxx:336 AliITSQASSDChecker.cxx:337 AliITSQASSDChecker.cxx:338 AliITSQASSDChecker.cxx:339 AliITSQASSDChecker.cxx:340 AliITSQASSDChecker.cxx:341 AliITSQASSDChecker.cxx:342 AliITSQASSDChecker.cxx:343 AliITSQASSDChecker.cxx:344 AliITSQASSDChecker.cxx:345 AliITSQASSDChecker.cxx:346 AliITSQASSDChecker.cxx:347 AliITSQASSDChecker.cxx:348