void generateReactantCombinations(const VectVectMatchVectType &matchesByReactant, VectVectMatchVectType &matchesPerProduct) { matchesPerProduct.clear(); VectMatchVectType tmp; tmp.clear(); tmp.resize(matchesByReactant.size()); recurseOverReactantCombinations(matchesByReactant,matchesPerProduct,0,tmp); } // end of generateReactantCombinations()
void generateReactantCombinations( const VectVectMatchVectType &matchesByReactant, VectVectMatchVectType &matchesPerProduct, unsigned int maxProducts) { matchesPerProduct.clear(); VectMatchVectType tmp; tmp.clear(); tmp.resize(matchesByReactant.size()); if (!recurseOverReactantCombinations(matchesByReactant, matchesPerProduct, 0, tmp, maxProducts)) { BOOST_LOG(rdWarningLog) << "Maximum product count hit " << maxProducts << ", stopping reaction early...\n"; } } // end of generateReactantCombinations()