@@ -66,6 +66,8 @@ DECLARE_SOA_COLUMN(V0MAntiLambda, v0MAntiLambda, float);
6666DECLARE_SOA_COLUMN (V0MK0Short, v0MK0Short, float );
6767DECLARE_SOA_COLUMN (V0MGamma, v0MGamma, float );
6868DECLARE_SOA_COLUMN (FlagMc, flagMc, int8_t );
69+ DECLARE_SOA_COLUMN (OriginMcRec, originMcRec, int8_t );
70+ DECLARE_SOA_COLUMN (OriginMcGen, originMcGen, int8_t );
6971// Events
7072DECLARE_SOA_COLUMN (IsEventReject, isEventReject, int );
7173DECLARE_SOA_COLUMN (RunNumber, runNumber, int );
@@ -136,7 +138,8 @@ DECLARE_SOA_TABLE(HfCandCascFull, "AOD", "HFCANDCASCFull",
136138 full::Phi,
137139 full::Y,
138140 full::E,
139- full::FlagMc);
141+ full::FlagMc,
142+ full::OriginMcRec);
140143
141144DECLARE_SOA_TABLE (HfCandCascFullEvents, " AOD" , " HFCANDCASCFullE" ,
142145 collision::BCId,
@@ -151,7 +154,8 @@ DECLARE_SOA_TABLE(HfCandCascFullParticles, "AOD", "HFCANDCASCFullP",
151154 full::Eta,
152155 full::Phi,
153156 full::Y,
154- full::FlagMc);
157+ full::FlagMc,
158+ full::OriginMcGen);
155159
156160} // namespace o2::aod
157161
@@ -168,7 +172,7 @@ struct HfTreeCreatorLcToK0sP {
168172 }
169173
170174 template <typename T, typename U>
171- void fillCandidate (const T& candidate, const U& bach, int8_t flagMc)
175+ void fillCandidate (const T& candidate, const U& bach, int8_t flagMc, int8_t originMcRec )
172176 {
173177 rowCandidateFull (
174178 bach.collision ().bcId (),
@@ -235,7 +239,8 @@ struct HfTreeCreatorLcToK0sP {
235239 candidate.phi (),
236240 o2::aod::hf_cand_3prong::yLc (candidate),
237241 o2::aod::hf_cand_3prong::eLc (candidate),
238- flagMc);
242+ flagMc,
243+ originMcRec);
239244 }
240245
241246 template <typename T>
@@ -268,7 +273,7 @@ struct HfTreeCreatorLcToK0sP {
268273 auto bach = candidate.prong0_as <aod::BigTracksPID>(); // bachelor
269274 double pseudoRndm = bach.pt () * 1000 . - (int16_t )(bach.pt () * 1000 );
270275 if (candidate.isSelLcToK0sP () >= 1 && pseudoRndm < downSampleBkgFactor) {
271- fillCandidate (candidate, bach, candidate.flagMcMatchRec ());
276+ fillCandidate (candidate, bach, candidate.flagMcMatchRec (), candidate. originMcRec () );
272277 }
273278 }
274279
@@ -281,8 +286,10 @@ struct HfTreeCreatorLcToK0sP {
281286 particle.pt (),
282287 particle.eta (),
283288 particle.phi (),
284- RecoDecay::y (array{particle.px (), particle.py (), particle.pz ()}, RecoDecay::getMassPDG (particle.pdgCode ())),
285- particle.flagMcMatchGen ());
289+ RecoDecay::y (array{particle.px (), particle.py (), particle.pz ()},
290+ RecoDecay::getMassPDG (particle.pdgCode ())),
291+ particle.flagMcMatchGen (),
292+ particle.originMcGen ());
286293 }
287294 }
288295 }
@@ -305,7 +312,7 @@ struct HfTreeCreatorLcToK0sP {
305312 auto bach = candidate.prong0_as <aod::BigTracksPID>(); // bachelor
306313 double pseudoRndm = bach.pt () * 1000 . - (int16_t )(bach.pt () * 1000 );
307314 if (candidate.isSelLcToK0sP () >= 1 && pseudoRndm < downSampleBkgFactor) {
308- fillCandidate (candidate, bach, 0 );
315+ fillCandidate (candidate, bach, 0 , 0 );
309316 }
310317 }
311318 }
0 commit comments