Skip to content

Commit aebb1cf

Browse files
committed
double count fix II
1 parent 5855acc commit aebb1cf

File tree

1 file changed

+11
-11
lines changed

1 file changed

+11
-11
lines changed

PWGLF/Tasks/Strangeness/nonPromptCascade.cxx

Lines changed: 11 additions & 11 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(),
@@ -694,9 +696,8 @@ struct NonPromptCascadeTask {
694696
{
695697
mProcessCounter[0]++;
696698
fillMultHistos(collisions);
697-
std::map<uint64_t, uint32_t> toiMap;
698-
zorroAccounting(collisions, toiMap);
699-
fillCandidatesVector<TracksExtData>(collisions, tracks, trackedCascades, gCandidates, toiMap);
699+
zorroAccounting(collisions);
700+
fillCandidatesVector<TracksExtData>(collisions, tracks, trackedCascades, gCandidates);
700701
fillDataTable<aod::AssignedTrackedCascades>(gCandidates);
701702
}
702703
PROCESS_SWITCH(NonPromptCascadeTask, processTrackedCascadesData, "process cascades from strangeness tracking: Data analysis", false);
@@ -706,9 +707,8 @@ struct NonPromptCascadeTask {
706707
aod::BCsWithTimestamps const&)
707708
{
708709
mProcessCounter[1]++;
709-
std::map<uint64_t, uint32_t> toiMap;
710-
zorroAccounting(collisions, toiMap);
711-
fillCandidatesVector<TracksExtData>(collisions, tracks, cascades, gCandidatesNT, toiMap);
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)