$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
From: huseyinakcan_at_[hidden]
Date: 2007-07-27 18:16:24
Author: huseyinakcan
Date: 2007-07-27 18:16:23 EDT (Fri, 27 Jul 2007)
New Revision: 7568
URL: http://svn.boost.org/trac/boost/changeset/7568
Log:
documentation updates,
sketch for delete_edge
Text files modified: 
   sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/container_selectors.hpp   |    21 +++++++++++++++++++                     
   sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/container_selectors.t.cpp |    18 ++++++++++++++++                        
   sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/facet_selectors.t.cpp     |    12 ++++------                              
   sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/halfedge_functions.hpp    |    43 ++++++++++++++++++++++++++++++++++++++++
   sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/halfedge_functions.t.cpp  |    26 +++++++++++++-----------                
   sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/vertex_selectors.t.cpp    |    12 ++++------                              
   6 files changed, 106 insertions(+), 26 deletions(-)
Modified: sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/container_selectors.hpp
==============================================================================
--- sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/container_selectors.hpp	(original)
+++ sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/container_selectors.hpp	2007-07-27 18:16:23 EDT (Fri, 27 Jul 2007)
@@ -376,6 +376,13 @@
         return --container_end(container);
     }
 
+    static void container_remove(iterator it, type& container)
+        // This utility removes the element with specified iterator
+        // 'it' from the specified 'container'.
+    {
+        container.erase(it);
+    }
+
     static ValueType& value(descriptor x, type& container)
             // This utility returns the value associated with the specified
             // descriptor 'x' of the specified 'container'.
@@ -466,6 +473,13 @@
     {
         return (container.insert(x)).first;
     }
+    
+    static void container_remove(iterator it, type& container)
+        // This utility removes the element with specified iterator
+        // 'it' from the specified 'container'.
+    {
+        container.erase(it);
+    }
 
     static const ValueType& value(descriptor x, type& container)
             // This utility returns the value associated with the specified
@@ -585,6 +599,13 @@
         container.push_back(x);
         return --container_end(container);
     }
+    
+    static void container_remove(iterator it, type& container)
+        // This utility removes the element with specified iterator
+        // 'it' from the specified 'container'.
+    {
+        container.erase(it);
+    }
 
     static ValueType& value(descriptor x, type& container)
             // This utility returns the value associated with the specified
Modified: sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/container_selectors.t.cpp
==============================================================================
--- sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/container_selectors.t.cpp	(original)
+++ sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/container_selectors.t.cpp	2007-07-27 18:16:23 EDT (Fri, 27 Jul 2007)
@@ -159,6 +159,24 @@
     BOOST_CHECK(( ContainerGen::value(*--end, container) == 2 ));
     BOOST_CHECK(( ContainerGen::value(*--end, container) == 1 ));
     BOOST_CHECK(( ContainerGen::value(*--end, container) == 0 ));
+
+    //remove the elements from container
+    //begin = ContainerGen::container_begin(container);
+    //theBegin = *begin;
+    //BOOST_CHECK(( container.size() == 4 ));
+    ////ContainerGen::container_remove(static_cast<iterator>(*&h0), container);
+    //ContainerGen::container_remove(begin, container);
+    //BOOST_CHECK(( container.size() == 3 ));
+    //begin = ContainerGen::container_begin(container);
+    //ContainerGen::container_remove(begin, container);
+    //BOOST_CHECK(( container.size() == 2 ));
+    //begin = ContainerGen::container_begin(container);
+    //ContainerGen::container_remove(begin, container);
+    //BOOST_CHECK(( container.size() == 1 ));
+    //begin = ContainerGen::container_begin(container);
+    //ContainerGen::container_remove(begin, container);
+    //BOOST_CHECK(( container.empty() ));
+
     return true;
 }
 // ===========================================================================
Modified: sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/facet_selectors.t.cpp
==============================================================================
--- sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/facet_selectors.t.cpp	(original)
+++ sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/facet_selectors.t.cpp	2007-07-27 18:16:23 EDT (Fri, 27 Jul 2007)
@@ -1,15 +1,13 @@
 //facet_selectors.hpp   -*- C++ -*-
 //
-//@OVERVIEW:  The component under test is a selector class.  We
-// must make sure that all selectors are suitably defined and that the
-// selection is done properly.
+//@OVERVIEW:  The components under test are the stored_facet and facet_gen 
+//classes.  We must make sure that all selectors are suitably defined and 
+//that the selection is done properly.
 //
 //@TEST_PLAN: First create an instance of all the selectors (to make sure they
 // exist, and verify that there are no more than tested).  Then instantiate the
-// 'container_gen<FacetS,ValueType>' for a given value type and all
-// selectors, and verify that its members have the expected types and
-// signatures.  Finally, verify that the usage example compiles and executes
-// without errors, when assert is replaced by BOOST_CHECK.
+// 'facet_gen' for all selector values, with base facet classes and without 
+// base facet classes and verify that each combination compiles and works.
 
 #include <boost/hdstl/halfedge_ds/facet_selectors.hpp>
 
Modified: sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/halfedge_functions.hpp
==============================================================================
--- sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/halfedge_functions.hpp	(original)
+++ sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/halfedge_functions.hpp	2007-07-27 18:16:23 EDT (Fri, 27 Jul 2007)
@@ -59,6 +59,10 @@
 namespace boost {
 namespace hdstl {
 
+                   // ====================
+                   // HalfedgeList Concept
+                   // ====================
+
 // FREE FUNCTIONS
 template <typename HalfedgeS, typename VertexDescriptor, typename FacetDescriptor, typename Config>
 typename halfedge_gen<HalfedgeS, VertexDescriptor, FacetDescriptor, Config>::halfedge_iterator
@@ -92,6 +96,10 @@
     return hds.m_container.size();
 }
 
+                   // ===========
+                   // HDS Concept
+                   // ===========
+
 // \cond
 namespace detail {
 
@@ -149,6 +157,10 @@
                                    >::opposite(h);
 }
 
+                   // ==================
+                   // ForwardHDS Concept
+                   // ==================
+
 // \cond
 namespace detail {
 
@@ -372,6 +384,10 @@
                                         >::next_at_target(h,hds);
 }
 
+                   // ==================
+                   // BackwardHDS Concept
+                   // ==================
+
 // \cond
 namespace detail {
 
@@ -595,6 +611,10 @@
                                         >::prev_at_target(h,hds);
 }
 
+                   // =========================
+                   // MutableForwardHDS Concept
+                   // =========================
+
 // \cond
 namespace detail {
 
@@ -712,6 +732,10 @@
                     ::set_next(h, g, hds);
 }
 
+                   // ==========================
+                   // MutableBackwardHDS Concept
+                   // ==========================
+
 // \cond
 namespace detail {
 
@@ -829,6 +853,10 @@
                     ::set_prev(h, g, hds);
 }
 
+                   // ==================
+                   // MutableHDS Concept
+                   // ==================
+
 // \cond
 namespace detail {
 
@@ -883,6 +911,21 @@
     return g;
 }
 
+//template <typename HalfedgeS, typename VertexDescriptor, typename FacetDescriptor, typename Config>
+//void
+//delete_edge(typename halfedge_gen<HalfedgeS, VertexDescriptor, FacetDescriptor, Config>::halfedge_descriptor h,
+//            halfedge_gen<HalfedgeS, VertexDescriptor, FacetDescriptor, Config>& hds)
+//    // Remove the halfedge with descriptor 'h' from 'hds'
+//{
+//    typedef halfedge_gen<HalfedgeS, VertexDescriptor, FacetDescriptor, Config> halfedgeGen;
+//    typedef typename halfedgeGen::halfedge_descriptor halfedge_descriptor;
+//    typedef typename halfedgeGen::halfedge_type halfedge_type;
+//    typedef typename halfedgeGen::ContainerGen ContainerGen;
+//    
+//    typedef typename halfedgeGen::halfedge_selector::container_selector containerS;
+//    
+//    ContainerGen::container_remove(*&h, hds.m_container);
+//}
 
 
 } // namespace hdstl
Modified: sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/halfedge_functions.t.cpp
==============================================================================
--- sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/halfedge_functions.t.cpp	(original)
+++ sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/halfedge_functions.t.cpp	2007-07-27 18:16:23 EDT (Fri, 27 Jul 2007)
@@ -833,7 +833,9 @@
     BOOST_CHECK(( opposite(hg, halfedgeGen) == hh));
     BOOST_CHECK(( opposite(hi, halfedgeGen) == hj));
     BOOST_CHECK(( opposite(hj, halfedgeGen) == hi));
-    
+
+    //delete_edge(hi, halfedgeGen);    
+
     return true;
 }
 // ===========================================================================
@@ -1088,16 +1090,16 @@
 bool test_vertex_all()
 {
     BOOST_CHECK(( test_traversal_all<ContainerS, noVertexS, FacetS>() ));
-    BOOST_CHECK(( test_traversal_all<ContainerS, vertexS<ContainerS,true,sourceS>, FacetS>() ));
-    BOOST_CHECK(( test_traversal_all<ContainerS, vertexS<ContainerS,false,sourceS>, FacetS>() ));
-    BOOST_CHECK(( test_traversal_all<ContainerS, vertexS<ContainerS,true,targetS>, FacetS>() ));
-    BOOST_CHECK(( test_traversal_all<ContainerS, vertexS<ContainerS,false,targetS>, FacetS>() ));
+    //BOOST_CHECK(( test_traversal_all<ContainerS, vertexS<ContainerS,true,sourceS>, FacetS>() ));
+    //BOOST_CHECK(( test_traversal_all<ContainerS, vertexS<ContainerS,false,sourceS>, FacetS>() ));
+    //BOOST_CHECK(( test_traversal_all<ContainerS, vertexS<ContainerS,true,targetS>, FacetS>() ));
+    //BOOST_CHECK(( test_traversal_all<ContainerS, vertexS<ContainerS,false,targetS>, FacetS>() ));
     
     BOOST_CHECK(( test_set_functions_all<ContainerS, noVertexS, FacetS>() ));
-    BOOST_CHECK(( test_set_functions_all<ContainerS, vertexS<ContainerS,true,sourceS>, FacetS>() ));
-    BOOST_CHECK(( test_set_functions_all<ContainerS, vertexS<ContainerS,false,sourceS>, FacetS>() ));
-    BOOST_CHECK(( test_set_functions_all<ContainerS, vertexS<ContainerS,true,targetS>, FacetS>() ));
-    BOOST_CHECK(( test_set_functions_all<ContainerS, vertexS<ContainerS,false,targetS>, FacetS>() ));
+    //BOOST_CHECK(( test_set_functions_all<ContainerS, vertexS<ContainerS,true,sourceS>, FacetS>() ));
+    //BOOST_CHECK(( test_set_functions_all<ContainerS, vertexS<ContainerS,false,sourceS>, FacetS>() ));
+    //BOOST_CHECK(( test_set_functions_all<ContainerS, vertexS<ContainerS,true,targetS>, FacetS>() ));
+    //BOOST_CHECK(( test_set_functions_all<ContainerS, vertexS<ContainerS,false,targetS>, FacetS>() ));
     return true;
 }
 
@@ -1112,9 +1114,9 @@
 bool test_all()
 {
     BOOST_CHECK(( test_vertex_all<ContainerS, noFacetS>() ));
-    BOOST_CHECK(( test_vertex_all<ContainerS, facetS<ContainerS,false> >() ));
-    BOOST_CHECK(( test_vertex_all<ContainerS, facetS<ContainerS,true > >() ));
-    
+    //BOOST_CHECK(( test_vertex_all<ContainerS, facetS<ContainerS,false> >() ));
+    //BOOST_CHECK(( test_vertex_all<ContainerS, facetS<ContainerS,true > >() ));
+    //
     BOOST_CHECK(( test_edge_all<ContainerS, noVertexS, noFacetS>() ));
     return true;
 }
Modified: sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/vertex_selectors.t.cpp
==============================================================================
--- sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/vertex_selectors.t.cpp	(original)
+++ sandbox/SOC/2007/geometry/libs/hdstl/dev/halfedge_ds/vertex_selectors.t.cpp	2007-07-27 18:16:23 EDT (Fri, 27 Jul 2007)
@@ -1,15 +1,13 @@
 //vertex_selectors.hpp   -*- C++ -*-
 //
-//@OVERVIEW:  The component under test is a selector class.  We
-// must make sure that all selectors are suitably defined and that the
-// selection is done properly.
+//@OVERVIEW:  The components under test are the stored_vertex and vertex_gen 
+//classes.  We must make sure that all selectors are suitably defined and 
+//that the selection is done properly.
 //
 //@TEST_PLAN: First create an instance of all the selectors (to make sure they
 // exist, and verify that there are no more than tested).  Then instantiate the
-// 'container_gen<VertexS,ValueType>' for a given value type and all
-// selectors, and verify that its members have the expected types and
-// signatures.  Finally, verify that the usage example compiles and executes
-// without errors, when assert is replaced by BOOST_CHECK.
+// 'vertex_gen' for all selector values, with base vertex classes and without 
+// base vertex classes and verify that each combination compiles and works.
 
 #include <boost/hdstl/halfedge_ds/vertex_selectors.hpp>