@@ -101,7 +101,7 @@ struct HfDerivedDataCreatorXicToXiPiPi {
101101 using THfCandDaughtersMl = aod::Cascades;
102102
103103 Filter filterSelectCandidates = (aod::hf_sel_candidate_xic::isSelXicToXiPiPi & static_cast <int8_t >(BIT(o2::aod::hf_sel_candidate_xic::XicToXiPiPiSelectionStep::RecoMl - 1 ))) != 0 ;
104- Filter filterMcGenMatching = nabs( aod::hf_cand_xic_to_xi_pi_pi::flagMcMatchGen) == static_cast < int8_t >(DecayType::XicToXiPiPi) ;
104+ Filter filterMcGenMatching = aod::hf_cand_xic_to_xi_pi_pi::flagMcMatchGen != 0 ;
105105
106106 Preslice<SelectedCandidates> candidatesPerCollision = aod::hf_cand::collisionId;
107107 Preslice<SelectedCandidatesMc> candidatesMcPerCollision = aod::hf_cand::collisionId;
@@ -115,10 +115,10 @@ struct HfDerivedDataCreatorXicToXiPiPi {
115115 Partition<SelectedCandidatesMl> candidatesMlAll = aod::hf_sel_candidate_xic::isSelXicToXiPiPi >= 0 ;
116116 Partition<SelectedCandidatesMcMl> candidatesMcMlAll = aod::hf_sel_candidate_xic::isSelXicToXiPiPi >= 0 ;
117117 // partitions for signal and background
118- Partition<SelectedCandidatesMc> candidatesMcSig = nabs( aod::hf_cand_xic_to_xi_pi_pi::flagMcMatchRec) == static_cast < int8_t >(DecayType::XicToXiPiPi) ;
119- Partition<SelectedCandidatesMc> candidatesMcBkg = nabs( aod::hf_cand_xic_to_xi_pi_pi::flagMcMatchRec) != static_cast < int8_t >(DecayType::XicToXiPiPi) ;
120- Partition<SelectedCandidatesMcMl> candidatesMcMlSig = nabs( aod::hf_cand_xic_to_xi_pi_pi::flagMcMatchRec) == static_cast < int8_t >(DecayType::XicToXiPiPi) ;
121- Partition<SelectedCandidatesMcMl> candidatesMcMlBkg = nabs( aod::hf_cand_xic_to_xi_pi_pi::flagMcMatchRec) != static_cast < int8_t >(DecayType::XicToXiPiPi) ;
118+ Partition<SelectedCandidatesMc> candidatesMcSig = aod::hf_cand_xic_to_xi_pi_pi::flagMcMatchRec != 0 ;
119+ Partition<SelectedCandidatesMc> candidatesMcBkg = aod::hf_cand_xic_to_xi_pi_pi::flagMcMatchRec == 0 ;
120+ Partition<SelectedCandidatesMcMl> candidatesMcMlSig = aod::hf_cand_xic_to_xi_pi_pi::flagMcMatchRec != 0 ;
121+ Partition<SelectedCandidatesMcMl> candidatesMcMlBkg = aod::hf_cand_xic_to_xi_pi_pi::flagMcMatchRec == 0 ;
122122
123123 void init (InitContext const &)
124124 {
@@ -268,7 +268,7 @@ struct HfDerivedDataCreatorXicToXiPiPi {
268268 flagMcRec = candidate.flagMcMatchRec ();
269269 origin = candidate.originMcRec ();
270270 if constexpr (onlyBkg) {
271- if (std::abs (flagMcRec) == DecayType::XicToXiPiPi) {
271+ if (TESTBIT ( std::abs (flagMcRec), DecayType::XicToXiPiPi) ) {
272272 continue ;
273273 }
274274 if (downSampleBkgFactor < 1 .) {
@@ -279,23 +279,19 @@ struct HfDerivedDataCreatorXicToXiPiPi {
279279 }
280280 }
281281 if constexpr (onlySig) {
282- if (std::abs (flagMcRec) != DecayType::XicToXiPiPi) {
282+ if (! TESTBIT ( std::abs (flagMcRec), DecayType::XicToXiPiPi) ) {
283283 continue ;
284284 }
285285 }
286286 }
287- // auto prongPi0FromXic = candidate.template pi0_as<TracksWPid>();
288- double y = hfHelper.yXic (candidate);
289287 float massXicToXiPiPi = candidate.invMassXicPlus ();
290288 double ct = hfHelper.ctXic (candidate);
289+ double y = hfHelper.yXic (candidate);
291290 std::vector<float > mlScoreXicToXiPiPi;
292- // float mlScoreXicToXiPiPi{-1.f};
293- // std::vector<float> mlScoresXi;
294- // bool isXi = prongPi0FromXic.sign() < 0;
295291 if constexpr (isMl) {
296292 std::copy (candidate.mlProbXicToXiPiPi ().begin (), candidate.mlProbXicToXiPiPi ().end (), std::back_inserter (mlScoreXicToXiPiPi));
297293 }
298- // flag = 0 for Xi pi-, flag = 1 for Xibar pi+
294+ // FIXME: Remove candFlag?
299295 fillTablesCandidate (candidate, 1 , massXicToXiPiPi, ct, y, flagMcRec, origin, mlScoreXicToXiPiPi);
300296 }
301297 }
0 commit comments