BWAPI
|
#include <Arr_lm_generator_base.h>
A pure virtual class that handles the changes in a the arrangement in a generic manner(i.e., it rebuilds the search structure for whenever a small change takes place in the arrangement). It serves as a base class for some of the generator classes. The classes that inherite from it must implement at least one virtual function called "void _create_point_list(Point_list &)" which actually creates the list of landmarks.
typedef Arrangement_ Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::Arrangement_2 |
Reimplemented from Arr_observer< Arrangement_ >.
Reimplemented in Arr_middle_edges_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_random_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_grid_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_halton_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_landmarks_vertices_generator< Arrangement_, Nearest_neighbor_ >, and Arr_landmarks_specified_points_generator< Arrangement_, Nearest_neighbor_ >.
typedef Arrangement_2::Ccb_halfedge_circulator Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::Ccb_halfedge_circulator |
Reimplemented from Arr_observer< Arrangement_ >.
Reimplemented in Arr_middle_edges_landmarks_generator< Arrangement_, Nearest_neighbor_ >, and Arr_grid_landmarks_generator< Arrangement_, Nearest_neighbor_ >.
typedef Arrangement_2::Face_const_handle Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::Face_const_handle |
Reimplemented in Arr_grid_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_middle_edges_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_landmarks_vertices_generator< Arrangement_, Nearest_neighbor_ >, and Arr_landmarks_specified_points_generator< Arrangement_, Nearest_neighbor_ >.
typedef Arrangement_2::Face_handle Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::Face_handle |
Reimplemented from Arr_observer< Arrangement_ >.
Reimplemented in Arr_grid_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_middle_edges_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_landmarks_vertices_generator< Arrangement_, Nearest_neighbor_ >, and Arr_landmarks_specified_points_generator< Arrangement_, Nearest_neighbor_ >.
typedef Arrangement_2::Geometry_traits_2 Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::Geometry_traits_2 |
Reimplemented in Arr_grid_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_random_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_halton_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_landmarks_vertices_generator< Arrangement_, Nearest_neighbor_ >, and Arr_landmarks_specified_points_generator< Arrangement_, Nearest_neighbor_ >.
typedef Arrangement_2::Halfedge_const_handle Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::Halfedge_const_handle |
Reimplemented in Arr_grid_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_middle_edges_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_landmarks_vertices_generator< Arrangement_, Nearest_neighbor_ >, and Arr_landmarks_specified_points_generator< Arrangement_, Nearest_neighbor_ >.
typedef Arrangement_2::Halfedge_handle Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::Halfedge_handle |
Reimplemented from Arr_observer< Arrangement_ >.
Reimplemented in Arr_grid_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_middle_edges_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_landmarks_vertices_generator< Arrangement_, Nearest_neighbor_ >, and Arr_landmarks_specified_points_generator< Arrangement_, Nearest_neighbor_ >.
typedef Nearest_neighbor_ Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::Nearest_neighbor |
Reimplemented in Arr_random_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_halton_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_landmarks_vertices_generator< Arrangement_, Nearest_neighbor_ >, Arr_grid_landmarks_generator< Arrangement_, Nearest_neighbor_ >, and Arr_landmarks_specified_points_generator< Arrangement_, Nearest_neighbor_ >.
typedef Nearest_neighbor::NN_Point_2 Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::NN_Point_2 |
typedef std::list<NN_Point_2> Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::NN_Points_set |
Reimplemented in Arr_middle_edges_landmarks_generator< Arrangement_, Nearest_neighbor_ >.
typedef std::vector<PL_pair>::iterator Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::Pairs_iterator |
typedef std::vector<PL_pair> Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::Pairs_set |
typedef std::pair<Point_2,CGAL::Object> Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::PL_pair |
typedef Arrangement_2::Point_2 Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::Point_2 |
Reimplemented from Arr_observer< Arrangement_ >.
Reimplemented in Arr_middle_edges_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_grid_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_landmarks_vertices_generator< Arrangement_, Nearest_neighbor_ >, Arr_landmarks_specified_points_generator< Arrangement_, Nearest_neighbor_ >, Arr_random_landmarks_generator< Arrangement_, Nearest_neighbor_ >, and Arr_halton_landmarks_generator< Arrangement_, Nearest_neighbor_ >.
typedef std::vector<Point_2> Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::Points_set |
Reimplemented in Arr_grid_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_middle_edges_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_landmarks_vertices_generator< Arrangement_, Nearest_neighbor_ >, Arr_landmarks_specified_points_generator< Arrangement_, Nearest_neighbor_ >, Arr_random_landmarks_generator< Arrangement_, Nearest_neighbor_ >, and Arr_halton_landmarks_generator< Arrangement_, Nearest_neighbor_ >.
typedef Arr_landmarks_generator_base<Arrangement_2, Nearest_neighbor> Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::Self |
Reimplemented from Arr_observer< Arrangement_ >.
Reimplemented in Arr_random_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_halton_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_landmarks_vertices_generator< Arrangement_, Nearest_neighbor_ >, Arr_grid_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_landmarks_specified_points_generator< Arrangement_, Nearest_neighbor_ >, and Arr_middle_edges_landmarks_generator< Arrangement_, Nearest_neighbor_ >.
typedef Arr_traits_basic_adaptor_2<Geometry_traits_2> Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::Traits_adaptor_2 [protected] |
typedef Arrangement_2::Vertex_const_handle Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::Vertex_const_handle |
Reimplemented in Arr_grid_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_middle_edges_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_landmarks_vertices_generator< Arrangement_, Nearest_neighbor_ >, and Arr_landmarks_specified_points_generator< Arrangement_, Nearest_neighbor_ >.
typedef Arrangement_2::Vertex_const_iterator Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::Vertex_const_iterator |
Reimplemented in Arr_middle_edges_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_landmarks_vertices_generator< Arrangement_, Nearest_neighbor_ >, Arr_random_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_landmarks_specified_points_generator< Arrangement_, Nearest_neighbor_ >, Arr_halton_landmarks_generator< Arrangement_, Nearest_neighbor_ >, and Arr_grid_landmarks_generator< Arrangement_, Nearest_neighbor_ >.
typedef Arrangement_2::Vertex_handle Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::Vertex_handle |
Reimplemented from Arr_observer< Arrangement_ >.
Reimplemented in Arr_grid_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_middle_edges_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_landmarks_vertices_generator< Arrangement_, Nearest_neighbor_ >, and Arr_landmarks_specified_points_generator< Arrangement_, Nearest_neighbor_ >.
typedef Arrangement_2::X_monotone_curve_2 Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::X_monotone_curve_2 |
Reimplemented from Arr_observer< Arrangement_ >.
Reimplemented in Arr_landmarks_vertices_generator< Arrangement_, Nearest_neighbor_ >, and Arr_landmarks_specified_points_generator< Arrangement_, Nearest_neighbor_ >.
Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::Arr_landmarks_generator_base | ( | const Arrangement_2 & | arr | ) | [inline] |
Constructor.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::_create_nn_points_set | ( | NN_Points_set & | nn_points | ) | [inline, protected, virtual] |
Reimplemented in Arr_middle_edges_landmarks_generator< Arrangement_, Nearest_neighbor_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::_create_points_set | ( | Points_set & | ) | [protected, pure virtual] |
This function creates the list of landmarks with their location. This is a pure virtual function, and the class that inherites from this generator must implement it.
Implemented in Arr_grid_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_middle_edges_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_landmarks_specified_points_generator< Arrangement_, Nearest_neighbor_ >, Arr_landmarks_vertices_generator< Arrangement_, Nearest_neighbor_ >, Arr_random_landmarks_generator< Arrangement_, Nearest_neighbor_ >, and Arr_halton_landmarks_generator< Arrangement_, Nearest_neighbor_ >.
void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::_handle_local_change_notification | ( | ) | [inline, protected] |
Handle a change notification.
Reimplemented in Arr_landmarks_vertices_generator< Arrangement_, Nearest_neighbor_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_add_inner_ccb | ( | Ccb_halfedge_circulator | ) | [inline, virtual] |
Notification after an inner CCB was created inside a face.
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_add_isolated_vertex | ( | Vertex_handle | ) | [inline, virtual] |
Notification after an isolated vertex was created inside a face.
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_add_outer_ccb | ( | Ccb_halfedge_circulator | ) | [inline, virtual] |
Notification after an outer CCB was added to a face.
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_assign | ( | ) | [inline, virtual] |
Notification after the arrangement has been assigned with another arrangement.
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_attach | ( | ) | [inline, virtual] |
Notification after the observer has been attached to an arrangement.
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_clear | ( | ) | [inline, virtual] |
Notification after the arrangement is cleared.
u | A handle to the unbounded face. |
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_create_edge | ( | Halfedge_handle | ) | [inline, virtual] |
Notification after the creation of a new edge.
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_create_vertex | ( | Vertex_handle | ) | [inline, virtual] |
Notification after the creation of a new vertex.
Reimplemented from Arr_observer< Arrangement_ >.
Reimplemented in Arr_middle_edges_landmarks_generator< Arrangement_, Nearest_neighbor_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_global_change | ( | ) | [inline, virtual] |
Notification after a global operation is completed.
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_merge_edge | ( | Halfedge_handle | ) | [inline, virtual] |
Notification after an edge was merged.
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_merge_face | ( | Face_handle | ) | [inline, virtual] |
Notification after a face was merged.
Reimplemented from Arr_observer< Arrangement_ >.
Reimplemented in Arr_middle_edges_landmarks_generator< Arrangement_, Nearest_neighbor_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_merge_inner_ccb | ( | Face_handle | , |
Ccb_halfedge_circulator | |||
) | [inline, virtual] |
Notification after an inner CCB was merged.
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_merge_outer_ccb | ( | Face_handle | , |
Ccb_halfedge_circulator | |||
) | [inline, virtual] |
Notification after an outer CCB was merged.
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_move_inner_ccb | ( | Ccb_halfedge_circulator | ) | [inline, virtual] |
Notification after an inner CCB is moved from one face to another.
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_move_isolated_vertex | ( | Vertex_handle | ) | [inline, virtual] |
Notification after an isolated vertex is moved.
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_move_outer_ccb | ( | Ccb_halfedge_circulator | ) | [inline, virtual] |
Notification after an outer CCB is moved from one face to another.
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_remove_edge | ( | ) | [inline, virtual] |
Notification after the removal of an edge.
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_remove_inner_ccb | ( | Face_handle | ) | [inline, virtual] |
Notificaion after the removal of an inner CCB.
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_remove_outer_ccb | ( | Face_handle | ) | [inline, virtual] |
Notificaion after the removal of an outer CCB.
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_remove_vertex | ( | ) | [inline, virtual] |
Notificaion after the removal of a vertex.
Reimplemented from Arr_observer< Arrangement_ >.
Reimplemented in Arr_middle_edges_landmarks_generator< Arrangement_, Nearest_neighbor_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_split_edge | ( | Halfedge_handle | , |
Halfedge_handle | |||
) | [inline, virtual] |
Notification after an edge was split.
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_split_face | ( | Face_handle | , |
Face_handle | , | ||
bool | |||
) | [inline, virtual] |
Notification after a face was split.
Reimplemented from Arr_observer< Arrangement_ >.
Reimplemented in Arr_middle_edges_landmarks_generator< Arrangement_, Nearest_neighbor_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_split_inner_ccb | ( | Face_handle | , |
Ccb_halfedge_circulator | , | ||
Ccb_halfedge_circulator | |||
) | [inline, virtual] |
Notification after an inner CCB was split.
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::after_split_outer_ccb | ( | Face_handle | , |
Ccb_halfedge_circulator | , | ||
Ccb_halfedge_circulator | |||
) | [inline, virtual] |
Notification after an outer CCB was split.
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::before_assign | ( | const Arrangement_2 & | arr | ) | [inline, virtual] |
Notification before the arrangement is assigned with another arrangement.
arr | The arrangement to be copied. |
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::before_attach | ( | const Arrangement_2 & | arr | ) | [inline, virtual] |
Notification before the observer is attached to an arrangement.
arr | The arrangement we are about to attach the observer to. |
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::before_detach | ( | ) | [inline, virtual] |
Notification before the observer is detached from the arrangement.
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::before_global_change | ( | ) | [inline, virtual] |
Notification before a global operation modifies the arrangement.
Reimplemented from Arr_observer< Arrangement_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::build_landmark_set | ( | ) | [inline, virtual] |
Creates the landmarks set (choosing the landmarks) , and saving them in the nearest-neighbor search structure.
Reimplemented in Arr_grid_landmarks_generator< Arrangement_, Nearest_neighbor_ >, Arr_landmarks_specified_points_generator< Arrangement_, Nearest_neighbor_ >, and Arr_landmarks_vertices_generator< Arrangement_, Nearest_neighbor_ >.
virtual void Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::clear_landmark_set | ( | ) | [inline, virtual] |
clear the set of landmarks.
Reimplemented in Arr_landmarks_specified_points_generator< Arrangement_, Nearest_neighbor_ >, Arr_grid_landmarks_generator< Arrangement_, Nearest_neighbor_ >, and Arr_landmarks_vertices_generator< Arrangement_, Nearest_neighbor_ >.
virtual Point_2 Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::closest_landmark | ( | Point_2 | p, |
Object & | obj | ||
) | [inline, virtual] |
bool Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::ignore_notifications [protected] |
const Traits_adaptor_2* Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::m_traits [protected] |
Nearest_neighbor Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::nn [protected] |
int Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::num_small_not_updated_changes [protected] |
bool Arr_landmarks_generator_base< Arrangement_, Nearest_neighbor_ >::updated [protected] |