@@ -1299,7 +1299,7 @@ struct AnalysisSameEventPairing {
12991299 if (context.mOptions .get <bool >(" processDummy" )) {
13001300 return ;
13011301 }
1302- bool isMCGen = context.mOptions .get <bool >(" processMCGen" ) || context. mOptions . get < bool >( " processMCGenWithEventSelection " ) ;
1302+ bool isMCGen = context.mOptions .get <bool >(" processMCGen" );
13031303 VarManager::SetDefaultVarNames ();
13041304
13051305 fEnableBarrelHistos = context.mOptions .get <bool >(" processAllSkimmed" ) || context.mOptions .get <bool >(" processBarrelOnlySkimmed" ) || context.mOptions .get <bool >(" processBarrelOnlyWithCollSkimmed" );
@@ -2050,7 +2050,7 @@ struct AnalysisSameEventPairing {
20502050 {
20512051 runSameEventPairing<true , VarManager::kDecayToEE , gkEventFillMapWithCov, gkTrackFillMapWithCov>(events, trackAssocsPerCollision, barrelAssocs, barrelTracks, mcEvents, mcTracks);
20522052 runSameEventPairing<true , VarManager::kDecayToMuMu , gkEventFillMapWithCov, gkMuonFillMapWithCov>(events, muonAssocsPerCollision, muonAssocs, muons, mcEvents, mcTracks);
2053- // Feature replaced by processMCGen and processMCGenWithEventSelection
2053+ // Feature replaced by processMCGen
20542054 /* if (fConfigMC.runMCGenPair) {
20552055 runMCGen(mcEvents, mcTracks);
20562056 }*/
@@ -2062,7 +2062,7 @@ struct AnalysisSameEventPairing {
20622062 MyBarrelTracksWithCovWithAmbiguities const & barrelTracks, ReducedMCEvents const & mcEvents, ReducedMCTracks const & mcTracks)
20632063 {
20642064 runSameEventPairing<true , VarManager::kDecayToEE , gkEventFillMapWithCov, gkTrackFillMapWithCov>(events, trackAssocsPerCollision, barrelAssocs, barrelTracks, mcEvents, mcTracks);
2065- // Feature replaced by processMCGen and processMCGenWithEventSelection
2065+ // Feature replaced by processMCGen
20662066 /* if (fConfigMC.runMCGenPair) {
20672067 runMCGen(mcEvents, mcTracks);
20682068 }*/
@@ -2073,7 +2073,7 @@ struct AnalysisSameEventPairing {
20732073 MyBarrelTracksWithCovWithAmbiguitiesWithColl const & barrelTracks, ReducedMCEvents const & mcEvents, ReducedMCTracks const & mcTracks)
20742074 {
20752075 runSameEventPairing<true , VarManager::kDecayToEE , gkEventFillMapWithCov, gkTrackFillMapWithCovWithColl>(events, trackAssocsPerCollision, barrelAssocs, barrelTracks, mcEvents, mcTracks);
2076- // Feature replaced by processMCGen and processMCGenWithEventSelection
2076+ // Feature replaced by processMCGen
20772077 /* if (fConfigMC.runMCGenPair) {
20782078 runMCGen(mcEvents, mcTracks);
20792079 }*/
@@ -2083,19 +2083,18 @@ struct AnalysisSameEventPairing {
20832083 soa::Join<aod::ReducedMuonsAssoc, aod::MuonTrackCuts> const & muonAssocs, MyMuonTracksWithCovWithAmbiguities const & muons, ReducedMCEvents const & mcEvents, ReducedMCTracks const & mcTracks)
20842084 {
20852085 runSameEventPairing<true , VarManager::kDecayToMuMu , gkEventFillMapWithCov, gkMuonFillMapWithCov>(events, muonAssocsPerCollision, muonAssocs, muons, mcEvents, mcTracks);
2086- // Feature replaced by processMCGen and processMCGenWithEventSelection
2086+ // Feature replaced by processMCGen
20872087 /* if (fConfigMC.runMCGenPair) {
20882088 runMCGen(mcEvents, mcTracks);
20892089 }*/
20902090 }
20912091
2092- void processMCGen (ReducedMCTracks const & mcTracks)
2092+ PresliceUnsorted<ReducedMCTracks> perReducedMcGenEvent = aod::reducedtrackMC::reducedMCeventId;
2093+
2094+ void processMCGen (soa::Filtered<MyEventsVtxCovSelected> const & events, ReducedMCEvents const & /* mcEvents*/ , ReducedMCTracks const & mcTracks)
20932095 {
2094- // loop over mc stack and fill histograms for pure MC truth signals
2095- // group all the MC tracks which belong to the MC event corresponding to the current reconstructed event
2096- // auto groupedMCTracks = tracksMC.sliceBy(aod::reducedtrackMC::reducedMCeventId, event.reducedMCevent().globalIndex());
2096+ // Fill Generated histograms taking into account all generated tracks
20972097 for (auto & mctrack : mcTracks) {
2098-
20992098 VarManager::FillTrackMC (mcTracks, mctrack);
21002099 // NOTE: Signals are checked here mostly based on the skimmed MC stack, so depending on the requested signal, the stack could be incomplete.
21012100 // NOTE: However, the working model is that the decisions on MC signals are precomputed during skimming and are stored in the mcReducedFlags member.
@@ -2106,13 +2105,8 @@ struct AnalysisSameEventPairing {
21062105 }
21072106 }
21082107 }
2109- }
2110-
2111- PresliceUnsorted<ReducedMCTracks> perReducedMcGenEvent = aod::reducedtrackMC::reducedMCeventId;
21122108
2113- void processMCGenWithEventSelection (soa::Filtered<MyEventsVtxCovSelected> const & events,
2114- ReducedMCEvents const & /* mcEvents*/ , ReducedMCTracks const & mcTracks)
2115- {
2109+ // Fill Generated histograms taking into account selected collisions
21162110 for (auto & event : events) {
21172111 if (!event.isEventSelected_bit (0 )) {
21182112 continue ;
@@ -2124,9 +2118,7 @@ struct AnalysisSameEventPairing {
21242118 auto groupedMCTracks = mcTracks.sliceBy (perReducedMcGenEvent, event.reducedMCeventId ());
21252119 groupedMCTracks.bindInternalIndicesTo (&mcTracks);
21262120 for (auto & track : groupedMCTracks) {
2127-
21282121 VarManager::FillTrackMC (mcTracks, track);
2129-
21302122 auto track_raw = groupedMCTracks.rawIteratorAt (track.globalIndex ());
21312123 for (auto & sig : fGenMCSignals ) {
21322124 if (sig->CheckSignal (true , track_raw)) {
@@ -2147,7 +2139,6 @@ struct AnalysisSameEventPairing {
21472139 PROCESS_SWITCH (AnalysisSameEventPairing, processBarrelOnlyWithCollSkimmed, " Run barrel only pairing, with skimmed tracks and with collision information" , false );
21482140 PROCESS_SWITCH (AnalysisSameEventPairing, processMuonOnlySkimmed, " Run muon only pairing, with skimmed tracks" , false );
21492141 PROCESS_SWITCH (AnalysisSameEventPairing, processMCGen, " Loop over MC particle stack and fill generator level histograms" , false );
2150- PROCESS_SWITCH (AnalysisSameEventPairing, processMCGenWithEventSelection, " Loop over MC particle stack and fill generator level histograms with event selection" , false );
21512142 PROCESS_SWITCH (AnalysisSameEventPairing, processDummy, " Dummy function, enabled only if none of the others are enabled" , false );
21522143};
21532144
0 commit comments