Skip to content

Commit 395608f

Browse files
committed
Add KF / tracked cascade mc builder stuff
1 parent 1fa4652 commit 395608f

File tree

1 file changed

+32
-8
lines changed

1 file changed

+32
-8
lines changed

PWGLF/TableProducer/Strangeness/strangenessbuilder.cxx

Lines changed: 32 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1230,8 +1230,8 @@ struct StrangenessBuilder {
12301230
}
12311231

12321232
//__________________________________________________
1233-
template <class TTracks, typename TCollisions, typename TCascades>
1234-
void buildKFCascades(TCollisions const& collisions, TCascades const& cascades)
1233+
template <class TTracks, typename TCollisions, typename TCascades, typename TMCParticles>
1234+
void buildKFCascades(TCollisions const& collisions, TCascades const& cascades, TMCParticles const& mcParticles)
12351235
{
12361236
if(!mEnabledTables[kStoredKFCascCores]){
12371237
return; // don't do if no request for cascades in place
@@ -1291,14 +1291,26 @@ struct StrangenessBuilder {
12911291
if (mEnabledTables[kKFCascCovs]) {
12921292
kfcasccovs(straHelper.cascade.covariance, straHelper.cascade.kfTrackCovarianceV0, straHelper.cascade.kfTrackCovariancePos, straHelper.cascade.kfTrackCovarianceNeg);
12931293
}
1294-
}
1294+
1295+
//_________________________________________________________
1296+
// MC handling part (labels only)
1297+
if constexpr (requires { TMCParticles::iterator; }) {
1298+
// only worry about this if someone else worried about this
1299+
if((mEnabledTables[kMcKFCascLabels])){
1300+
extractMonteCarloProperties(posTrack, negTrack, bachTrack, mcParticles);
1301+
1302+
// Construct label table (note: this will be joinable with KFCascDatas)
1303+
kfcasclabels(thisCascInfo.label, thisCascInfo.motherLabel);
1304+
} // enabled tables check
1305+
} // constexpr requires mcParticles check
1306+
} // end loop over cascades
12951307

12961308
LOGF(info, "KF Cascades in DF: %i, KF cascades built: %i", cascades.size(), nCascades);
12971309
}
12981310

12991311
//__________________________________________________
1300-
template <class TTracks, typename TCollisions, typename TStrangeTracks>
1301-
void buildTrackedCascades(TCollisions const& collisions, TStrangeTracks const& cascadeTracks)
1312+
template <class TTracks, typename TCollisions, typename TStrangeTracks, typename TMCParticles>
1313+
void buildTrackedCascades(TCollisions const& collisions, TStrangeTracks const& cascadeTracks, TMCParticles const& mcParticles)
13021314
{
13031315
if(!mEnabledTables[kStoredTraCascCores]){
13041316
return; // don't do if no request for cascades in place
@@ -1375,7 +1387,19 @@ struct StrangenessBuilder {
13751387
}
13761388
tracasccovs(traCovMatArray);
13771389
}
1378-
}
1390+
1391+
//_________________________________________________________
1392+
// MC handling part (labels only)
1393+
if constexpr (requires { TMCParticles::iterator; }) {
1394+
// only worry about this if someone else worried about this
1395+
if((mEnabledTables[kMcTraCascLabels])){
1396+
extractMonteCarloProperties(posTrack, negTrack, bachTrack, mcParticles);
1397+
1398+
// Construct label table (note: this will be joinable with KFCascDatas)
1399+
tracasclabels(thisCascInfo.label, thisCascInfo.motherLabel);
1400+
} // enabled tables check
1401+
} // constexpr requires mcParticles check
1402+
} // end loop over cascades
13791403
LOGF(info, "Tracked cascades in DF: %i, tracked cascades built: %i", cascadeTracks.size(), nCascades);
13801404
}
13811405

@@ -1427,11 +1451,11 @@ struct StrangenessBuilder {
14271451

14281452
// build cascades
14291453
buildCascades<TTracks>(collisions, cascades, mcParticles);
1430-
buildKFCascades<TTracks>(collisions, cascades);
1454+
buildKFCascades<TTracks>(collisions, cascades, mcParticles);
14311455

14321456
// build tracked cascades only if subscription is Run 3 like (doesn't exist in Run 2)
14331457
if constexpr (requires { TTrackedCascades::iterator; }) {
1434-
buildTrackedCascades<TTracks>(collisions, trackedCascades);
1458+
buildTrackedCascades<TTracks>(collisions, trackedCascades, mcParticles);
14351459
}
14361460

14371461
populateCascadeInterlinks();

0 commit comments

Comments
 (0)