From ce1e737c8c6675477f8fc231c66f6ac68f3221ac Mon Sep 17 00:00:00 2001 From: Jinhyun Park Date: Tue, 9 Jun 2026 17:09:00 +0900 Subject: [PATCH 1/5] Update treeCreator --- PWGHF/TableProducer/treeCreatorToXiPiQa.cxx | 251 ++++++++++++-------- 1 file changed, 151 insertions(+), 100 deletions(-) diff --git a/PWGHF/TableProducer/treeCreatorToXiPiQa.cxx b/PWGHF/TableProducer/treeCreatorToXiPiQa.cxx index 000c7d09b6e..71e626c8918 100644 --- a/PWGHF/TableProducer/treeCreatorToXiPiQa.cxx +++ b/PWGHF/TableProducer/treeCreatorToXiPiQa.cxx @@ -20,6 +20,7 @@ #include "PWGHF/Core/DecayChannelsLegacy.h" #include "PWGHF/DataModel/CandidateReconstructionTables.h" #include "PWGHF/DataModel/CandidateSelectionTables.h" +#include "PWGLF/DataModel/mcCentrality.h" #include "Common/Core/RecoDecay.h" #include "Common/DataModel/Centrality.h" @@ -218,6 +219,10 @@ DECLARE_SOA_COLUMN(MassV0Chi2OverNdf, massV0Chi2OverNdf, float); DECLARE_SOA_COLUMN(MassCascChi2OverNdf, massCascChi2OverNdf, float); // MC DECLARE_SOA_COLUMN(ParticlePdg, particlePdg, int); +DECLARE_SOA_COLUMN(MaxNumContrib, maxNumContrib, int); +DECLARE_SOA_COLUMN(NRecoColl, nRecoColl, int); +DECLARE_SOA_COLUMN(PtGenB, ptGenB, float); +DECLARE_SOA_COLUMN(IsSel8RecoColl, isSel8RecoColl, bool); } // namespace full DECLARE_SOA_TABLE(HfToXiPiEvs, "AOD", "HFTOXIPIEV", @@ -317,7 +322,10 @@ DECLARE_SOA_TABLE(HfCandToXiPiGen, "AOD", "HFCANDTOXIPIGEN", full::YCharmBaryon, full::FlagMcMatchRec, full::OriginRec, - full::ParticlePdg) + full::ParticlePdg, + full::MaxNumContrib, + full::NRecoColl, + full::PtGenB) } // namespace o2::aod /// Writes the full information in an output TTree @@ -334,14 +342,26 @@ struct HfTreeCreatorToXiPiQa { Configurable fillGenTable{"fillGenTable", true, "Fill generated MC information if requested"}; using MyTrackTable = soa::Join; + using MyCandTableDca = soa::Join; + using MyCandTableKf = soa::Join; + using MyCandTableXic0McDca = soa::Join; + using MyCandTableXic0McKf = soa::Join; + using MyCandTableOmegac0McDca = soa::Join; using MyEventTable = soa::Join; using MyEventTableWithFT0C = soa::Join; using MyEventTableWithFT0M = soa::Join; using MyEventTableWithNTracksPV = soa::Join; + using MyEventTableWithMcLabels = soa::Join; + using MatchedGenXiPi = soa::Filtered>; + + using McCollisionsCentFT0Cs = soa::Join; + using McCollisionsCentFT0Ms = soa::Join; Filter filterGenXiPi = nabs(aod::hf_cand_mc_flag::flagMcMatchGen) == static_cast(BIT(genSelection)); + PresliceUnsorted colPerMcCollision = aod::mccollisionlabel::mcCollisionId; + void init(InitContext const&) { if ((doprocessMcLiteXic0 && doprocessMcLiteOmegac0) || (doprocessMcFullXic0 && doprocessMcFullOmegac0)) { @@ -632,18 +652,51 @@ struct HfTreeCreatorToXiPiQa { } } + #if 0 template - void fillParticle(const T& particle, double massCharmBaryon) + void fillParticle(const T& particle) { rowCandidateParticles(RecoDecay::m(particle.pVector(), particle.e()), particle.pt(), particle.eta(), particle.phi(), - RecoDecay::y(particle.pVector(), massCharmBaryon), + particle.rapidityCharmBaryonGen(), particle.flagMcMatchGen(), particle.originMcGen(), particle.pdgCode()); } + #endif + + template + void fillParticle(const CandType& mcParticles, const CollType& collisions) + { + for (const auto& particle : mcParticles) { + // Mc.Gen + auto ptGen = particle.pt(); + auto yGen = particle.rapidityCharmBaryonGen(); + + int maxNumContrib = 0; + auto mcCollision = particle.template mcCollision_as(); + const auto& recoCollsPerMcColl = collisions.sliceBy(colPerMcCollision, mcCollision.globalIndex()); + for (const auto& recoCol : recoCollsPerMcColl) { + maxNumContrib = recoCol.numContrib() > maxNumContrib ? recoCol.numContrib() : maxNumContrib; + } + + float ptGenBhad = (particle.originMcGen() == RecoDecay::OriginType::NonPrompt) ? mcParticles.rawIteratorAt(particle.idxBhadMotherPart()).pt() : -999.f; + + rowCandidateParticles(RecoDecay::m(particle.pVector(), particle.e()), + ptGen, + particle.eta(), + particle.phi(), + yGen, + particle.flagMcMatchGen(), + particle.originMcGen(), + particle.pdgCode(), + maxNumContrib, + recoCollsPerMcColl.size(), + ptGenBhad); + } + } //////////////////////////////////// // // @@ -655,8 +708,9 @@ struct HfTreeCreatorToXiPiQa { //*~~~~~~~Data with DCAFitter~~~~~~~~*// //*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*// - void processDataFull(MyEventTable const& collisions, MyTrackTable const&, - soa::Join const& candidates) + void processDataFull(MyEventTable const& collisions, + MyTrackTable const&, + MyCandTableDca const& candidates) { // Filling event properties rowEv.reserve(collisions.size()); @@ -671,8 +725,9 @@ struct HfTreeCreatorToXiPiQa { } } - void processDataLite(MyEventTable const& collisions, MyTrackTable const&, - soa::Join const& candidates) + void processDataLite(MyEventTable const& collisions, + MyTrackTable const&, + MyCandTableDca const& candidates) { // Filling event properties rowEv.reserve(collisions.size()); @@ -687,8 +742,9 @@ struct HfTreeCreatorToXiPiQa { } } - void processDataLiteWithFT0M(MyEventTableWithFT0M const& collisions, MyTrackTable const&, - soa::Join const& candidates) + void processDataLiteWithFT0M(MyEventTableWithFT0M const& collisions, + MyTrackTable const&, + MyCandTableDca const& candidates) { // Filling event properties rowEv.reserve(collisions.size()); @@ -703,8 +759,9 @@ struct HfTreeCreatorToXiPiQa { } } - void processDataLiteWithFT0C(MyEventTableWithFT0C const& collisions, MyTrackTable const&, - soa::Join const& candidates) + void processDataLiteWithFT0C(MyEventTableWithFT0C const& collisions, + MyTrackTable const&, + MyCandTableDca const& candidates) { // Filling event properties rowEv.reserve(collisions.size()); @@ -719,8 +776,9 @@ struct HfTreeCreatorToXiPiQa { } } - void processDataLiteWithNTracksPV(MyEventTableWithNTracksPV const& collisions, MyTrackTable const&, - soa::Join const& candidates) + void processDataLiteWithNTracksPV(MyEventTableWithNTracksPV const& collisions, + MyTrackTable const&, + MyCandTableDca const& candidates) { // Filling event properties rowEv.reserve(collisions.size()); @@ -744,8 +802,9 @@ struct HfTreeCreatorToXiPiQa { //*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*// //*~~~~~~~Data with KFParticle~~~~~~~~*// //*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*// - void processKfData(MyEventTable const& collisions, MyTrackTable const&, - soa::Join const& candidates) + void processKfData(MyEventTable const& collisions, + MyTrackTable const&, + MyCandTableKf const& candidates) { // Filling event properties rowEv.reserve(collisions.size()); @@ -760,8 +819,9 @@ struct HfTreeCreatorToXiPiQa { } } - void processKfDataWithFT0M(MyEventTableWithFT0M const& collisions, MyTrackTable const&, - soa::Join const& candidates) + void processKfDataWithFT0M(MyEventTableWithFT0M const& collisions, + MyTrackTable const&, + MyCandTableKf const& candidates) { // Filling event properties rowEv.reserve(collisions.size()); @@ -776,8 +836,9 @@ struct HfTreeCreatorToXiPiQa { } } - void processKfDataWithFT0C(MyEventTableWithFT0C const& collisions, MyTrackTable const&, - soa::Join const& candidates) + void processKfDataWithFT0C(MyEventTableWithFT0C const& collisions, + MyTrackTable const&, + MyCandTableKf const& candidates) { // Filling event properties rowEv.reserve(collisions.size()); @@ -792,8 +853,9 @@ struct HfTreeCreatorToXiPiQa { } } - void processKfDataWithNTracksPV(MyEventTableWithNTracksPV const& collisions, MyTrackTable const&, - soa::Join const& candidates) + void processKfDataWithNTracksPV(MyEventTableWithNTracksPV const& collisions, + MyTrackTable const&, + MyCandTableKf const& candidates) { // Filling event properties rowEv.reserve(collisions.size()); @@ -817,66 +879,65 @@ struct HfTreeCreatorToXiPiQa { //*~~~~~~~MC with DCAFitter~~~~~~~~*// //*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*// - void processMcFullXic0(MyEventTable const& collisions, + void processMcFullXic0(MyEventTableWithMcLabels const& collsWithMcLable, + aod::McCollisions const&, MyTrackTable const&, - soa::Join const& candidates, + MyCandTableXic0McDca const& candidates, MatchedGenXiPi const& mcParticles) { // Filling event properties - rowEv.reserve(collisions.size()); - for (const auto& collision : collisions) { + rowEv.reserve(collsWithMcLable.size()); + for (const auto& collision : collsWithMcLable) { fillEvent(collision, zPvCut); } // Filling candidate properties rowCandidateFull.reserve(candidates.size()); for (const auto& candidate : candidates) { - fillCandidate(candidate, candidate.flagMcMatchRec(), candidate.debugMcRec(), candidate.originMcRec(), candidate.collisionMatched()); + fillCandidate(candidate, candidate.flagMcMatchRec(), candidate.debugMcRec(), candidate.originMcRec(), candidate.collisionMatched()); } // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - for (const auto& particle : mcParticles) { - fillParticle(particle, o2::constants::physics::MassXiC0); - } + fillParticle(mcParticles, collsWithMcLable); } } - void processMcFullOmegac0(MyEventTable const& collisions, + void processMcFullOmegac0(MyEventTableWithMcLabels const& collsWithMcLable, + aod::McCollisions const&, MyTrackTable const&, - soa::Join const& candidates, + MyCandTableOmegac0McDca const& candidates, MatchedGenXiPi const& mcParticles) { // Filling event properties - rowEv.reserve(collisions.size()); - for (const auto& collision : collisions) { + rowEv.reserve(collsWithMcLable.size()); + for (const auto& collision : collsWithMcLable) { fillEvent(collision, zPvCut); } // Filling candidate properties rowCandidateFull.reserve(candidates.size()); for (const auto& candidate : candidates) { - fillCandidate(candidate, candidate.flagMcMatchRec(), candidate.debugMcRec(), candidate.originMcRec(), candidate.collisionMatched()); + fillCandidate(candidate, candidate.flagMcMatchRec(), candidate.debugMcRec(), candidate.originMcRec(), candidate.collisionMatched()); } // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - for (const auto& particle : mcParticles) { - fillParticle(particle, o2::constants::physics::MassOmegaC0); - } + fillParticle(mcParticles, collsWithMcLable); } } - void processMcLiteXic0(MyEventTable const& collisions, + void processMcLiteXic0(MyEventTableWithMcLabels const& collsWithMcLable, + aod::McCollisions const&, MyTrackTable const&, - soa::Join const& candidates, + MyCandTableXic0McDca const& candidates, MatchedGenXiPi const& mcParticles) { // Filling event properties - rowEv.reserve(collisions.size()); - for (const auto& collision : collisions) { + rowEv.reserve(collsWithMcLable.size()); + for (const auto& collision : collsWithMcLable) { fillEvent(collision, zPvCut); } @@ -889,20 +950,19 @@ struct HfTreeCreatorToXiPiQa { // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - for (const auto& particle : mcParticles) { - fillParticle(particle, o2::constants::physics::MassXiC0); - } + fillParticle(mcParticles, collsWithMcLable); } } - void processMcLiteXic0WithFT0C(MyEventTableWithFT0C const& collisions, + void processMcLiteXic0WithFT0C(MyEventTableWithMcLabels const& collsWithMcLable, + McCollisionsCentFT0Cs const&, MyTrackTable const&, - soa::Join const& candidates, + MyCandTableXic0McDca const& candidates, MatchedGenXiPi const& mcParticles) { // Filling event properties - rowEv.reserve(collisions.size()); - for (const auto& collision : collisions) { + rowEv.reserve(collsWithMcLable.size()); + for (const auto& collision : collsWithMcLable) { fillEvent(collision, zPvCut); } @@ -915,20 +975,19 @@ struct HfTreeCreatorToXiPiQa { // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - for (const auto& particle : mcParticles) { - fillParticle(particle, o2::constants::physics::MassXiC0); - } + fillParticle(mcParticles, collsWithMcLable); } } - void processMcLiteXic0WithFT0M(MyEventTableWithFT0M const& collisions, + void processMcLiteXic0WithFT0M(MyEventTableWithMcLabels const& collsWithMcLable, + McCollisionsCentFT0Ms const&, MyTrackTable const&, - soa::Join const& candidates, + MyCandTableXic0McDca const& candidates, MatchedGenXiPi const& mcParticles) { // Filling event properties - rowEv.reserve(collisions.size()); - for (const auto& collision : collisions) { + rowEv.reserve(collsWithMcLable.size()); + for (const auto& collision : collsWithMcLable) { fillEvent(collision, zPvCut); } @@ -941,20 +1000,19 @@ struct HfTreeCreatorToXiPiQa { // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - for (const auto& particle : mcParticles) { - fillParticle(particle, o2::constants::physics::MassXiC0); - } + fillParticle(mcParticles, collsWithMcLable); } } - void processMcLiteXic0WithNTracksPV(MyEventTableWithNTracksPV const& collisions, + void processMcLiteXic0WithNTracksPV(MyEventTableWithMcLabels const& collsWithMcLable, + aod::McCollisions const&, MyTrackTable const&, - soa::Join const& candidates, + MyCandTableXic0McDca const& candidates, MatchedGenXiPi const& mcParticles) { // Filling event properties - rowEv.reserve(collisions.size()); - for (const auto& collision : collisions) { + rowEv.reserve(collsWithMcLable.size()); + for (const auto& collision : collsWithMcLable) { fillEvent(collision, zPvCut); } @@ -967,20 +1025,19 @@ struct HfTreeCreatorToXiPiQa { // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - for (const auto& particle : mcParticles) { - fillParticle(particle, o2::constants::physics::MassXiC0); - } + fillParticle(mcParticles, collsWithMcLable); } } - void processMcLiteOmegac0(MyEventTable const& collisions, + void processMcLiteOmegac0(MyEventTableWithMcLabels const& collsWithMcLable, + aod::McCollisions const&, MyTrackTable const&, - soa::Join const& candidates, + MyCandTableOmegac0McDca const& candidates, MatchedGenXiPi const& mcParticles) { // Filling event properties - rowEv.reserve(collisions.size()); - for (const auto& collision : collisions) { + rowEv.reserve(collsWithMcLable.size()); + for (const auto& collision : collsWithMcLable) { fillEvent(collision, zPvCut); } @@ -993,9 +1050,7 @@ struct HfTreeCreatorToXiPiQa { // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - for (const auto& particle : mcParticles) { - fillParticle(particle, o2::constants::physics::MassOmegaC0); - } + fillParticle(mcParticles, collsWithMcLable); } } @@ -1010,14 +1065,15 @@ struct HfTreeCreatorToXiPiQa { //*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*// //*~~~~~~~MC with KFParticle~~~~~~~~*// //*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*// - void processKfMcXic0(MyEventTable const& collisions, + void processKfMcXic0(MyEventTableWithMcLabels const& collsWithMcLable, + aod::McCollisions const&, MyTrackTable const&, - soa::Join const& candidates, + MyCandTableXic0McKf const& candidates, MatchedGenXiPi const& mcParticles) { // Filling event properties - rowEv.reserve(collisions.size()); - for (const auto& collision : collisions) { + rowEv.reserve(collsWithMcLable.size()); + for (const auto& collision : collsWithMcLable) { fillEvent(collision, zPvCut); } @@ -1030,20 +1086,19 @@ struct HfTreeCreatorToXiPiQa { // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - for (const auto& particle : mcParticles) { - fillParticle(particle, o2::constants::physics::MassXiC0); - } + fillParticle(mcParticles, collsWithMcLable); } } - void processKfMcXic0WithFT0C(MyEventTableWithFT0C const& collisions, + void processKfMcXic0WithFT0C(MyEventTableWithMcLabels const& collsWithMcLable, + McCollisionsCentFT0Cs const&, MyTrackTable const&, - soa::Join const& candidates, + MyCandTableXic0McKf const& candidates, MatchedGenXiPi const& mcParticles) { // Filling event properties - rowEv.reserve(collisions.size()); - for (const auto& collision : collisions) { + rowEv.reserve(collsWithMcLable.size()); + for (const auto& collision : collsWithMcLable) { fillEvent(collision, zPvCut); } @@ -1056,20 +1111,19 @@ struct HfTreeCreatorToXiPiQa { // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - for (const auto& particle : mcParticles) { - fillParticle(particle, o2::constants::physics::MassXiC0); - } + fillParticle(mcParticles, collsWithMcLable); } } - void processKfMcXic0WithFT0M(MyEventTableWithFT0M const& collisions, + void processKfMcXic0WithFT0M(MyEventTableWithMcLabels const& collsWithMcLable, + McCollisionsCentFT0Ms const&, MyTrackTable const&, - soa::Join const& candidates, + MyCandTableXic0McKf const& candidates, MatchedGenXiPi const& mcParticles) { // Filling event properties - rowEv.reserve(collisions.size()); - for (const auto& collision : collisions) { + rowEv.reserve(collsWithMcLable.size()); + for (const auto& collision : collsWithMcLable) { fillEvent(collision, zPvCut); } @@ -1082,20 +1136,19 @@ struct HfTreeCreatorToXiPiQa { // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - for (const auto& particle : mcParticles) { - fillParticle(particle, o2::constants::physics::MassXiC0); - } + fillParticle(mcParticles, collsWithMcLable); } } - void processKfMcXic0WithNTracksPV(MyEventTableWithNTracksPV const& collisions, + void processKfMcXic0WithNTracksPV(MyEventTableWithMcLabels const& collsWithMcLable, + aod::McCollisions const&, MyTrackTable const&, - soa::Join const& candidates, + MyCandTableXic0McKf const& candidates, MatchedGenXiPi const& mcParticles) { // Filling event properties - rowEv.reserve(collisions.size()); - for (const auto& collision : collisions) { + rowEv.reserve(collsWithMcLable.size()); + for (const auto& collision : collsWithMcLable) { fillEvent(collision, zPvCut); } @@ -1108,9 +1161,7 @@ struct HfTreeCreatorToXiPiQa { // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - for (const auto& particle : mcParticles) { - fillParticle(particle, o2::constants::physics::MassXiC0); - } + fillParticle(mcParticles, collsWithMcLable); } } From e6ff3e294a2a13e4936ac70fefe7c22324fef44c Mon Sep 17 00:00:00 2001 From: Jinhyun Park Date: Tue, 9 Jun 2026 17:48:06 +0900 Subject: [PATCH 2/5] Delete unused lines --- PWGHF/TableProducer/treeCreatorToXiPiQa.cxx | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/PWGHF/TableProducer/treeCreatorToXiPiQa.cxx b/PWGHF/TableProducer/treeCreatorToXiPiQa.cxx index 71e626c8918..40b8fc52298 100644 --- a/PWGHF/TableProducer/treeCreatorToXiPiQa.cxx +++ b/PWGHF/TableProducer/treeCreatorToXiPiQa.cxx @@ -222,7 +222,6 @@ DECLARE_SOA_COLUMN(ParticlePdg, particlePdg, int); DECLARE_SOA_COLUMN(MaxNumContrib, maxNumContrib, int); DECLARE_SOA_COLUMN(NRecoColl, nRecoColl, int); DECLARE_SOA_COLUMN(PtGenB, ptGenB, float); -DECLARE_SOA_COLUMN(IsSel8RecoColl, isSel8RecoColl, bool); } // namespace full DECLARE_SOA_TABLE(HfToXiPiEvs, "AOD", "HFTOXIPIEV", @@ -652,21 +651,6 @@ struct HfTreeCreatorToXiPiQa { } } - #if 0 - template - void fillParticle(const T& particle) - { - rowCandidateParticles(RecoDecay::m(particle.pVector(), particle.e()), - particle.pt(), - particle.eta(), - particle.phi(), - particle.rapidityCharmBaryonGen(), - particle.flagMcMatchGen(), - particle.originMcGen(), - particle.pdgCode()); - } - #endif - template void fillParticle(const CandType& mcParticles, const CollType& collisions) { From 270610d2d5029509423daad2bbb911af8c56a947 Mon Sep 17 00:00:00 2001 From: ALICE Action Bot Date: Tue, 9 Jun 2026 09:02:11 +0000 Subject: [PATCH 3/5] Please consider the following formatting changes --- PWGHF/TableProducer/treeCreatorToXiPiQa.cxx | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/PWGHF/TableProducer/treeCreatorToXiPiQa.cxx b/PWGHF/TableProducer/treeCreatorToXiPiQa.cxx index 40b8fc52298..6c95882b08d 100644 --- a/PWGHF/TableProducer/treeCreatorToXiPiQa.cxx +++ b/PWGHF/TableProducer/treeCreatorToXiPiQa.cxx @@ -353,7 +353,7 @@ struct HfTreeCreatorToXiPiQa { using MyEventTableWithMcLabels = soa::Join; using MatchedGenXiPi = soa::Filtered>; - + using McCollisionsCentFT0Cs = soa::Join; using McCollisionsCentFT0Ms = soa::Join; @@ -692,7 +692,7 @@ struct HfTreeCreatorToXiPiQa { //*~~~~~~~Data with DCAFitter~~~~~~~~*// //*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*// - void processDataFull(MyEventTable const& collisions, + void processDataFull(MyEventTable const& collisions, MyTrackTable const&, MyCandTableDca const& candidates) { @@ -709,7 +709,7 @@ struct HfTreeCreatorToXiPiQa { } } - void processDataLite(MyEventTable const& collisions, + void processDataLite(MyEventTable const& collisions, MyTrackTable const&, MyCandTableDca const& candidates) { @@ -726,7 +726,7 @@ struct HfTreeCreatorToXiPiQa { } } - void processDataLiteWithFT0M(MyEventTableWithFT0M const& collisions, + void processDataLiteWithFT0M(MyEventTableWithFT0M const& collisions, MyTrackTable const&, MyCandTableDca const& candidates) { @@ -760,7 +760,7 @@ struct HfTreeCreatorToXiPiQa { } } - void processDataLiteWithNTracksPV(MyEventTableWithNTracksPV const& collisions, + void processDataLiteWithNTracksPV(MyEventTableWithNTracksPV const& collisions, MyTrackTable const&, MyCandTableDca const& candidates) { @@ -786,7 +786,7 @@ struct HfTreeCreatorToXiPiQa { //*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*// //*~~~~~~~Data with KFParticle~~~~~~~~*// //*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*// - void processKfData(MyEventTable const& collisions, + void processKfData(MyEventTable const& collisions, MyTrackTable const&, MyCandTableKf const& candidates) { @@ -803,7 +803,7 @@ struct HfTreeCreatorToXiPiQa { } } - void processKfDataWithFT0M(MyEventTableWithFT0M const& collisions, + void processKfDataWithFT0M(MyEventTableWithFT0M const& collisions, MyTrackTable const&, MyCandTableKf const& candidates) { @@ -820,7 +820,7 @@ struct HfTreeCreatorToXiPiQa { } } - void processKfDataWithFT0C(MyEventTableWithFT0C const& collisions, + void processKfDataWithFT0C(MyEventTableWithFT0C const& collisions, MyTrackTable const&, MyCandTableKf const& candidates) { @@ -837,7 +837,7 @@ struct HfTreeCreatorToXiPiQa { } } - void processKfDataWithNTracksPV(MyEventTableWithNTracksPV const& collisions, + void processKfDataWithNTracksPV(MyEventTableWithNTracksPV const& collisions, MyTrackTable const&, MyCandTableKf const& candidates) { From 8f5c1bf3d8bc6e4987d36df836b405387f10a1b5 Mon Sep 17 00:00:00 2001 From: Jinhyun Park Date: Tue, 9 Jun 2026 23:46:27 +0900 Subject: [PATCH 4/5] Updated naming schemes --- PWGHF/TableProducer/treeCreatorToXiPiQa.cxx | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/PWGHF/TableProducer/treeCreatorToXiPiQa.cxx b/PWGHF/TableProducer/treeCreatorToXiPiQa.cxx index 6c95882b08d..892fe24248f 100644 --- a/PWGHF/TableProducer/treeCreatorToXiPiQa.cxx +++ b/PWGHF/TableProducer/treeCreatorToXiPiQa.cxx @@ -219,7 +219,7 @@ DECLARE_SOA_COLUMN(MassV0Chi2OverNdf, massV0Chi2OverNdf, float); DECLARE_SOA_COLUMN(MassCascChi2OverNdf, massCascChi2OverNdf, float); // MC DECLARE_SOA_COLUMN(ParticlePdg, particlePdg, int); -DECLARE_SOA_COLUMN(MaxNumContrib, maxNumContrib, int); +DECLARE_SOA_COLUMN(NContribMax, nContribMax, int); DECLARE_SOA_COLUMN(NRecoColl, nRecoColl, int); DECLARE_SOA_COLUMN(PtGenB, ptGenB, float); } // namespace full @@ -322,7 +322,7 @@ DECLARE_SOA_TABLE(HfCandToXiPiGen, "AOD", "HFCANDTOXIPIGEN", full::FlagMcMatchRec, full::OriginRec, full::ParticlePdg, - full::MaxNumContrib, + full::NContribMax, full::NRecoColl, full::PtGenB) } // namespace o2::aod @@ -659,11 +659,11 @@ struct HfTreeCreatorToXiPiQa { auto ptGen = particle.pt(); auto yGen = particle.rapidityCharmBaryonGen(); - int maxNumContrib = 0; + int nContribMax = 0; auto mcCollision = particle.template mcCollision_as(); const auto& recoCollsPerMcColl = collisions.sliceBy(colPerMcCollision, mcCollision.globalIndex()); for (const auto& recoCol : recoCollsPerMcColl) { - maxNumContrib = recoCol.numContrib() > maxNumContrib ? recoCol.numContrib() : maxNumContrib; + nContribMax = recoCol.numContrib() > nContribMax ? recoCol.numContrib() : nContribMax; } float ptGenBhad = (particle.originMcGen() == RecoDecay::OriginType::NonPrompt) ? mcParticles.rawIteratorAt(particle.idxBhadMotherPart()).pt() : -999.f; @@ -676,7 +676,7 @@ struct HfTreeCreatorToXiPiQa { particle.flagMcMatchGen(), particle.originMcGen(), particle.pdgCode(), - maxNumContrib, + nContribMax, recoCollsPerMcColl.size(), ptGenBhad); } From e8c57052a9c6e7d3335ae0f397a5a6d34aa7ce22 Mon Sep 17 00:00:00 2001 From: Jinhyun Park Date: Wed, 10 Jun 2026 00:41:20 +0900 Subject: [PATCH 5/5] Updated template arguement --- PWGHF/TableProducer/treeCreatorToXiPiQa.cxx | 24 ++++++++++----------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/PWGHF/TableProducer/treeCreatorToXiPiQa.cxx b/PWGHF/TableProducer/treeCreatorToXiPiQa.cxx index 892fe24248f..9fb1a50a305 100644 --- a/PWGHF/TableProducer/treeCreatorToXiPiQa.cxx +++ b/PWGHF/TableProducer/treeCreatorToXiPiQa.cxx @@ -651,7 +651,7 @@ struct HfTreeCreatorToXiPiQa { } } - template + template void fillParticle(const CandType& mcParticles, const CollType& collisions) { for (const auto& particle : mcParticles) { @@ -884,7 +884,7 @@ struct HfTreeCreatorToXiPiQa { // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - fillParticle(mcParticles, collsWithMcLable); + fillParticle(mcParticles, collsWithMcLable); } } @@ -909,7 +909,7 @@ struct HfTreeCreatorToXiPiQa { // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - fillParticle(mcParticles, collsWithMcLable); + fillParticle(mcParticles, collsWithMcLable); } } @@ -934,7 +934,7 @@ struct HfTreeCreatorToXiPiQa { // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - fillParticle(mcParticles, collsWithMcLable); + fillParticle(mcParticles, collsWithMcLable); } } @@ -959,7 +959,7 @@ struct HfTreeCreatorToXiPiQa { // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - fillParticle(mcParticles, collsWithMcLable); + fillParticle(mcParticles, collsWithMcLable); } } @@ -984,7 +984,7 @@ struct HfTreeCreatorToXiPiQa { // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - fillParticle(mcParticles, collsWithMcLable); + fillParticle(mcParticles, collsWithMcLable); } } @@ -1009,7 +1009,7 @@ struct HfTreeCreatorToXiPiQa { // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - fillParticle(mcParticles, collsWithMcLable); + fillParticle(mcParticles, collsWithMcLable); } } @@ -1034,7 +1034,7 @@ struct HfTreeCreatorToXiPiQa { // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - fillParticle(mcParticles, collsWithMcLable); + fillParticle(mcParticles, collsWithMcLable); } } @@ -1070,7 +1070,7 @@ struct HfTreeCreatorToXiPiQa { // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - fillParticle(mcParticles, collsWithMcLable); + fillParticle(mcParticles, collsWithMcLable); } } @@ -1095,7 +1095,7 @@ struct HfTreeCreatorToXiPiQa { // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - fillParticle(mcParticles, collsWithMcLable); + fillParticle(mcParticles, collsWithMcLable); } } @@ -1120,7 +1120,7 @@ struct HfTreeCreatorToXiPiQa { // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - fillParticle(mcParticles, collsWithMcLable); + fillParticle(mcParticles, collsWithMcLable); } } @@ -1145,7 +1145,7 @@ struct HfTreeCreatorToXiPiQa { // Filling particle properties if requested if (fillGenTable) { rowCandidateParticles.reserve(mcParticles.size()); - fillParticle(mcParticles, collsWithMcLable); + fillParticle(mcParticles, collsWithMcLable); } }