Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 0 additions & 3 deletions PWGCF/Femto/Core/cascadeHistManager.h
Original file line number Diff line number Diff line change
Expand Up @@ -719,9 +719,6 @@ class CascadeHistManager
case modes::McOrigin::kPhysicalPrimary:
mHistogramRegistry->fill(HIST(cascadePrefix) + HIST(McDir) + HIST(getHistName(kPrimary, HistTable)), cascadeCandidate.pt(), cascadeCandidate.cascadeCosPa());
break;
case modes::McOrigin::kFromWrongCollision:
mHistogramRegistry->fill(HIST(cascadePrefix) + HIST(McDir) + HIST(getHistName(kFromWrongCollision, HistTable)), cascadeCandidate.pt(), cascadeCandidate.cascadeCosPa());
break;
case modes::McOrigin::kFromMaterial:
mHistogramRegistry->fill(HIST(cascadePrefix) + HIST(McDir) + HIST(getHistName(kFromMaterial, HistTable)), cascadeCandidate.pt(), cascadeCandidate.cascadeCosPa());
break;
Expand Down
3 changes: 0 additions & 3 deletions PWGCF/Femto/Core/kinkHistManager.h
Original file line number Diff line number Diff line change
Expand Up @@ -599,9 +599,6 @@ class KinkHistManager
case modes::McOrigin::kPhysicalPrimary:
mHistogramRegistry->fill(HIST(kinkPrefix) + HIST(McDir) + HIST(getHistName(kPrimary, HistTable)), kinkCandidate.pt(), kinkCandidate.kinkAngle());
break;
case modes::McOrigin::kFromWrongCollision:
mHistogramRegistry->fill(HIST(kinkPrefix) + HIST(McDir) + HIST(getHistName(kFromWrongCollision, HistTable)), kinkCandidate.pt(), kinkCandidate.kinkAngle());
break;
case modes::McOrigin::kFromMaterial:
mHistogramRegistry->fill(HIST(kinkPrefix) + HIST(McDir) + HIST(getHistName(kFromMaterial, HistTable)), kinkCandidate.pt(), kinkCandidate.kinkAngle());
break;
Expand Down
10 changes: 4 additions & 6 deletions PWGCF/Femto/Core/mcParticleHistManager.h
Original file line number Diff line number Diff line change
Expand Up @@ -213,9 +213,10 @@ class McParticleHistManager
if (mPlotOrigins) {
// NOTE: kNoMcParticle and kMissidentified are kept here only for enum/histogram
// symmetry with TrackHist — they describe reco-vs-truth mismatches that cannot
// occur for a pure MC-truth particle, so these bins are expected to stay empty
// unless the producer assigns those origin codes for some other reason
// (e.g. pileup-associated particles tagged as kFromWrongCollision).
// occur for a pure MC-truth particle, so these bins are expected to stay empty.
// kFromWrongCollision is not handled here at all: mcBuilder.h's getOrigin() never
// assigns it (only kPhysicalPrimary/kFromSecondaryDecay/kFromMaterial), so it would
// be dead code the same way it was in the per-candidate hist managers.
mHistogramRegistry->fill(HIST(prefix) + HIST(McDir) + HIST(getHistName(kOrigin, HistTable)), mcParticle.origin());
switch (static_cast<modes::McOrigin>(mcParticle.origin())) {
case modes::McOrigin::kNoMcParticle:
Expand All @@ -224,9 +225,6 @@ class McParticleHistManager
case modes::McOrigin::kPhysicalPrimary:
mHistogramRegistry->fill(HIST(prefix) + HIST(McDir) + HIST(getHistName(kPrimary, HistTable)), mcParticle.pt());
break;
case modes::McOrigin::kFromWrongCollision:
mHistogramRegistry->fill(HIST(prefix) + HIST(McDir) + HIST(getHistName(kFromWrongCollision, HistTable)), mcParticle.pt());
break;
case modes::McOrigin::kFromMaterial:
mHistogramRegistry->fill(HIST(prefix) + HIST(McDir) + HIST(getHistName(kFromMaterial, HistTable)), mcParticle.pt());
break;
Expand Down
3 changes: 0 additions & 3 deletions PWGCF/Femto/Core/v0HistManager.h
Original file line number Diff line number Diff line change
Expand Up @@ -716,9 +716,6 @@ class V0HistManager
case modes::McOrigin::kPhysicalPrimary:
mHistogramRegistry->fill(HIST(v0Prefix) + HIST(McDir) + HIST(getHistName(kPrimary, HistTable)), v0Candidate.pt(), v0Candidate.cosPa());
break;
case modes::McOrigin::kFromWrongCollision:
mHistogramRegistry->fill(HIST(v0Prefix) + HIST(McDir) + HIST(getHistName(kFromWrongCollision, HistTable)), v0Candidate.pt(), v0Candidate.cosPa());
break;
case modes::McOrigin::kFromMaterial:
mHistogramRegistry->fill(HIST(v0Prefix) + HIST(McDir) + HIST(getHistName(kFromMaterial, HistTable)), v0Candidate.pt(), v0Candidate.cosPa());
break;
Expand Down
23 changes: 23 additions & 0 deletions PWGCF/Femto/TableProducer/femtoProducer.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -669,6 +669,29 @@ struct FemtoProducer {
}
PROCESS_SWITCH(FemtoProducer, processTracksV0sCascadesRun3PbPbWithEventShape, "Provide tracks, v0s and cascades in PbPb collisions with event shape information", false);

void processTracksV0sCascadesPhotonsRun3PbPbWithEventShape(rawinputs::Run3PbPbCollisionsWithEventShape::iterator const& col,
o2::aod::BCsWithTimestamps const& bcs,
rawinputs::Run3FullPidTracks const& tracks,
rawinputs::Run3Vzeros const& v0s,
rawinputs::Run3Cascades const& cascades,
o2::aod::V0PhotonsKF const& photons,
o2::aod::V0Legs const& v0legs)
{
if (!processCollisions<modes::System::kPbPb_Run3>(col, bcs, tracks)) {
return;
}
auto tracksWithItsPid = o2::soa::Attach<rawinputs::Run3FullPidTracks, o2::aod::pidits::ITSNSigmaEl, o2::aod::pidits::ITSNSigmaPi, o2::aod::pidits::ITSNSigmaKa,
o2::aod::pidits::ITSNSigmaPr, o2::aod::pidits::ITSNSigmaDe, o2::aod::pidits::ITSNSigmaTr, o2::aod::pidits::ITSNSigmaHe>(tracks);
processTracks<modes::System::kPbPb_Run3>(col, tracksWithItsPid);
processV0s<modes::System::kPbPb_Run3>(col, tracks, v0s);
processCascades<modes::System::kPbPb_Run3>(col, tracks, cascades);
// V0PhotonsKF/V0Legs carry a plain CollisionId column (not a framework index column), so they
// are not auto-grouped by the DPL binder and must be sliced manually, same as EMPhotonFilter.cxx
auto photonsThisCol = photons.sliceBy(perColRecoPCMPhotons, col.globalIndex());
processPhotons<modes::System::kPbPb_Run3>(col, photonsThisCol, v0legs);
}
PROCESS_SWITCH(FemtoProducer, processTracksV0sCascadesPhotonsRun3PbPbWithEventShape, "Provide tracks, v0s, cascades and PCM photons in PbPb collisions with event shape information", false);

void processTracksKinksRun3pp(rawinputs::Run3PpCollisions::iterator const& col,
o2::aod::BCsWithTimestamps const& bcs,
rawinputs::Run3FullPidTracks const& tracks,
Expand Down
Loading