11 #ifndef CECH_COMPLEX_BLOCKER_H_
12 #define CECH_COMPLEX_BLOCKER_H_
22 namespace cech_complex {
38 template <
typename SimplicialComplexForCech,
typename Cech_complex>
41 using Point_cloud =
typename Cech_complex::Point_cloud;
51 bool operator()(Simplex_handle sh) {
53 for (
auto vertex : sc_ptr_->simplex_vertex_range(sh)) {
54 points.push_back(cc_ptr_->get_point(vertex));
56 std::clog <<
"#(" << vertex <<
")#";
57 #endif // DEBUG_TRACES
61 if (radius > cc_ptr_->max_radius()) std::clog <<
"radius > max_radius => expansion is blocked\n";
62 #endif // DEBUG_TRACES
63 sc_ptr_->assign_filtration(sh, radius);
64 return (radius > cc_ptr_->max_radius());
68 Cech_blocker(SimplicialComplexForCech* sc_ptr,
Cech_complex* cc_ptr) : sc_ptr_(sc_ptr), cc_ptr_(cc_ptr) {}
71 SimplicialComplexForCech* sc_ptr_;
79 #endif // CECH_COMPLEX_BLOCKER_H_