| 66 | } |
| 67 | |
| 68 | UndirectedEdgeBitSet getComponent( const PolylineTopology& topology, UndirectedEdgeId id ) |
| 69 | { |
| 70 | MR_TIMER; |
| 71 | auto unionFindStruct = getUnionFindStructure( topology ); |
| 72 | |
| 73 | int edgeRoot = unionFindStruct.find( id ); |
| 74 | const auto& allRoots = unionFindStruct.roots(); |
| 75 | UndirectedEdgeBitSet res; |
| 76 | res.resize( allRoots.size() ); |
| 77 | for ( auto u : undirectedEdges( topology ) ) |
| 78 | { |
| 79 | if ( allRoots[u] == edgeRoot ) |
| 80 | res.set( u ); |
| 81 | } |
| 82 | return res; |
| 83 | } |
| 84 | |
| 85 | std::pair<std::vector<UndirectedEdgeBitSet>, int> getAllComponents( const PolylineTopology& topology, int maxComponentCount ) |
| 86 | { |
nothing calls this directly
no test coverage detected