| 1839 | } |
| 1840 | |
| 1841 | void TxGraphImpl::SplitAll(int up_to_level) noexcept |
| 1842 | { |
| 1843 | Assume(up_to_level >= 0 && up_to_level <= GetTopLevel()); |
| 1844 | // Before splitting all Cluster, first make sure all removals are applied. |
| 1845 | ApplyRemovals(up_to_level); |
| 1846 | for (int level = 0; level <= up_to_level; ++level) { |
| 1847 | for (auto quality : {QualityLevel::NEEDS_SPLIT_FIX, QualityLevel::NEEDS_SPLIT}) { |
| 1848 | auto& queue = GetClusterSet(level).m_clusters[int(quality)]; |
| 1849 | while (!queue.empty()) { |
| 1850 | Split(*queue.back().get(), level); |
| 1851 | } |
| 1852 | } |
| 1853 | } |
| 1854 | } |
| 1855 | |
| 1856 | void TxGraphImpl::GroupClusters(int level) noexcept |
| 1857 | { |