diff --git a/Mesh/mwis.hpp b/Mesh/mwis.hpp index 9179f207a1b33a457991405f2a11d22c87e56b43..e5177cfb5629e37cfbb1bd1928b8bc172caaaf42 100644 --- a/Mesh/mwis.hpp +++ b/Mesh/mwis.hpp @@ -881,11 +881,17 @@ public: void operator()(edge e, const Graph &g) { _set.insert(boost::target(e, g)); } + + void operator()(vertex v, const Graph &g) { + _set.insert(v); + } }; template<typename Graph, typename WeightMap> lns_fragment<Graph> fragment_selector(const lns_state<Graph, WeightMap> &state) { typedef typename boost::graph_traits<Graph>::vertex_descriptor vertex; + typedef typename boost::graph_traits<Graph>::vertex_iterator vertex_iterator; + typedef typename boost::graph_traits<Graph>::out_edge_iterator out_edge_iterator; if (boost::num_vertices(state.graph) == 0) return lns_fragment<Graph>(std::set<vertex>()); @@ -898,7 +904,7 @@ lns_fragment<Graph> fragment_selector(const lns_state<Graph, WeightMap> &state) std::set<vertex> set; set.insert(v); - set_recorder<Graph, boost::on_black_target> recorder(set); + set_recorder<Graph, boost::on_examine_vertex> recorder(set); limited_queue<vertex> queue(neighborhood_size);