diff --git a/Modules/ITS/itsNoisyPixel.json b/Modules/ITS/itsNoisyPixel.json index c5387643f2..94978e7a5e 100644 --- a/Modules/ITS/itsNoisyPixel.json +++ b/Modules/ITS/itsNoisyPixel.json @@ -56,7 +56,7 @@ "id": "compclus", "active": "true", "machines": [], - "query": "compclus:ITS/COMPCLUSTERS/0;clustersrof:ITS/CLUSTERSROF/0;digits:ITS/DIGITS/0", + "query": "compclus:ITS/COMPCLUSTERS/0;clustersrof:ITS/CLUSTERSROF/0", "samplingConditions": [ { "condition": "random", diff --git a/Modules/ITS/src/ITSNoisyPixelTask.cxx b/Modules/ITS/src/ITSNoisyPixelTask.cxx index 114a12430b..ef9ffa4aae 100644 --- a/Modules/ITS/src/ITSNoisyPixelTask.cxx +++ b/Modules/ITS/src/ITSNoisyPixelTask.cxx @@ -112,9 +112,8 @@ void ITSNoisyPixelTask::monitorData(o2::framework::ProcessingContext& ctx) ILOG(Info, Support) << "START DOING QC General" << AliceO2::InfoLogger::InfoLogger::endm; auto clusArr = ctx.inputs().get>("compclus"); - auto digits = ctx.inputs().get>("digits"); - auto clusRofArr = ctx.inputs().get>("clustersrof"); + int ROFCycle = clusRofArr.size(); int lay = -1, sta, ssta, mod, chip; @@ -138,32 +137,37 @@ void ITSNoisyPixelTask::monitorData(o2::framework::ProcessingContext& ctx) hOccupancyOB[iLayer - 3]->Scale(norm_factor); } - for (auto&& pixeldata : digits) { - ChipID = pixeldata.getChipIndex(); + for (const auto& rof : clusRofArr) { - col = pixeldata.getColumn(); - row = pixeldata.getRow(); + auto clustersInFrame = rof.getROFData(clusArr); - label = 1024 * 512; - label = label * ChipID + 1024 * row + col; + for (auto& hit : clustersInFrame) { - hashtable[label]++; + ChipID = hit.getSensorID(); + col = hit.getCol(); + row = hit.getRow(); - mGeom->getChipId(ChipID, lay, sta, ssta, mod, chip); + label = 1024 * 512; + label = label * ChipID + 1024 * row + col; - if (lay < 3) { + hashtable[label]++; - Double_t Addr[3] = { (double)col, (double)row, (double)chip }; - hOccupancyIB[lay]->Fill(chip + 1, sta, 1. / ((mROFcounter + ROFCycle) * 5.24e5)); - hNoisyPixelMapIB[lay][sta]->Fill(Addr); + mGeom->getChipId(ChipID, lay, sta, ssta, mod, chip); - } else { + if (lay < 3) { - std::vector XY = MapOverHIC(col, row, chip); - Double_t Addr[3] = { (double)XY[0], (double)XY[1], (double)mod }; + Double_t Addr[3] = { (double)col, (double)row, (double)chip }; + hOccupancyIB[lay]->Fill(chip + 1, sta, 1. / ((mROFcounter + ROFCycle) * 5.24e5)); + hNoisyPixelMapIB[lay][sta]->Fill(Addr); - hOccupancyOB[lay - 3]->Fill(mod, sta, 1. / ((mROFcounter + ROFCycle) * 5.24e5 * mNChipsPerHic[lay])); - hNoisyPixelMapOB[lay - 3][sta]->Fill(Addr); + } else { + + std::vector XY = MapOverHIC(col, row, chip); + Double_t Addr[3] = { (double)XY[0], (double)XY[1], (double)mod }; + + hOccupancyOB[lay - 3]->Fill(mod, sta, 1. / ((mROFcounter + ROFCycle) * 5.24e5 * mNChipsPerHic[lay])); + hNoisyPixelMapOB[lay - 3][sta]->Fill(Addr); + } } }