--- /dev/null
+CheckProblematic(Int_t run, const Char_t *dbString = "raw://")
+{
+
+ TGrid::Connect("alien");
+ AliCDBManager *cdb = AliCDBManager::Instance();
+ cdb->SetDefaultStorage(dbString);
+ cdb->SetRun(run);
+ AliCDBEntry *cdbe = cdb->Get("TOF/Calib/Problematic");
+ CheckProblematic(cdbe);
+
+}
+
+CheckProblematic(const Char_t *fileName)
+{
+
+ TFile *file = TFile::Open(fileName);
+ AliCDBEntry *cdbe = (AliCDBEntry *)file->Get("AliCDBEntry");
+ CheckProblematic(cdbe);
+}
+
+CheckProblematic(AliCDBEntry *cdbe)
+{
+
+ if (!cdbe) {
+ printf("invalid CDB entry\n");
+ return;
+ }
+
+ TH1C *data = (TH1C *)cdbe->GetObject();
+
+ TH2F *hProblematicMap = new TH2F("hProblematicMap", "Problematic map;sector;strip", 72, 0., 18., 91, 0., 91.);
+
+ AliTOFcalibHisto calib;
+ calib.LoadCalibHisto();
+ calib.LoadCalibStat(); /* temp */
+
+ Int_t sector, sectorStrip, padx, fea;
+ Float_t efficiency, hitmapx, hitmapy;
+ for (Int_t i = 0; i < data->GetNbinsX(); i++) {
+ if (data->GetBinContent(i + 1) == 0) continue;
+ sector = calib.GetCalibMap(AliTOFcalibHisto::kSector, i);
+ sectorStrip = calib.GetCalibMap(AliTOFcalibHisto::kSectorStrip, i);
+ padx = calib.GetCalibMap(AliTOFcalibHisto::kPadX, i);
+ fea = padx / 12;
+ hitmapx = sector + ((Double_t)(3 - fea) + 0.5) / 4.;
+ hitmapy = sectorStrip;
+
+ hProblematicMap->Fill(hitmapx, hitmapy);
+ }
+
+ hProblematicMap->DrawCopy("colz");
+ TFile *fout = TFile::Open("CheckProblematic.root", "RECREATE");
+ hProblematicMap->Write();
+ fout->Close();
+
+}