Skip to content

Commit 29a2457

Browse files
authored
[PWGLF] double count fix II (#12865)
1 parent fbfa10a commit 29a2457

File tree

1 file changed

+12
-12
lines changed

1 file changed

+12
-12
lines changed

PWGLF/Tasks/Strangeness/nonPromptCascade.cxx

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -210,6 +210,7 @@ struct NonPromptCascadeTask {
210210
float mBz = 0.f;
211211
o2::vertexing::DCAFitterN<2> mDCAFitter;
212212
std::array<int, 2> mProcessCounter = {0, 0}; // {Tracked, All}
213+
std::map<uint64_t, uint32_t> mToiMap;
213214

214215
void initCCDB(aod::BCsWithTimestamps::iterator const& bc)
215216
{
@@ -299,9 +300,10 @@ struct NonPromptCascadeTask {
299300
return true;
300301
}
301302

302-
void zorroAccounting(const auto& collisions, auto& toiMap)
303+
void zorroAccounting(const auto& collisions)
303304
{
304305
if (cfgSkimmedProcessing && mProcessCounter[0] != mProcessCounter[1]) {
306+
mToiMap.clear();
305307
int runNumber{-1};
306308
for (const auto& coll : collisions) {
307309
auto bc = coll.template bc_as<aod::BCsWithTimestamps>();
@@ -320,7 +322,7 @@ struct NonPromptCascadeTask {
320322
for (size_t i{0}; i < toivect.size(); i++) {
321323
toiMask += toivect[i] << i;
322324
}
323-
toiMap[bc.globalBC()] = toiMask;
325+
mToiMap[bc.globalBC()] = toiMask;
324326
}
325327
}
326328
}
@@ -338,7 +340,7 @@ struct NonPromptCascadeTask {
338340
};
339341

340342
template <typename TrackType, typename CollisionType>
341-
void fillCandidatesVector(CollisionType const&, TrackType const& tracks, auto const& cascades, auto& candidates, std::map<uint64_t, uint32_t> toiMap = {})
343+
void fillCandidatesVector(CollisionType const&, TrackType const& tracks, auto const& cascades, auto& candidates)
342344
{
343345

344346
const auto& getCascade = [](auto const& candidate) {
@@ -543,8 +545,8 @@ struct NonPromptCascadeTask {
543545
o2::base::Propagator::Instance()->propagateToDCA(primaryVertex, ntCascadeTrack, mBz, 2.f, matCorr, &motherDCA);
544546
}
545547
uint32_t toiMask = 0x0;
546-
if (toiMap.count(bc.globalBC())) {
547-
toiMask = toiMap[bc.globalBC()];
548+
if (mToiMap.count(bc.globalBC())) {
549+
toiMask = mToiMap[bc.globalBC()];
548550
}
549551
candidates.emplace_back(NPCascCandidate{mcParticleID, trackedCascGlobalIndex, itsTrackGlobalIndex, candidate.collisionId(), matchingChi2, deltaPtITSCascade, deltaPtCascade, cascITSclsSize, hasReassociatedClusters, hasFakeReassociation, isGoodMatch, isGoodCascade, pdgCodeMom, itsTrackPDG, fromHF[0], fromHF[1],
550552
collision.numContrib(), cascPVContribs, collision.collisionTimeRes(), primaryVertex.getX(), primaryVertex.getY(), primaryVertex.getZ(),
@@ -693,10 +695,8 @@ struct NonPromptCascadeTask {
693695
aod::BCsWithTimestamps const&)
694696
{
695697
mProcessCounter[0]++;
696-
fillMultHistos(collisions);
697-
std::map<uint64_t, uint32_t> toiMap;
698-
zorroAccounting(collisions, toiMap);
699-
fillCandidatesVector<TracksExtData>(collisions, tracks, trackedCascades, gCandidates, toiMap);
698+
zorroAccounting(collisions);
699+
fillCandidatesVector<TracksExtData>(collisions, tracks, trackedCascades, gCandidates);
700700
fillDataTable<aod::AssignedTrackedCascades>(gCandidates);
701701
}
702702
PROCESS_SWITCH(NonPromptCascadeTask, processTrackedCascadesData, "process cascades from strangeness tracking: Data analysis", false);
@@ -706,9 +706,9 @@ struct NonPromptCascadeTask {
706706
aod::BCsWithTimestamps const&)
707707
{
708708
mProcessCounter[1]++;
709-
std::map<uint64_t, uint32_t> toiMap;
710-
zorroAccounting(collisions, toiMap);
711-
fillCandidatesVector<TracksExtData>(collisions, tracks, cascades, gCandidatesNT, toiMap);
709+
fillMultHistos(collisions);
710+
zorroAccounting(collisions);
711+
fillCandidatesVector<TracksExtData>(collisions, tracks, cascades, gCandidatesNT);
712712
fillDataTable<aod::Cascades>(gCandidatesNT);
713713
}
714714
PROCESS_SWITCH(NonPromptCascadeTask, processCascadesData, "process cascades: Data analysis", false);

0 commit comments

Comments
 (0)