@@ -77,26 +77,26 @@ DECLARE_SOA_COLUMN(ImpactParCascZ, impactParCascZ, float);
7777DECLARE_SOA_COLUMN (ImpactParPiFromCharmBaryonZ, impactParPiFromCharmBaryonZ, float );
7878DECLARE_SOA_COLUMN (ErrImpactParCascXY, errImpactParCascXY, float );
7979DECLARE_SOA_COLUMN (ErrImpactParPiFromCharmBaryonXY, errImpactParPiFromCharmBaryonXY, float );
80- DECLARE_SOA_COLUMN (InvMassLambda, invMassLambda, double );
81- DECLARE_SOA_COLUMN (InvMassCascade, invMassCascade, double );
82- DECLARE_SOA_COLUMN (InvMassCharmBaryon, invMassCharmBaryon, double );
83- DECLARE_SOA_COLUMN (CosPAV0, cosPAV0, double );
84- DECLARE_SOA_COLUMN (CosPACharmBaryon, cosPACharmBaryon, double );
85- DECLARE_SOA_COLUMN (CosPACasc, cosPACasc, double );
86- DECLARE_SOA_COLUMN (CosPAXYV0, cosPAXYV0, double );
87- DECLARE_SOA_COLUMN (CosPAXYCharmBaryon, cosPAXYCharmBaryon, double );
88- DECLARE_SOA_COLUMN (CosPAXYCasc, cosPAXYCasc, double );
89- DECLARE_SOA_COLUMN (CTauOmegac, ctauOmegac, double );
90- DECLARE_SOA_COLUMN (CTauCascade, ctauCascade, double );
91- DECLARE_SOA_COLUMN (CTauV0, ctauV0, double );
92- DECLARE_SOA_COLUMN (CTauXic, ctauXic, double );
93- DECLARE_SOA_COLUMN (EtaV0PosDau, etaV0PosDau, double );
94- DECLARE_SOA_COLUMN (EtaV0NegDau, etaV0NegDau, double );
95- DECLARE_SOA_COLUMN (EtaPiFromCasc, etaPiFromCasc, double );
96- DECLARE_SOA_COLUMN (EtaPiFromCharmBaryon, etaPiFromCharmBaryon, double );
97- DECLARE_SOA_COLUMN (EtaCharmBaryon, etaCharmBaryon, double );
98- DECLARE_SOA_COLUMN (EtaCascade, etaCascade, double );
99- DECLARE_SOA_COLUMN (EtaV0, etaV0, double );
80+ DECLARE_SOA_COLUMN (InvMassLambda, invMassLambda, float );
81+ DECLARE_SOA_COLUMN (InvMassCascade, invMassCascade, float );
82+ DECLARE_SOA_COLUMN (InvMassCharmBaryon, invMassCharmBaryon, float );
83+ DECLARE_SOA_COLUMN (CosPAV0, cosPAV0, float );
84+ DECLARE_SOA_COLUMN (CosPACharmBaryon, cosPACharmBaryon, float );
85+ DECLARE_SOA_COLUMN (CosPACasc, cosPACasc, float );
86+ DECLARE_SOA_COLUMN (CosPAXYV0, cosPAXYV0, float );
87+ DECLARE_SOA_COLUMN (CosPAXYCharmBaryon, cosPAXYCharmBaryon, float );
88+ DECLARE_SOA_COLUMN (CosPAXYCasc, cosPAXYCasc, float );
89+ DECLARE_SOA_COLUMN (CTauOmegac, ctauOmegac, float );
90+ DECLARE_SOA_COLUMN (CTauCascade, ctauCascade, float );
91+ DECLARE_SOA_COLUMN (CTauV0, ctauV0, float );
92+ DECLARE_SOA_COLUMN (CTauXic, ctauXic, float );
93+ DECLARE_SOA_COLUMN (EtaV0PosDau, etaV0PosDau, float );
94+ DECLARE_SOA_COLUMN (EtaV0NegDau, etaV0NegDau, float );
95+ DECLARE_SOA_COLUMN (EtaPiFromCasc, etaPiFromCasc, float );
96+ DECLARE_SOA_COLUMN (EtaPiFromCharmBaryon, etaPiFromCharmBaryon, float );
97+ DECLARE_SOA_COLUMN (EtaCharmBaryon, etaCharmBaryon, float );
98+ DECLARE_SOA_COLUMN (EtaCascade, etaCascade, float );
99+ DECLARE_SOA_COLUMN (EtaV0, etaV0, float );
100100DECLARE_SOA_COLUMN (DcaXYToPvV0Dau0, dcaXYToPvV0Dau0, float );
101101DECLARE_SOA_COLUMN (DcaXYToPvV0Dau1, dcaXYToPvV0Dau1, float );
102102DECLARE_SOA_COLUMN (DcaXYToPvCascDau, dcaXYToPvCascDau, float );
@@ -106,9 +106,9 @@ DECLARE_SOA_COLUMN(DcaZToPvCascDau, dcaZToPvCascDau, float);
106106DECLARE_SOA_COLUMN (DcaCascDau, dcaCascDau, float );
107107DECLARE_SOA_COLUMN (DcaV0Dau, dcaV0Dau, float );
108108DECLARE_SOA_COLUMN (DcaCharmBaryonDau, dcaCharmBaryonDau, float );
109- DECLARE_SOA_COLUMN (DecLenCharmBaryon, decLenCharmBaryon, double );
110- DECLARE_SOA_COLUMN (DecLenCascade, decLenCascade, double );
111- DECLARE_SOA_COLUMN (DecLenV0, decLenV0, double );
109+ DECLARE_SOA_COLUMN (DecLenCharmBaryon, decLenCharmBaryon, float );
110+ DECLARE_SOA_COLUMN (DecLenCascade, decLenCascade, float );
111+ DECLARE_SOA_COLUMN (DecLenV0, decLenV0, float );
112112DECLARE_SOA_COLUMN (ErrorDecayLengthCharmBaryon, errorDecayLengthCharmBaryon, float );
113113DECLARE_SOA_COLUMN (ErrorDecayLengthXYCharmBaryon, errorDecayLengthXYCharmBaryon, float );
114114DECLARE_SOA_COLUMN (NormImpParCascade, normImpParCascade, double );
@@ -218,6 +218,9 @@ struct HfTreeCreatorToXiPi {
218218
219219 void init (InitContext const &)
220220 {
221+ if ((doprocessMcLiteXic0 && doprocessMcLiteOmegac0) || (doprocessMcFullXic0 && doprocessMcFullOmegac0)) {
222+ LOGF (fatal, " Both Xic0 and Omegac0 MC processes enabled, please choose ONLY one!" );
223+ }
221224 }
222225
223226 template <typename T>
@@ -254,27 +257,27 @@ struct HfTreeCreatorToXiPi {
254257 candidate.pxCasc (),
255258 candidate.pyCasc (),
256259 candidate.pzCasc (),
257- candidate.pxPiFromCharmBaryon (),
258- candidate.pyPiFromCharmBaryon (),
259- candidate.pzPiFromCharmBaryon (),
260+ candidate.pxBachFromCharmBaryon (),
261+ candidate.pyBachFromCharmBaryon (),
262+ candidate.pzBachFromCharmBaryon (),
260263 candidate.pxLambda (),
261264 candidate.pyLambda (),
262265 candidate.pzLambda (),
263- candidate.pxPiFromCasc (),
264- candidate.pyPiFromCasc (),
265- candidate.pzPiFromCasc (),
266+ candidate.pxBachFromCasc (),
267+ candidate.pyBachFromCasc (),
268+ candidate.pzBachFromCasc (),
266269 candidate.pxPosV0Dau (),
267270 candidate.pyPosV0Dau (),
268271 candidate.pzPosV0Dau (),
269272 candidate.pxNegV0Dau (),
270273 candidate.pyNegV0Dau (),
271274 candidate.pzNegV0Dau (),
272275 candidate.impactParCascXY (),
273- candidate.impactParPiFromCharmBaryonXY (),
276+ candidate.impactParBachFromCharmBaryonXY (),
274277 candidate.impactParCascZ (),
275- candidate.impactParPiFromCharmBaryonZ (),
278+ candidate.impactParBachFromCharmBaryonZ (),
276279 candidate.errImpactParCascXY (),
277- candidate.errImpactParPiFromCharmBaryonXY (),
280+ candidate.errImpactParBachFromCharmBaryonXY (),
278281 candidate.invMassLambda (),
279282 candidate.invMassCascade (),
280283 candidate.invMassCharmBaryon (),
@@ -290,8 +293,8 @@ struct HfTreeCreatorToXiPi {
290293 candidate.ctauXic (),
291294 candidate.etaV0PosDau (),
292295 candidate.etaV0NegDau (),
293- candidate.etaPiFromCasc (),
294- candidate.etaPiFromCharmBaryon (),
296+ candidate.etaBachFromCasc (),
297+ candidate.etaBachFromCharmBaryon (),
295298 candidate.etaCharmBaryon (),
296299 candidate.etaCascade (),
297300 candidate.etaV0 (),
@@ -310,10 +313,10 @@ struct HfTreeCreatorToXiPi {
310313 candidate.errorDecayLengthCharmBaryon (),
311314 candidate.errorDecayLengthXYCharmBaryon (),
312315 candidate.impactParCascXY () / candidate.errImpactParCascXY (),
313- candidate.impactParPiFromCharmBaryonXY () / candidate.errImpactParPiFromCharmBaryonXY (),
316+ candidate.impactParBachFromCharmBaryonXY () / candidate.errImpactParBachFromCharmBaryonXY (),
314317 candidate.decLenCharmBaryon () / candidate.errorDecayLengthCharmBaryon (),
315- candidate.template piFromCharmBaryon_as <MyTrackTable>().isGlobalTrackWoDCA (),
316- candidate.template piFromCharmBaryon_as <MyTrackTable>().itsNCls (),
318+ candidate.template bachelorFromCharmBaryon_as <MyTrackTable>().isGlobalTrackWoDCA (),
319+ candidate.template bachelorFromCharmBaryon_as <MyTrackTable>().itsNCls (),
317320 candidate.statusPidLambda (),
318321 candidate.statusPidCascade (),
319322 candidate.statusPidCharmBaryon (),
@@ -361,29 +364,29 @@ struct HfTreeCreatorToXiPi {
361364 candidate.pxCharmBaryon (),
362365 candidate.pyCharmBaryon (),
363366 candidate.pzCharmBaryon (),
364- candidate.pxPiFromCharmBaryon (),
365- candidate.pyPiFromCharmBaryon (),
366- candidate.pzPiFromCharmBaryon (),
367- candidate.pxPiFromCasc (),
368- candidate.pyPiFromCasc (),
369- candidate.pzPiFromCasc (),
367+ candidate.pxBachFromCharmBaryon (),
368+ candidate.pyBachFromCharmBaryon (),
369+ candidate.pzBachFromCharmBaryon (),
370+ candidate.pxBachFromCasc (),
371+ candidate.pyBachFromCasc (),
372+ candidate.pzBachFromCasc (),
370373 candidate.pxPosV0Dau (),
371374 candidate.pyPosV0Dau (),
372375 candidate.pzPosV0Dau (),
373376 candidate.pxNegV0Dau (),
374377 candidate.pyNegV0Dau (),
375378 candidate.pzNegV0Dau (),
376379 candidate.impactParCascXY (),
377- candidate.impactParPiFromCharmBaryonXY (),
380+ candidate.impactParBachFromCharmBaryonXY (),
378381 candidate.errImpactParCascXY (),
379- candidate.errImpactParPiFromCharmBaryonXY (),
382+ candidate.errImpactParBachFromCharmBaryonXY (),
380383 candidate.invMassLambda (),
381384 candidate.invMassCascade (),
382385 candidate.invMassCharmBaryon (),
383386 candidate.etaV0PosDau (),
384387 candidate.etaV0NegDau (),
385- candidate.etaPiFromCasc (),
386- candidate.etaPiFromCharmBaryon (),
388+ candidate.etaBachFromCasc (),
389+ candidate.etaBachFromCharmBaryon (),
387390 candidate.dcaXYToPvV0Dau0 (),
388391 candidate.dcaXYToPvV0Dau1 (),
389392 candidate.dcaXYToPvCascDau (),
@@ -392,9 +395,9 @@ struct HfTreeCreatorToXiPi {
392395 candidate.dcaCharmBaryonDau (),
393396 candidate.errorDecayLengthCharmBaryon (),
394397 candidate.impactParCascXY () / candidate.errImpactParCascXY (),
395- candidate.impactParPiFromCharmBaryonXY () / candidate.errImpactParPiFromCharmBaryonXY (),
396- candidate.template piFromCharmBaryon_as <MyTrackTable>().isGlobalTrackWoDCA (),
397- candidate.template piFromCharmBaryon_as <MyTrackTable>().itsNCls (),
398+ candidate.impactParBachFromCharmBaryonXY () / candidate.errImpactParBachFromCharmBaryonXY (),
399+ candidate.template bachelorFromCharmBaryon_as <MyTrackTable>().isGlobalTrackWoDCA (),
400+ candidate.template bachelorFromCharmBaryon_as <MyTrackTable>().itsNCls (),
398401 candidate.pidTpcInfoStored (),
399402 candidate.pidTofInfoStored (),
400403 candidate.tpcNSigmaPiFromCharmBaryon (),
@@ -428,8 +431,25 @@ struct HfTreeCreatorToXiPi {
428431 }
429432 PROCESS_SWITCH (HfTreeCreatorToXiPi, processDataFull, " Process data with full information" , true );
430433
431- void processMcFull (MyEventTable const & collisions, MyTrackTable const &,
432- soa::Join<aod::HfCandToXiPi, aod::HfSelToXiPi, aod::HfToXiPiMCRec> const & candidates)
434+ void processMcFullXic0 (MyEventTable const & collisions, MyTrackTable const &,
435+ soa::Join<aod::HfCandToXiPi, aod::HfSelToXiPi, aod::HfXicToXiPiMCRec> const & candidates)
436+ {
437+ // Filling event properties
438+ rowEv.reserve (collisions.size ());
439+ for (const auto & collision : collisions) {
440+ fillEvent (collision, zPvCut);
441+ }
442+
443+ // Filling candidate properties
444+ rowCandidateFull.reserve (candidates.size ());
445+ for (const auto & candidate : candidates) {
446+ fillCandidate (candidate, candidate.flagMcMatchRec (), candidate.debugMcRec (), candidate.originRec (), candidate.collisionMatched ());
447+ }
448+ }
449+ PROCESS_SWITCH (HfTreeCreatorToXiPi, processMcFullXic0, " Process MC with full information for xic0" , false );
450+
451+ void processMcFullOmegac0 (MyEventTable const & collisions, MyTrackTable const &,
452+ soa::Join<aod::HfCandToXiPi, aod::HfSelToXiPi, aod::HfOmegacToXiPiMCRec> const & candidates)
433453 {
434454 // Filling event properties
435455 rowEv.reserve (collisions.size ());
@@ -443,7 +463,7 @@ struct HfTreeCreatorToXiPi {
443463 fillCandidate (candidate, candidate.flagMcMatchRec (), candidate.debugMcRec (), candidate.originRec (), candidate.collisionMatched ());
444464 }
445465 }
446- PROCESS_SWITCH (HfTreeCreatorToXiPi, processMcFull , " Process MC with full information" , false );
466+ PROCESS_SWITCH (HfTreeCreatorToXiPi, processMcFullOmegac0 , " Process MC with full information for omegac0 " , false );
447467
448468 void processDataLite (MyEventTable const & collisions, MyTrackTable const &,
449469 soa::Join<aod::HfCandToXiPi, aod::HfSelToXiPi> const & candidates)
@@ -462,8 +482,25 @@ struct HfTreeCreatorToXiPi {
462482 }
463483 PROCESS_SWITCH (HfTreeCreatorToXiPi, processDataLite, " Process data and produce lite table version" , false );
464484
465- void processMcLite (MyEventTable const & collisions, MyTrackTable const &,
466- soa::Join<aod::HfCandToXiPi, aod::HfSelToXiPi, aod::HfToXiPiMCRec> const & candidates)
485+ void processMcLiteXic0 (MyEventTable const & collisions, MyTrackTable const &,
486+ soa::Join<aod::HfCandToXiPi, aod::HfSelToXiPi, aod::HfXicToXiPiMCRec> const & candidates)
487+ {
488+ // Filling event properties
489+ rowEv.reserve (collisions.size ());
490+ for (const auto & collision : collisions) {
491+ fillEvent (collision, zPvCut);
492+ }
493+
494+ // Filling candidate properties
495+ rowCandidateLite.reserve (candidates.size ());
496+ for (const auto & candidate : candidates) {
497+ fillCandidateLite (candidate, candidate.flagMcMatchRec (), candidate.originRec (), candidate.collisionMatched ());
498+ }
499+ }
500+ PROCESS_SWITCH (HfTreeCreatorToXiPi, processMcLiteXic0, " Process MC and produce lite table version for xic0" , false );
501+
502+ void processMcLiteOmegac0 (MyEventTable const & collisions, MyTrackTable const &,
503+ soa::Join<aod::HfCandToXiPi, aod::HfSelToXiPi, aod::HfOmegacToXiPiMCRec> const & candidates)
467504 {
468505 // Filling event properties
469506 rowEv.reserve (collisions.size ());
@@ -477,7 +514,7 @@ struct HfTreeCreatorToXiPi {
477514 fillCandidateLite (candidate, candidate.flagMcMatchRec (), candidate.originRec (), candidate.collisionMatched ());
478515 }
479516 }
480- PROCESS_SWITCH (HfTreeCreatorToXiPi, processMcLite , " Process MC and produce lite table version" , false );
517+ PROCESS_SWITCH (HfTreeCreatorToXiPi, processMcLiteOmegac0 , " Process MC and produce lite table version for omegac0 " , false );
481518
482519}; // end of struct
483520
0 commit comments