From c2aa0d07dcc4dbba1bb8f6c19013c48d060a7276 Mon Sep 17 00:00:00 2001 From: Mariette Yvinec Date: Wed, 14 Aug 2002 16:41:03 +0000 Subject: [PATCH] introduced explicit instanciation of big classes in testsuite so that each (non template) member function be instantiated --- Packages/Triangulation_2/TODO | 5 ----- Packages/Triangulation_2/changes.txt | 4 +++- .../CGAL/Constrained_triangulation_plus_2.h | 2 +- .../Triangulation_2/test_triangulation_2.C | 2 ++ .../Triangulation_2/test_triangulation_tds.C | 12 ++++++++++-- .../test_delaunay_hierarchy_2.C | 19 +++++++++++-------- .../test_delaunay_triangulation_2.C | 4 +++- .../test_regular_triangulation_2.C | 9 +++++++-- .../test_const_del_triangulation_2.C | 3 +++ .../test_const_triang_plus_2.C | 7 +++++++ .../test_constrained_triangulation_2.C | 3 +++ 11 files changed, 50 insertions(+), 20 deletions(-) diff --git a/Packages/Triangulation_2/TODO b/Packages/Triangulation_2/TODO index 1b679f1c85d..654123f6ac8 100644 --- a/Packages/Triangulation_2/TODO +++ b/Packages/Triangulation_2/TODO @@ -2,7 +2,6 @@ constrained riangulation transfers the contrained marks. - Something still tobe done for remove in Constrained Delaunay_constrained and Constrained_triangulation_plus -- Mettre la doc a jour - Harmoniser find_conflicts() avec le 3d - tester entree vrml - eclaircir ce qui arrive @@ -12,16 +11,12 @@ pour ne pas etre oblige d'inclure iostream obligatoirement - ajouter dans la doc du line face circulator, la precondition p!= q -- get rid of Construct_direction_of_line_2 - in Triangulation_euclidean_traits_2.h - arranger ca : Concernant la Constrained_triangulation_plus_2: Ca devrait etre Vertices_in_constraint_iterator a la place de Vertices_in_constraint - constrained_triangulation_plus_2 plante sur Sun CC - tenir compte remarque de sylvain a propos de design -- documenter Constrained_triangulation_plus_2 -- tester Constrained_triangulation_plus_2 avec le Tag exact - Constraint_hierarchy_3 to be done or redone : copy swap and delete diff --git a/Packages/Triangulation_2/changes.txt b/Packages/Triangulation_2/changes.txt index 928e50ee4e5..40a8fc62ae8 100644 --- a/Packages/Triangulation_2/changes.txt +++ b/Packages/Triangulation_2/changes.txt @@ -5,7 +5,9 @@ Package triangulation: provides triangulations Delaunay triangulations, constrained and regular triangulations with tests and examples. -Ver 7.43 () +Ver 7.43 (14/12/02) +- introduced explicit instanciation of big classes in testsuite + so that each (non template) member function be instantiated - small doc fixes Ver 7.42 (13/12/02) diff --git a/Packages/Triangulation_2/include/CGAL/Constrained_triangulation_plus_2.h b/Packages/Triangulation_2/include/CGAL/Constrained_triangulation_plus_2.h index 6f2ec4a57ba..ef7b6cac8b1 100644 --- a/Packages/Triangulation_2/include/CGAL/Constrained_triangulation_plus_2.h +++ b/Packages/Triangulation_2/include/CGAL/Constrained_triangulation_plus_2.h @@ -549,7 +549,7 @@ typename Constrained_triangulation_plus_2::Context_iterator Constrained_triangulation_plus_2:: contexts_end(Vertex_handle va, Vertex_handle vb) { - return hierarchy.context_end(va,vb); + return hierarchy.contexts_end(va,vb); } template diff --git a/Packages/Triangulation_2/test/Triangulation_2/test_triangulation_2.C b/Packages/Triangulation_2/test/Triangulation_2/test_triangulation_2.C index 32a7164b3a8..c19e946c759 100644 --- a/Packages/Triangulation_2/test/Triangulation_2/test_triangulation_2.C +++ b/Packages/Triangulation_2/test/Triangulation_2/test_triangulation_2.C @@ -35,6 +35,8 @@ #include #include +// Explicit instantiation of the whole class : +template class CGAL::Triangulation_2; int main() { diff --git a/Packages/Triangulation_2/test/Triangulation_2/test_triangulation_tds.C b/Packages/Triangulation_2/test/Triangulation_2/test_triangulation_tds.C index 55dba0e0f15..6a82e85f1d2 100644 --- a/Packages/Triangulation_2/test/Triangulation_2/test_triangulation_tds.C +++ b/Packages/Triangulation_2/test/Triangulation_2/test_triangulation_tds.C @@ -31,8 +31,16 @@ #include #include -int -main() + + +typedef CGAL::Triangulation_vertex_base_2 Vb; +typedef CGAL::Triangulation_face_base_2 Fb; + +// Explicit instantiation : +// does not work because of off_file_input +// template class CGAL::Triangulation_data_structure_2; + +int main() { std::cout << "Testing Triangulation_data_structure_2" << std::endl << std::endl; diff --git a/Packages/Triangulation_2/test/Triangulation_2_Delaunay/test_delaunay_hierarchy_2.C b/Packages/Triangulation_2/test/Triangulation_2_Delaunay/test_delaunay_hierarchy_2.C index ba2527c88ce..e80cc897178 100644 --- a/Packages/Triangulation_2/test/Triangulation_2_Delaunay/test_delaunay_hierarchy_2.C +++ b/Packages/Triangulation_2/test/Triangulation_2_Delaunay/test_delaunay_hierarchy_2.C @@ -39,20 +39,23 @@ #include +typedef double Coord_type; +typedef CGAL::Cartesian Gt; +typedef CGAL::Triangulation_vertex_base_2 Vbb; +typedef CGAL::Triangulation_hierarchy_vertex_base_2 Vb; +typedef CGAL::Triangulation_face_base_2 Fb; +typedef CGAL::Triangulation_data_structure_2 Tds; +typedef CGAL::Delaunay_triangulation_2 Dt; +// Explicit instantiation of the whole class : +template class CGAL::Triangulation_hierarchy_2
; + + int main() { std::cout << "Testing Delaunay_hierarchy_2 " << std::endl; std::cout << " with Cartesian points "<< std::endl; - typedef double Coord_type; - typedef CGAL::Cartesian Gt; - typedef CGAL::Triangulation_vertex_base_2 Vbb; - typedef CGAL::Triangulation_hierarchy_vertex_base_2 Vb; - typedef CGAL::Triangulation_face_base_2 Fb; - typedef CGAL::Triangulation_data_structure_2 Tds; - typedef CGAL::Delaunay_triangulation_2 Dt; typedef CGAL::Triangulation_hierarchy_2
Dh; - _test_cls_delaunay_hierarchy_2( Dh() ); return 0; diff --git a/Packages/Triangulation_2/test/Triangulation_2_Delaunay/test_delaunay_triangulation_2.C b/Packages/Triangulation_2/test/Triangulation_2_Delaunay/test_delaunay_triangulation_2.C index f5ffa9f432a..d0c55166ab2 100644 --- a/Packages/Triangulation_2/test/Triangulation_2_Delaunay/test_delaunay_triangulation_2.C +++ b/Packages/Triangulation_2/test/Triangulation_2_Delaunay/test_delaunay_triangulation_2.C @@ -21,7 +21,6 @@ // ============================================================================ #include #include -//#include #include #include @@ -33,6 +32,9 @@ #include #include +// Explicit instantiation of the whole class : +template class CGAL::Delaunay_triangulation_2; + int main() { std::cout << "Testing Delaunay Triangulation_2 " << std::endl; diff --git a/Packages/Triangulation_2/test/Triangulation_2_Delaunay/test_regular_triangulation_2.C b/Packages/Triangulation_2/test/Triangulation_2_Delaunay/test_regular_triangulation_2.C index e1ec79a5cc4..3f6b9a77908 100644 --- a/Packages/Triangulation_2/test/Triangulation_2_Delaunay/test_regular_triangulation_2.C +++ b/Packages/Triangulation_2/test/Triangulation_2_Delaunay/test_regular_triangulation_2.C @@ -30,6 +30,11 @@ #include #include +// Explicit instantiation of the whole class : +typedef CGAL::Regular_triangulation_euclidean_traits_2 + RGt; +template class CGAL::Regular_triangulation_2; + int main() { std::cout << "Testing Regular_triangulation_2" < RGt; + //typedef CGAL::Regular_triangulation_euclidean_traits_2 + // RGt; typedef CGAL::Regular_triangulation_2 RCls; _test_cls_reg_triangulation_2( RCls() ); diff --git a/Packages/Triangulation_2/test/Triangulation_2_constrained/test_const_del_triangulation_2.C b/Packages/Triangulation_2/test/Triangulation_2_constrained/test_const_del_triangulation_2.C index 0075086f4dd..3dcde28da6b 100644 --- a/Packages/Triangulation_2/test/Triangulation_2_constrained/test_const_del_triangulation_2.C +++ b/Packages/Triangulation_2/test/Triangulation_2_constrained/test_const_del_triangulation_2.C @@ -26,6 +26,9 @@ #include #include +// Explicit instantiation of the whole class : +template class CGAL::Constrained_Delaunay_triangulation_2; + int main() { diff --git a/Packages/Triangulation_2/test/Triangulation_2_constrained/test_const_triang_plus_2.C b/Packages/Triangulation_2/test/Triangulation_2_constrained/test_const_triang_plus_2.C index 12a59274bba..3b32dd620be 100644 --- a/Packages/Triangulation_2/test/Triangulation_2_constrained/test_const_triang_plus_2.C +++ b/Packages/Triangulation_2/test/Triangulation_2_constrained/test_const_triang_plus_2.C @@ -30,6 +30,10 @@ #include +typedef CGAL::Constrained_Delaunay_triangulation_2 CDt_ni; +// Explicit instantiation of the whole class : +template class CGAL::Constrained_triangulation_plus_2; + int main() { @@ -44,6 +48,9 @@ int main() typedef CGAL::Exact_predicates_tag Itag; typedef CGAL::Constrained_Delaunay_triangulation_2 CDt; typedef CGAL::Constrained_triangulation_plus_2 CDtplus; + + + _test_cls_const_triang_plus_2(CDtplus()); std::cout << "Testing constrained_triangulation_plus_2 "<< std::endl; diff --git a/Packages/Triangulation_2/test/Triangulation_2_constrained/test_constrained_triangulation_2.C b/Packages/Triangulation_2/test/Triangulation_2_constrained/test_constrained_triangulation_2.C index dbdc6d7dee6..1d7f9ef3893 100644 --- a/Packages/Triangulation_2/test/Triangulation_2_constrained/test_constrained_triangulation_2.C +++ b/Packages/Triangulation_2/test/Triangulation_2_constrained/test_constrained_triangulation_2.C @@ -28,6 +28,9 @@ #include #include +// Explicit instantiation of the whole class : +template class CGAL::Constrained_triangulation_2; + int main() { std::cout << "Testing constrained_triangulation "<< std::endl;