Skip to content

Commit e7d5623

Browse files
[PWGLF] Fix Tracked cascade datalink filling (AliceO2Group#13498)
1 parent 79ee119 commit e7d5623

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

PWGLF/Utils/strangenessBuilderModule.h

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2403,12 +2403,14 @@ class BuilderModule
24032403
return; // don't do if no request for cascades in place or findable mode used
24042404
}
24052405
int nCascades = 0;
2406+
std::vector<int> traCascIndices(cascadeList.size(), -1);
24062407
// Loops over all V0s in the time frame
24072408
histos.fill(HIST("hInputStatistics"), kStoredTraCascCores, cascadeTracks.size());
24082409
for (const auto& cascadeTrack : cascadeTracks) {
24092410
// Get tracks and generate candidate
2410-
if (!cascadeTrack.has_track())
2411+
if (!cascadeTrack.has_track()) {
24112412
continue; // safety (should be fine but depends on future stratrack dev)
2413+
}
24122414

24132415
auto const& strangeTrack = cascadeTrack.template track_as<TTracks>();
24142416

@@ -2433,8 +2435,6 @@ class BuilderModule
24332435
baseOpts.mEnabledTables[kCascBBs],
24342436
cascadeBuilderOpts.useCascadeMomentumAtPrimVtx,
24352437
baseOpts.mEnabledTables[kCascCovs])) {
2436-
products.tracascdataLink(-1);
2437-
interlinks.cascadeToTraCascCores.push_back(-1);
24382438
continue; // didn't work out, skip
24392439
}
24402440

@@ -2474,9 +2474,7 @@ class BuilderModule
24742474
histos.fill(HIST("hTableBuildingStatistics"), kStoredTraCascCores);
24752475

24762476
// interlink always produced if base core table generated
2477-
products.tracascdataLink(products.tracascdata.lastIndex());
2478-
interlinks.traCascCoreToCascades.push_back(cascade.globalIndex());
2479-
interlinks.cascadeToTraCascCores.push_back(products.tracascdata.lastIndex());
2477+
traCascIndices[cascade.globalIndex()] = products.tracascdata.lastIndex();
24802478
}
24812479
if (baseOpts.mEnabledTables[kCascCovs]) {
24822480
std::array<float, o2::track::kLabCovMatSize> traCovMat = {0.};
@@ -2502,6 +2500,10 @@ class BuilderModule
25022500
} // enabled tables check
25032501
} // constexpr requires mcParticles check
25042502
} // end loop over cascades
2503+
2504+
for (std::size_t icascade = 0; icascade < cascadeList.size(); icascade++) {
2505+
products.tracascdataLink(traCascIndices[icascade]);
2506+
}
25052507
LOGF(debug, "Tracked cascades in DF: %i, tracked cascades built: %i", cascadeTracks.size(), nCascades);
25062508
}
25072509

0 commit comments

Comments
 (0)