@@ -699,20 +699,6 @@ struct HfCandidateSelectorToXiPiQa {
699699 statusInvMassCharmBaryon = true ;
700700 }
701701
702- // ML BDT selection
703- if (applyMl) {
704- bool isSelectedMlXic0 = false ;
705- std::vector<float > inputFeaturesXic0 = {};
706- if constexpr (svReco == doDcaFitter) {
707- inputFeaturesXic0 = hfMlResponseDca.getInputFeatures (candidate, trackPiFromLam, trackPiFromCasc, trackPiFromCharm);
708- isSelectedMlXic0 = hfMlResponseDca.isSelectedMl (inputFeaturesXic0, ptCandXic0, outputMlXic0ToXiPi);
709- } else {
710- inputFeaturesXic0 = hfMlResponseKf.getInputFeatures (candidate, trackPiFromLam, trackPiFromCasc, trackPiFromCharm);
711- isSelectedMlXic0 = hfMlResponseKf.isSelectedMl (inputFeaturesXic0, ptCandXic0, outputMlXic0ToXiPi);
712- }
713- hfMlToXiPi (outputMlXic0ToXiPi);
714- }
715-
716702 // Fill in selection result
717703 if constexpr (svReco == doDcaFitter) {
718704 hfSelToXiPi (statusPidLambda, statusPidCascade, statusPidCharmBaryon, statusInvMassLambda, statusInvMassCascade, statusInvMassCharmBaryon, resultSelections, infoTpcStored, infoTofStored,
@@ -729,6 +715,25 @@ struct HfCandidateSelectorToXiPiQa {
729715 trackPiFromCharm.tofNSigmaPi (), trackPiFromCasc.tofNSigmaPi (), trackPiFromLam.tofNSigmaPi (), trackPrFromLam.tofNSigmaPr ());
730716 }
731717
718+ // ML BDT selection if required
719+ if (applyMl) {
720+ bool isSelectedMlXic0 = false ;
721+ std::vector<float > inputFeaturesXic0 = {};
722+ if constexpr (svReco == doDcaFitter) {
723+ inputFeaturesXic0 = hfMlResponseDca.getInputFeatures (candidate, trackPiFromLam, trackPiFromCasc, trackPiFromCharm);
724+ isSelectedMlXic0 = hfMlResponseDca.isSelectedMl (inputFeaturesXic0, ptCandXic0, outputMlXic0ToXiPi);
725+ } else {
726+ inputFeaturesXic0 = hfMlResponseKf.getInputFeatures (candidate, trackPiFromLam, trackPiFromCasc, trackPiFromCharm);
727+ isSelectedMlXic0 = hfMlResponseKf.isSelectedMl (inputFeaturesXic0, ptCandXic0, outputMlXic0ToXiPi);
728+ }
729+
730+ hfMlToXiPi (outputMlXic0ToXiPi);
731+
732+ if (!isSelectedMlXic0) {
733+ continue ;
734+ }
735+ }
736+
732737 // Fill in invariant mass histogram
733738 if (resultSelections) {
734739 registry.fill (HIST (" hInvMassCharmBaryonWoPidInvMassCut" ), invMassCharmBaryon);
0 commit comments