mirror of
https://github.com/VectorCamp/vectorscan.git
synced 2025-10-10 08:12:21 +03:00
ng_calc_components: filter vertices from ug
This commit is contained in:
committed by
Matthew Barr
parent
4b3ff085d3
commit
546091f819
@@ -124,6 +124,22 @@ bad_edge_filter<EdgeSet> make_bad_edge_filter(const EdgeSet *e) {
|
||||
return bad_edge_filter<EdgeSet>(e);
|
||||
}
|
||||
|
||||
/** \brief vertex graph filter. */
|
||||
template<typename VertexSet>
|
||||
struct bad_vertex_filter {
|
||||
bad_vertex_filter() = default;
|
||||
explicit bad_vertex_filter(const VertexSet *bad_v) : bad_vertices(bad_v) {}
|
||||
bool operator()(const typename VertexSet::value_type &v) const {
|
||||
return !contains(*bad_vertices, v); /* keep vertices not in bad set */
|
||||
}
|
||||
const VertexSet *bad_vertices = nullptr;
|
||||
};
|
||||
|
||||
template<typename VertexSet>
|
||||
bad_vertex_filter<VertexSet> make_bad_vertex_filter(const VertexSet *v) {
|
||||
return bad_vertex_filter<VertexSet>(v);
|
||||
}
|
||||
|
||||
/** Visitor that records back edges */
|
||||
template <typename BackEdgeSet>
|
||||
class BackEdges : public boost::default_dfs_visitor {
|
||||
|
Reference in New Issue
Block a user