22 #ifndef SKELETON_BLOCKER_SKELETON_BLOCKER_COMPLEX_VISITOR_H_
23 #define SKELETON_BLOCKER_SKELETON_BLOCKER_COMPLEX_VISITOR_H_
25 #include <gudhi/Skeleton_blocker/Skeleton_blocker_simplex.h>
36 template<
typename Vertex_handle>
41 virtual void on_add_vertex(Vertex_handle) = 0;
42 virtual void on_remove_vertex(Vertex_handle) = 0;
44 virtual void on_add_edge(Vertex_handle a, Vertex_handle b) = 0;
45 virtual void on_remove_edge(Vertex_handle a, Vertex_handle b) = 0;
63 virtual void on_add_blocker(
65 virtual void on_delete_blocker(
74 template<
typename Vertex_handle>
78 void on_add_vertex(Vertex_handle) {
80 void on_remove_vertex(Vertex_handle) {
82 void on_add_edge(Vertex_handle a, Vertex_handle b) {
84 void on_remove_edge(Vertex_handle a, Vertex_handle b) {
92 void on_delete_blocker(
const Skeleton_blocker_simplex<Vertex_handle>*) {
101 template<
typename Vertex_handle>
105 void on_add_vertex(Vertex_handle v) {
106 std::cerr <<
"on_add_vertex:" << v << std::endl;
108 void on_remove_vertex(Vertex_handle v) {
109 std::cerr <<
"on_remove_vertex:" << v << std::endl;
111 void on_add_edge(Vertex_handle a, Vertex_handle b) {
112 std::cerr <<
"on_add_edge:" << a <<
"," << b << std::endl;
114 void on_remove_edge(Vertex_handle a, Vertex_handle b) {
115 std::cerr <<
"on_remove_edge:" << a <<
"," << b << std::endl;
118 std::cerr <<
"on_changed_edge:" << a <<
"," << b << std::endl;
121 std::cerr <<
"on_swaped_edge:" << a <<
"," << b <<
"," << x << std::endl;
124 std::cerr <<
"on_add_blocker:" << b << std::endl;
126 void on_delete_blocker(
const Skeleton_blocker_simplex<Vertex_handle>* b) {
127 std::cerr <<
"on_delete_blocker:" << b << std::endl;
135 #endif // SKELETON_BLOCKER_SKELETON_BLOCKER_COMPLEX_VISITOR_H_
virtual void on_swaped_edge(Vertex_handle a, Vertex_handle b, Vertex_handle x)=0
Called when performing an edge contraction when an edge bx is replaced by an edge ax (not already pre...
void on_changed_edge(Vertex_handle a, Vertex_handle b)
Called when an edge changes, during the contraction of an edge.
Definition: Skeleton_blocker_complex_visitor.h:86
A visitor that prints the visit information.
Definition: Skeleton_blocker_complex_visitor.h:102
A dummy visitor of a simplicial complex that does nothing.
Definition: Skeleton_blocker_complex_visitor.h:75
void on_swaped_edge(Vertex_handle a, Vertex_handle b, Vertex_handle x)
Called when performing an edge contraction when an edge bx is replaced by an edge ax (not already pre...
Definition: Skeleton_blocker_complex_visitor.h:88
virtual void on_changed_edge(Vertex_handle a, Vertex_handle b)=0
Called when an edge changes, during the contraction of an edge.
Abstract simplex used in Skeleton blockers data-structure.
Definition: Skeleton_blocker_simplex.h:50
Interface for a visitor of a simplicial complex.
Definition: Skeleton_blocker_complex_visitor.h:37
void on_swaped_edge(Vertex_handle a, Vertex_handle b, Vertex_handle x)
Called when performing an edge contraction when an edge bx is replaced by an edge ax (not already pre...
Definition: Skeleton_blocker_complex_visitor.h:120
void on_changed_edge(Vertex_handle a, Vertex_handle b)
Called when an edge changes, during the contraction of an edge.
Definition: Skeleton_blocker_complex_visitor.h:117