@@ -489,7 +489,7 @@ struct femtoUniversePairTaskTrackCascadeExtended {
489489 }
490490 if (confIsCPR.value ) {
491491 if (pairCloseRejection.isClosePair (p1, p2, parts, magFieldTesla, femto_universe_container::EventType::same)) {
492- return ;
492+ continue ;
493493 }
494494 }
495495
@@ -723,8 +723,8 @@ struct femtoUniversePairTaskTrackCascadeExtended {
723723 continue ;
724724 }
725725 if (confIsCPR.value ) {
726- if (pairCloseRejection.isClosePair (p1, p2, parts, magFieldTesla1, femto_universe_container::EventType::same )) {
727- return ;
726+ if (pairCloseRejection.isClosePair (p1, p2, parts, magFieldTesla1, femto_universe_container::EventType::mixed )) {
727+ continue ;
728728 }
729729 }
730730
@@ -792,14 +792,14 @@ struct femtoUniversePairTaskTrackCascadeExtended {
792792 // / Child particles must pass this condition to be selected
793793 if constexpr (std::experimental::is_detected<hasSigma, typename TableType::iterator>::value) {
794794 if (!isParticleTPC (posChild1, CascChildTable[confCascType1][0 ]) || !isParticleTPC (negChild1, CascChildTable[confCascType1][1 ]) || !isParticleTPC (bachelor1, CascChildTable[confCascType1][2 ]))
795- return ;
795+ continue ;
796796 if ((!confCheckTOFBachelorOnly && (!isParticleTOF (posChild1, CascChildTable[confCascType1][0 ]) || !isParticleTOF (negChild1, CascChildTable[confCascType1][1 ]))) || !isParticleTOF (bachelor1, CascChildTable[confCascType1][2 ]))
797- return ;
797+ continue ;
798798 } else {
799799 if ((posChild1.pidCut () & (1u << CascChildTable[confCascType1][0 ])) == 0 || (negChild1.pidCut () & (1u << CascChildTable[confCascType1][1 ])) == 0 || (bachelor1.pidCut () & (1u << CascChildTable[confCascType1][2 ])) == 0 )
800- return ;
800+ continue ;
801801 if ((!confCheckTOFBachelorOnly && ((posChild1.pidCut () & (8u << CascChildTable[confCascType1][0 ])) == 0 || (negChild1.pidCut () & (8u << CascChildTable[confCascType1][1 ])) == 0 )) || (bachelor1.pidCut () & (8u << CascChildTable[confCascType1][2 ])) == 0 )
802- return ;
802+ continue ;
803803 }
804804
805805 const auto & posChild2 = parts.iteratorAt (p2.globalIndex () - 3 - parts.begin ().globalIndex ());
@@ -808,14 +808,14 @@ struct femtoUniversePairTaskTrackCascadeExtended {
808808 // / Child particles must pass this condition to be selected
809809 if constexpr (std::experimental::is_detected<hasSigma, typename TableType::iterator>::value) {
810810 if (!isParticleTPC (posChild2, CascChildTable[confCascType2][0 ]) || !isParticleTPC (negChild2, CascChildTable[confCascType2][1 ]) || !isParticleTPC (bachelor2, CascChildTable[confCascType2][2 ]))
811- return ;
811+ continue ;
812812 if ((!confCheckTOFBachelorOnly && (!isParticleTOF (posChild2, CascChildTable[confCascType2][0 ]) || !isParticleTOF (negChild2, CascChildTable[confCascType2][1 ]))) || !isParticleTOF (bachelor2, CascChildTable[confCascType2][2 ]))
813- return ;
813+ continue ;
814814 } else {
815815 if ((posChild2.pidCut () & (1u << CascChildTable[confCascType1][0 ])) == 0 || (negChild2.pidCut () & (1u << CascChildTable[confCascType1][1 ])) == 0 || (bachelor2.pidCut () & (1u << CascChildTable[confCascType1][2 ])) == 0 )
816- return ;
816+ continue ;
817817 if ((!confCheckTOFBachelorOnly && ((posChild2.pidCut () & (8u << CascChildTable[confCascType1][0 ])) == 0 || (negChild2.pidCut () & (8u << CascChildTable[confCascType1][1 ])) == 0 )) || (bachelor2.pidCut () & (8u << CascChildTable[confCascType1][2 ])) == 0 )
818- return ;
818+ continue ;
819819 }
820820 // track cleaning
821821 if (!pairCleanerCasc.isCleanPair (p1, p2, parts)) {
0 commit comments