$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r57071 - in sandbox/ggl/formal_review_request/libs/ggl/doc: doxygen_input/pages doxygen_input/sourcecode doxygen_output/html
From: barend.gehrels_at_[hidden]
Date: 2009-10-22 11:28:52
Author: barendgehrels
Date: 2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
New Revision: 57071
URL: http://svn.boost.org/trac/boost/changeset/57071
Log:
Doc update for a.o. tests in length, perimeter, area, for_each
Added:
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2for__each_8hpp.html   (contents, props changed)
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2for__each_8hpp_source.html   (contents, props changed)
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/area__result_8hpp.html   (contents, props changed)
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/area__result_8hpp_source.html   (contents, props changed)
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/calculate__sum_8hpp.html   (contents, props changed)
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/calculate__sum_8hpp_source.html   (contents, props changed)
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1segment-members.html   (contents, props changed)
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1segment.html   (contents, props changed)
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/length__result_8hpp.html   (contents, props changed)
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/length__result_8hpp_source.html   (contents, props changed)
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2algorithms_2for__each_8hpp.html   (contents, props changed)
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2algorithms_2for__each_8hpp_source.html   (contents, props changed)
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1length__result-members.html   (contents, props changed)
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1length__result.html   (contents, props changed)
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1single__tag.html   (contents, props changed)
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4-members.html   (contents, props changed)
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html   (contents, props changed)
Removed:
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/agn__simplify_8hpp.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/agn__simplify_8hpp_source.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1distance_1_1ll__point__segment-members.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1distance_1_1ll__point__segment.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/for__each_8hpp.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/for__each_8hpp_source.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/foreach_8hpp.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/foreach_8hpp_source.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x62.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x63.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x64.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x65.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x67.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x68.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x69.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x6c.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x6d.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x6e.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x6f.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x70.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x72.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x73.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x74.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x75.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x76.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x77.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x78.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x79.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x7e.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/haversine_8hpp.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/haversine_8hpp_source.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1segment-members.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1segment.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4-members.html
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html
Text files modified: 
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_input/pages/doxygen_design_cross_section.hpp                                  |     5                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_input/sourcecode/doxygen_examples.cpp                                         |    56 +-                                      
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/02__linestring__example_8cpp-example.html                         |    12                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/03__polygon__example_8cpp-example.html                            |     4                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/07__graph__route__example_8cpp-example.html                       |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/access_8hpp.html                                                  |    10                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/access_8hpp_source.html                                           |   390 ++++++++++---------                     
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/agn__within_8hpp_source.html                                      |     6                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2area_8hpp.html                                        |     8                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2area_8hpp_source.html                                 |   420 +++++++++-----------                    
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2intersection_8hpp_source.html                         |   751 ++++++++++++++++++------------------    
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2length_8hpp.html                                      |    12                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2length_8hpp_source.html                               |   227 ++++++-----                             
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2perimeter_8hpp.html                                   |     8                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2perimeter_8hpp_source.html                            |   191 ++++-----                               
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2sectionalize_8hpp_source.html                         |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2simplify_8hpp_source.html                             |     4                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/annotated.html                                                    |    27                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/base_8hpp_source.html                                             |    89 ++--                                    
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/box_8hpp.html                                                     |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/box_8hpp_source.html                                              |    85 ++-                                     
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/c04__a__custom__triangle__example_8cpp-example.html               |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/c04__b__custom__triangle__example_8cpp-example.html               |     4                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/c05__custom__point__pointer__example_8cpp-example.html            |    34 +                                       
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/c__array_8hpp_source.html                                         |    42 +-                                      
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/calculate__null_8hpp_source.html                                  |     6                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cart__area_8hpp_source.html                                       |     6                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cart__centroid_8hpp_source.html                                   |    10                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cart__distance_8hpp.html                                          |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cart__side_8hpp_source.html                                       |     4                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cart__within_8hpp_source.html                                     |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cartesian2d_8hpp_source.html                                      |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classes.html                                                      |    14                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1box-members.html                                      |    14                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1box.html                                              |    64 +-                                      
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1dsv__manipulator.html                                 |     6                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1area_1_1by__spherical__excess.html        |     4                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1area_1_1by__triangles.html                |     4                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html          |     4                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1centroid_1_1geolib1995.html               |     4                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1distance_1_1cross__track.html             |     8                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1distance_1_1haversine-members.html        |     3                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1distance_1_1haversine.html                |    82 ----                                    
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1intersection_1_1liang__barsky.html        |     4                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1simplify_1_1douglas__peucker-members.html |     8                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html         |   102 ----                                    
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1within_1_1winding.html                    |     4                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/convert_8hpp_source.html                                          |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/core_2tags_8hpp.html                                              |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/de9im_8hpp_source.html                                            |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/design.html                                                       |     5                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/distance__concept_8hpp_source.html                                |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/distance__cross__track_8hpp.html                                  |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/distance__result_8hpp_source.html                                 |   428 +++++++++++----------                   
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/doxygen__design__cross__section_8hpp_source.html                  |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/files.html                                                        |     9                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions.html                                                    |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x62.html                                               |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x64.html                                               |     4                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x66.html                                               |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x67.html                                               |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x6c.html                                               |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x6d.html                                               |     4                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x6f.html                                               |    25                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x70.html                                               |    11                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x72.html                                               |    13                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x73.html                                               |    20                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x74.html                                               |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x76.html                                               |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func.html                                               |   340 +++++++++++++++-                        
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_type.html                                               |    21                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_vars.html                                               |     6                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/get__intersection__points_8hpp_source.html                        |     4                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__access.html                                                |    20                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__area.html                                                  |    18                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__concepts.html                                              |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__distance.html                                              |    11                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__length.html                                                |    42 +                                       
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__loop.html                                                  |    94 ++--                                    
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__overlay.html                                               |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__perimeter.html                                             |    20                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__simplify.html                                              |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__traits.html                                                |     6                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/hierarchy.html                                                    |    17                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/index.html                                                        |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/intersection__linestring_8hpp_source.html                         |     4                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/intersection__point_8hpp.html                                     |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/intersection__point_8hpp_source.html                              |    80 +--                                     
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/loop_8hpp_source.html                                             |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2algorithms_2area_8hpp_source.html                          |    42 +                                       
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2algorithms_2length_8hpp_source.html                        |    63 +-                                      
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2algorithms_2perimeter_8hpp_source.html                     |    58 +-                                      
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2core_2tags_8hpp.html                                       |     3                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2core_2tags_8hpp_source.html                                |    58 ++                                      
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi__sum_8hpp_source.html                                       |    45 +-                                      
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespaceggl.html                                                 |   796 ++------------------------------------- 
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespaceggl_1_1concept.html                                      |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespaceggl_1_1strategy.html                                     |     4                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespaceggl_1_1strategy_1_1distance.html                         |     7                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespaceggl_1_1traits.html                                       |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespacemembers.html                                             |    20                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespacemembers_func.html                                        |    20                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/nsphere_8hpp_source.html                                          |    90 ++--                                    
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/ogc.html                                                          |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/point_8hpp_source.html                                            |   115 +++--                                   
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/point__xy_8hpp_source.html                                        |   104 ++--                                    
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/register_2point_8hpp.html                                         |    12                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/register_2point_8hpp_source.html                                  |   276 +++++++------                           
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/reverse__dispatch_8hpp_source.html                                |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/segment_8hpp.html                                                 |     4                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/segment_8hpp_source.html                                          |   155 ++++---                                 
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/segment__concept_8hpp.html                                        |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/segment__iterator_8hpp_source.html                                |    12                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/simplify__douglas__peucker_8hpp.html                              |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/simplify__douglas__peucker_8hpp_source.html                       |    12                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/sph__area_8hpp_source.html                                        |    14                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1area__result-members.html                            |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1area__result.html                                    |    35 +                                       
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1cartesian__distance.html                             |    18                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1concept_1_1_point.html                               |    56 +-                                      
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1concept_1_1_segment.html                             |     4                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1geometry__collection__tag.html                       |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__linestring.html                               |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__linestring__tag.html                          |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__point.html                                    |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__point__tag.html                               |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__polygon.html                                  |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__polygon__tag.html                             |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1policies_1_1relate_1_1segments__de9im.html           |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1policies_1_1relate_1_1segments__tupled.html          |     8                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1segment__iterator.html                               |    24                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1segment__tag.html                                    |     4                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1strategy_1_1distance_1_1xy__point__segment.html      |     6                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1strategy_1_1side_1_1xy__side.html                    |     4                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1strategy_1_1within_1_1franklin.html                  |     4                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1strategy__centroid.html                              |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1strategy__distance__segment.html                     |     2                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1access.html                                |    15                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1indexed__access.html                       |    18                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1use__std-members.html                      |     4                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1use__std.html                              |    18                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/tuple_8hpp_source.html                                            |   152 ++++---                                 
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/tupled_8hpp_source.html                                           |     8                                         
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/write__dsv_8hpp_source.html                                       |   655 +++++++++++++++++---------------        
   sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/x01__qt__example_8cpp-example.html                                |     2                                         
   145 files changed, 3267 insertions(+), 3702 deletions(-)
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_input/pages/doxygen_design_cross_section.hpp
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_input/pages/doxygen_design_cross_section.hpp	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_input/pages/doxygen_design_cross_section.hpp	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -123,7 +123,8 @@
 
 This enables us to call get<0>(a), for any point having the traits::access specialization, as shown in the distance algorithm at the start of this paragraph.
 So we wanted to enable classes with methods like .x(), and they are supported as long as there is a specialization of the access struct with a static get function returning .x() for dimension 0, and similar for 1 and .y().
-Alternatively we can have, in the traits class, the dimension as a template parameter in a member template function:
+
+Alternatively we could implement, in the traits class, the dimension as a template parameter in a member template function:
 
 \code
 template <>
@@ -137,7 +138,7 @@
 };
 \endcode
 
-This alternative gives in the end the same functionality, either using an if-clause (slower), or adding another level of indirection. <b>This last version is used in GGL</b>
+This alternative gives in the end the same functionality, either using an if-clause (slower), or adding another level of indirection.
 
 
 
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_input/sourcecode/doxygen_examples.cpp
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_input/sourcecode/doxygen_examples.cpp	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_input/sourcecode/doxygen_examples.cpp	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -500,20 +500,6 @@
 {
     namespace traits
     {
-        template <int I> struct accessor;
-
-        template <> struct accessor<0>
-        {
-            inline static double get(const example_point_1& p) { return p.x; }
-            inline static void set(example_point_1& p, const double& value) { p.x = value; }
-        };
-
-        template <> struct accessor<1>
-        {
-            inline static double get(const example_point_1& p) { return p.y; }
-            inline static void set(example_point_1& p, const double& value) { p.y = value; }
-        };
-
         // For legacy points, define the necessary structs coordinate (with typedef),
         // dimension (with value) and access (with get function).
         // Be sure to define them within the namespace ggl::traits
@@ -521,15 +507,21 @@
         template <> struct coordinate_type<example_point_1> { typedef double type; };
         template <> struct coordinate_system<example_point_1> { typedef cs::cartesian type; };
         template <> struct dimension<example_point_1>: boost::mpl::int_<2> {};
-        template <> struct access<example_point_1>
+        template <> struct access<example_point_1, 0>
         {
-            template <int I>
-            static double get(const example_point_1& p)
-            { return accessor<I>::get(p); }
-
-            template <int I>
-            static void set(example_point_1& p, const double& value)
-            { accessor<I>::set(p, value); }
+            static double get(example_point_1 const& p)
+            { return p.x; }
+
+            static void set(example_point_1& p, double const& value)
+            { p.x = value; }
+        };
+        template <> struct access<example_point_1, 1>
+        {
+            static double get(example_point_1 const& p)
+            { return p.y; }
+
+            static void set(example_point_1& p, double const& value)
+            { p.y = value; }
         };
     }
 }
@@ -575,24 +567,24 @@
     };
 }
 
-// WILL BE CONVERTED TO MACRO
+// MIGHT BE CONVERTED TO MACRO
 namespace ggl
 {
     namespace traits
     {
         using namespace example_own_point2;
 
-        template <> struct tag<example_point_2  > { typedef point_tag type; };
-        template <> struct coordinate_type<example_point_2 > { typedef float type; };
-        template <> struct coordinate_system<example_point_2 > { typedef ggl::cs::cartesian type; };
-        template <> struct dimension<example_point_2 > : boost::mpl::int_<2> {};
-        template <> struct access<example_point_2 >
+        template <> struct tag<example_point_2> { typedef point_tag type; };
+        template <> struct coordinate_type<example_point_2> { typedef float type; };
+        template <> struct coordinate_system<example_point_2> { typedef ggl::cs::cartesian type; };
+        template <> struct dimension<example_point_2> : boost::mpl::int_<2> {};
+        template <std::size_t Dimension> struct access<example_point_2, Dimension>
         {
-            template <int I>
-            static inline float get(const example_point_2& p) { return p.get<I>(); }
+            static inline float get(example_point_2 const& p) 
+            { return p.get<Dimension>(); }
 
-            template <int I>
-            static inline void set(example_point_2& p, const float& value) { p.get<I>() = value; }
+            static inline void set(example_point_2& p, float const& value) 
+            { p.get<Dimension>() = value; }
         };
 
         // The library user has
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/02__linestring__example_8cpp-example.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/02__linestring__example_8cpp-example.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/02__linestring__example_8cpp-example.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -124,7 +124,7 @@
     std::cout << <a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">ggl::dsv</a>(b) << std::endl;
 
     <span class="comment">// The length of the line can be calulated</span>
-    std::cout << <span class="stringliteral">"length: "</span> << <a name="a8"></a><a class="code" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa" title="Calculate length of a geometry.">length</a>(ls) << std::endl;
+    std::cout << <span class="stringliteral">"length: "</span> << <a name="a8"></a><a class="code" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf" title="Calculate length of a geometry.">length</a>(ls) << std::endl;
 
     <span class="comment">// All things from std::vector can be called, because a linestring is a vector</span>
     std::cout << <span class="stringliteral">"number of points 1: "</span> << ls.size() << std::endl;
@@ -142,7 +142,7 @@
 
     <span class="comment">// A linestring is a vector. However, some algorithms consider "segments",</span>
     <span class="comment">// which are the line pieces between two points of a linestring.</span>
-    <span class="keywordtype">double</span> d = <a class="code" href="group__distance.html#g22a618786d2601e9201896a8346c161b" title="Calculate distance between two geometries with a specified strategy.">distance</a>(p, <a name="_a11"></a><a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment<point_2d ></a>(ls.front(), ls.back()));
+    <span class="keywordtype">double</span> d = <a class="code" href="group__distance.html#g22a618786d2601e9201896a8346c161b" title="Calculate distance between two geometries with a specified strategy.">distance</a>(p, <a name="_a11"></a><a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment<point_2d ></a>(ls.front(), ls.back()));
     std::cout << <span class="stringliteral">"distance: "</span> << d << std::endl;
 
     <span class="comment">// Add some three points more, let's do it using a classic array.</span>
@@ -174,7 +174,7 @@
 
     <span class="comment">// The other way, using a vector instead of a linestring, is also possible</span>
     std::vector<point_2d> pv(ls.begin(), ls.end());
-    std::cout << <span class="stringliteral">"length: "</span> << <a class="code" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa" title="Calculate length of a geometry.">length</a>(pv) << std::endl;
+    std::cout << <span class="stringliteral">"length: "</span> << <a class="code" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf" title="Calculate length of a geometry.">length</a>(pv) << std::endl;
 
     <span class="comment">// If there are double points in the line, you can use unique to remove them</span>
     <span class="comment">// So we add the last point, print, make a unique copy and print</span>
@@ -205,8 +205,8 @@
     {
         <a class="code" href="classggl_1_1linestring.html" title="A linestring (named so by OGC) is a collection (default a vector) of points.">linestring_2d</a> lscopy = ls;
         std::for_each(lscopy.begin(), lscopy.end(), translate_function<point_2d>);
-        <a name="a13"></a><a class="code" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a" title="Calls functor for geometry.">for_each_point</a>(lscopy, scale_functor<point_2d>());
-        <a class="code" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a" title="Calls functor for geometry.">for_each_point</a>(lscopy, translate_function<point_2d>);
+        <a name="a13"></a><a class="code" href="group__loop.html#g0cdb7f23bf7395ba3f385e9cf01a601f" title="Calls functor for geometry.">for_each_point</a>(lscopy, scale_functor<point_2d>());
+        <a class="code" href="group__loop.html#g0cdb7f23bf7395ba3f385e9cf01a601f" title="Calls functor for geometry.">for_each_point</a>(lscopy, translate_function<point_2d>);
         std::cout << <span class="stringliteral">"modified line: "</span> << <a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">ggl::dsv</a>(lscopy) << std::endl;
     }
 
@@ -243,7 +243,7 @@
 
     <span class="comment">// Not all algorithms work on 3d lines. For example convex hull does NOT.</span>
     <span class="comment">// But, for example, length, distance, simplify, envelope and stream do.</span>
-    std::cout << <span class="stringliteral">"3D: length: "</span> << <a class="code" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa" title="Calculate length of a geometry.">length</a>(line3d) << <span class="stringliteral">" line: "</span> << <a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">ggl::dsv</a>(line3d) << std::endl;
+    std::cout << <span class="stringliteral">"3D: length: "</span> << <a class="code" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf" title="Calculate length of a geometry.">length</a>(line3d) << <span class="stringliteral">" line: "</span> << <a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">ggl::dsv</a>(line3d) << std::endl;
 
     <span class="comment">// With DSV you can also use other delimiters, e.g. JSON style</span>
     std::cout << <span class="stringliteral">"JSON: "</span>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/03__polygon__example_8cpp-example.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/03__polygon__example_8cpp-example.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/03__polygon__example_8cpp-example.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -104,7 +104,7 @@
     std::cout << <a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">ggl::dsv</a>(b) << std::endl;
 
     <span class="comment">// The area of the polygon can be calulated</span>
-    std::cout << <span class="stringliteral">"area: "</span> << <a name="a6"></a><a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">area</a>(poly) << std::endl;
+    std::cout << <span class="stringliteral">"area: "</span> << <a name="a6"></a><a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">area</a>(poly) << std::endl;
 
     <span class="comment">// And the centroid, which is the center of gravity</span>
     <a name="_a7"></a><a class="code" href="classggl_1_1point__xy.html" title="2D point in Cartesian coordinate system">point_2d</a> cent;
@@ -137,7 +137,7 @@
 
     std::cout << <span class="stringliteral">"with inner ring:"</span> << <a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">ggl::dsv</a>(poly) << std::endl;
     <span class="comment">// The area of the polygon is changed of course</span>
-    std::cout << <span class="stringliteral">"new area of polygon: "</span> << <a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">area</a>(poly) << std::endl;
+    std::cout << <span class="stringliteral">"new area of polygon: "</span> << <a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">area</a>(poly) << std::endl;
     <a class="code" href="group__centroid.html#g2b743cdd7177313b561780ba87c633cd" title="Calculate centroid.">centroid</a>(poly, cent);
     std::cout << <span class="stringliteral">"new centroid: "</span> << <a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">ggl::dsv</a>(cent) << std::endl;
 
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/07__graph__route__example_8cpp-example.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/07__graph__route__example_8cpp-example.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/07__graph__route__example_8cpp-example.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -184,7 +184,7 @@
     ggl_edge_property(Linestring <span class="keyword">const</span>& line)
         : m_line(line)
     {
-        m_length = <a name="a4"></a><a class="code" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa" title="Calculate length of a geometry.">ggl::length</a>(line);
+        m_length = <a name="a4"></a><a class="code" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf" title="Calculate length of a geometry.">ggl::length</a>(line);
     }
 
     <span class="keyword">inline</span> operator double()<span class="keyword"> const</span>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/access_8hpp.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/access_8hpp.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/access_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -47,13 +47,13 @@
 <a href="access_8hpp_source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
 <tr><td></td></tr>
 <tr><td colspan="2"><br><h2>Classes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1access.html">ggl::traits::access< G ></a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1access.html">ggl::traits::access< Geometry, Dimension ></a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Traits class which gives <a class="el" href="structggl_1_1traits_1_1access.html" title="Traits class which gives access (get,set) to points.">access</a> (get,set) to points.  More...<br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1indexed__access.html">ggl::traits::indexed_access< G, I, D ></a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1indexed__access.html">ggl::traits::indexed_access< Geometry, Index, Dimension ></a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Traits class defining "get" and "set" to get and set <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> coordinate values.  More...<br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1use__std.html">ggl::traits::use_std< G ></a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1use__std.html">ggl::traits::use_std< Geometry ></a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Traits class, optional, indicating that the std-library should be used.  More...<br></td></tr>
 <tr><td colspan="2"><br><h2>Namespaces</h2></td></tr>
@@ -65,7 +65,7 @@
 <tr><td class="memTemplParams" nowrap colspan="2">template<std::size_t I, std::size_t D, typename G > </td></tr>
 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">coordinate_type< G >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__access.html#gd3c007fcbae837d56d13aa77ed03f920">ggl::get</a> (const G &geometry, detail::signature_getset_index_dimension *dummy=0)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">get a coordinate value of a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> / <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>  <br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">get a coordinate value of a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> / <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>  <br></td></tr>
 <tr><td class="memTemplParams" nowrap colspan="2">template<std::size_t D, typename G > </td></tr>
 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">coordinate_type< G >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__access.html#g6cf833a7f9622af2fc05fd94aa61153f">ggl::get</a> (const G &geometry, detail::signature_getset_dimension *dummy=0)</td></tr>
 
@@ -73,7 +73,7 @@
 <tr><td class="memTemplParams" nowrap colspan="2">template<std::size_t I, std::size_t D, typename G > </td></tr>
 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__access.html#g6ced3f6383c5e664984c54a36a1d78a2">ggl::set</a> (G &geometry, const typename coordinate_type< G >::type &value, detail::signature_getset_index_dimension *dummy=0)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">assign a coordinate value of a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> / <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>  <br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">assign a coordinate value of a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> / <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>  <br></td></tr>
 <tr><td class="memTemplParams" nowrap colspan="2">template<std::size_t D, typename G > </td></tr>
 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__access.html#g411ad2eab588e3fa0f0a3d35c79cbb4a">ggl::set</a> (G &geometry, const typename coordinate_type< G >::type &value, detail::signature_getset_dimension *dummy=0)</td></tr>
 
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/access_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/access_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/access_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -69,194 +69,220 @@
 <a name="l00027"></a><a class="code" href="namespaceggl_1_1traits.html">00027</a> <span class="keyword">namespace </span>traits
 <a name="l00028"></a>00028 {
 <a name="l00029"></a>00029 
-<a name="l00041"></a>00041 <span class="keyword">template</span> <<span class="keyword">typename</span> G>
-<a name="l00042"></a><a class="code" href="structggl_1_1traits_1_1access.html">00042</a> <span class="keyword">struct </span><a class="code" href="structggl_1_1traits_1_1access.html" title="Traits class which gives access (get,set) to points.">access</a> {};
-<a name="l00043"></a>00043 
+<a name="l00042"></a>00042 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry, std::<span class="keywordtype">size_t</span> Dimension>
+<a name="l00043"></a><a class="code" href="structggl_1_1traits_1_1access.html">00043</a> <span class="keyword">struct </span><a class="code" href="structggl_1_1traits_1_1access.html" title="Traits class which gives access (get,set) to points.">access</a> {};
 <a name="l00044"></a>00044 
-<a name="l00058"></a>00058 <span class="keyword">template</span> <<span class="keyword">typename</span> G, std::<span class="keywordtype">size_t</span> I, std::<span class="keywordtype">size_t</span> D>
-<a name="l00059"></a><a class="code" href="structggl_1_1traits_1_1indexed__access.html">00059</a> <span class="keyword">struct </span><a class="code" href="structggl_1_1traits_1_1indexed__access.html" title="Traits class defining &quot;get&quot; and &quot;set&quot; to get and set point coordinate...">indexed_access</a> {};
-<a name="l00060"></a>00060 
+<a name="l00045"></a>00045 
+<a name="l00059"></a>00059 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry, std::<span class="keywordtype">size_t</span> Index, std::<span class="keywordtype">size_t</span> Dimension>
+<a name="l00060"></a><a class="code" href="structggl_1_1traits_1_1indexed__access.html">00060</a> <span class="keyword">struct </span><a class="code" href="structggl_1_1traits_1_1indexed__access.html" title="Traits class defining &quot;get&quot; and &quot;set&quot; to get and set point coordinate...">indexed_access</a> {};
 <a name="l00061"></a>00061 
-<a name="l00075"></a>00075 <span class="keyword">template</span> <<span class="keyword">typename</span> G>
-<a name="l00076"></a><a class="code" href="structggl_1_1traits_1_1use__std.html">00076</a> <span class="keyword">struct </span><a class="code" href="structggl_1_1traits_1_1use__std.html" title="Traits class, optional, indicating that the std-library should be used.">use_std</a>
-<a name="l00077"></a>00077 {
-<a name="l00078"></a><a class="code" href="structggl_1_1traits_1_1use__std.html#17f62fd601472a4c970adeda2281f145">00078</a>     <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="structggl_1_1traits_1_1use__std.html#17f62fd601472a4c970adeda2281f145">value</a> = <span class="keyword">true</span>;
-<a name="l00079"></a>00079 };
-<a name="l00080"></a>00080 
-<a name="l00081"></a>00081 } <span class="comment">// namespace traits</span>
-<a name="l00082"></a>00082 
+<a name="l00062"></a>00062 
+<a name="l00076"></a>00076 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry>
+<a name="l00077"></a><a class="code" href="structggl_1_1traits_1_1use__std.html">00077</a> <span class="keyword">struct </span><a class="code" href="structggl_1_1traits_1_1use__std.html" title="Traits class, optional, indicating that the std-library should be used.">use_std</a>
+<a name="l00078"></a>00078 {
+<a name="l00079"></a><a class="code" href="structggl_1_1traits_1_1use__std.html#53e09180303edd2ec2735f749db2305d">00079</a>     <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="structggl_1_1traits_1_1use__std.html#53e09180303edd2ec2735f749db2305d">value</a> = <span class="keyword">true</span>;
+<a name="l00080"></a>00080 };
+<a name="l00081"></a>00081 
+<a name="l00082"></a>00082 } <span class="comment">// namespace traits</span>
 <a name="l00083"></a>00083 
-<a name="l00084"></a>00084 <span class="preprocessor">#ifndef DOXYGEN_NO_DISPATCH</span>
-<a name="l00085"></a>00085 <span class="preprocessor"></span><span class="keyword">namespace </span>core_dispatch
-<a name="l00086"></a>00086 {
-<a name="l00087"></a>00087 <span class="keyword">template</span> <<span class="keyword">typename</span> Tag, <span class="keyword">typename</span> G, <span class="keyword">typename</span> T, std::<span class="keywordtype">size_t</span> D>
-<a name="l00088"></a>00088 <span class="keyword">struct </span>access
-<a name="l00089"></a>00089 {
-<a name="l00090"></a>00090     <span class="comment">//static inline T get(const G& ) {}</span>
-<a name="l00091"></a>00091     <span class="comment">//static inline void set(G& g, const T& value) {}</span>
-<a name="l00092"></a>00092 };
-<a name="l00093"></a>00093 
-<a name="l00094"></a>00094 <span class="keyword">template</span> <<span class="keyword">typename</span> Tag, <span class="keyword">typename</span> G, <span class="keyword">typename</span> T, std::<span class="keywordtype">size_t</span> I, std::<span class="keywordtype">size_t</span> D>
-<a name="l00095"></a>00095 <span class="keyword">struct </span>indexed_access
-<a name="l00096"></a>00096 {
-<a name="l00097"></a>00097     <span class="comment">//static inline T get(const G& ) {}</span>
-<a name="l00098"></a>00098     <span class="comment">//static inline void set(G& g, const T& value) {}</span>
-<a name="l00099"></a>00099 };
-<a name="l00100"></a>00100 
-<a name="l00101"></a>00101 <span class="keyword">template</span> <<span class="keyword">typename</span> P, <span class="keyword">typename</span> T, std::<span class="keywordtype">size_t</span> D>
-<a name="l00102"></a>00102 <span class="keyword">struct </span>access<point_tag, P, T, D>
-<a name="l00103"></a>00103 {
-<a name="l00104"></a>00104     <span class="keyword">static</span> <span class="keyword">inline</span> T <span class="keyword">get</span>(<span class="keyword">const</span> P& p)
-<a name="l00105"></a>00105     {
-<a name="l00106"></a>00106         <span class="keywordflow">return</span> traits::access<P>::template get<D>(p);
-<a name="l00107"></a>00107     }
-<a name="l00108"></a>00108     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(P& p, <span class="keyword">const</span> T& value)
-<a name="l00109"></a>00109     {
-<a name="l00110"></a>00110         traits::access<P>::template set<D>(p, value);
-<a name="l00111"></a>00111     }
-<a name="l00112"></a>00112 };
-<a name="l00113"></a>00113 
-<a name="l00114"></a>00114 <span class="keyword">template</span> <<span class="keyword">typename</span> S, <span class="keyword">typename</span> T, std::<span class="keywordtype">size_t</span> D>
-<a name="l00115"></a>00115 <span class="keyword">struct </span>access<nsphere_tag, S, T, D>
-<a name="l00116"></a>00116 {
-<a name="l00117"></a>00117     <span class="keyword">static</span> <span class="keyword">inline</span> T <span class="keyword">get</span>(<span class="keyword">const</span> S& s)
-<a name="l00118"></a>00118     {
-<a name="l00119"></a>00119         <span class="keywordflow">return</span> traits::access<S>::template get<D>(s);
-<a name="l00120"></a>00120     }
-<a name="l00121"></a>00121     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(S& s, <span class="keyword">const</span> T& value)
-<a name="l00122"></a>00122     {
-<a name="l00123"></a>00123         traits::access<S>::template set<D>(s, value);
-<a name="l00124"></a>00124     }
-<a name="l00125"></a>00125 };
-<a name="l00126"></a>00126 
-<a name="l00127"></a>00127 <span class="keyword">template</span> <<span class="keyword">typename</span> B, <span class="keyword">typename</span> T, std::<span class="keywordtype">size_t</span> I, std::<span class="keywordtype">size_t</span> D>
-<a name="l00128"></a>00128 <span class="keyword">struct </span>indexed_access<box_tag, B, T, I, D>
-<a name="l00129"></a>00129 {
-<a name="l00130"></a>00130     <span class="keyword">static</span> <span class="keyword">inline</span> T <span class="keyword">get</span>(<span class="keyword">const</span> B& b)
-<a name="l00131"></a>00131     {
-<a name="l00132"></a>00132         <span class="keywordflow">return</span> <a class="code" href="group__access.html#g6cf833a7f9622af2fc05fd94aa61153f" title="get a coordinate value of a point / nsphere">traits::indexed_access<B, I, D>::get</a>(b);
-<a name="l00133"></a>00133     }
-<a name="l00134"></a>00134     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(B& b, <span class="keyword">const</span> T& value)
-<a name="l00135"></a>00135     {
-<a name="l00136"></a>00136         <a class="code" href="group__access.html#g411ad2eab588e3fa0f0a3d35c79cbb4a" title="assign coordinate value to a point / sphere">traits::indexed_access<B, I, D>::set</a>(b, value);
-<a name="l00137"></a>00137     }
-<a name="l00138"></a>00138 };
-<a name="l00139"></a>00139 
-<a name="l00140"></a>00140 <span class="keyword">template</span> <<span class="keyword">typename</span> S, <span class="keyword">typename</span> T, std::<span class="keywordtype">size_t</span> I, std::<span class="keywordtype">size_t</span> D>
-<a name="l00141"></a>00141 <span class="keyword">struct </span>indexed_access<segment_tag, S, T, I, D>
-<a name="l00142"></a>00142 {
-<a name="l00143"></a>00143     <span class="keyword">static</span> <span class="keyword">inline</span> T <span class="keyword">get</span>(<span class="keyword">const</span> S& segment)
-<a name="l00144"></a>00144     {
-<a name="l00145"></a>00145         <span class="keywordflow">return</span> <a class="code" href="group__access.html#g6cf833a7f9622af2fc05fd94aa61153f" title="get a coordinate value of a point / nsphere">traits::indexed_access<S, I, D>::get</a>(segment);
-<a name="l00146"></a>00146     }
-<a name="l00147"></a>00147     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(S& segment, <span class="keyword">const</span> T& value)
-<a name="l00148"></a>00148     {
-<a name="l00149"></a>00149         <a class="code" href="group__access.html#g411ad2eab588e3fa0f0a3d35c79cbb4a" title="assign coordinate value to a point / sphere">traits::indexed_access<S, I, D>::set</a>(segment, value);
-<a name="l00150"></a>00150     }
-<a name="l00151"></a>00151 };
-<a name="l00152"></a>00152 
-<a name="l00153"></a>00153 } <span class="comment">// namespace core_dispatch</span>
-<a name="l00154"></a>00154 <span class="preprocessor">#endif // DOXYGEN_NO_DISPATCH</span>
-<a name="l00155"></a>00155 <span class="preprocessor"></span>
-<a name="l00156"></a>00156 
-<a name="l00157"></a>00157 <span class="preprocessor">#ifndef DOXYGEN_NO_DETAIL</span>
-<a name="l00158"></a>00158 <span class="preprocessor"></span><span class="keyword">namespace </span>detail
-<a name="l00159"></a>00159 {
+<a name="l00084"></a>00084 
+<a name="l00085"></a>00085 <span class="preprocessor">#ifndef DOXYGEN_NO_DISPATCH</span>
+<a name="l00086"></a>00086 <span class="preprocessor"></span><span class="keyword">namespace </span>core_dispatch
+<a name="l00087"></a>00087 {
+<a name="l00088"></a>00088 
+<a name="l00089"></a>00089 <span class="keyword">template</span> 
+<a name="l00090"></a>00090 <
+<a name="l00091"></a>00091     <span class="keyword">typename</span> Tag, 
+<a name="l00092"></a>00092     <span class="keyword">typename</span> Geometry, 
+<a name="l00093"></a>00093     <span class="keyword">typename</span> 
+<a name="l00094"></a>00094     CoordinateType, std::size_t Dimension
+<a name="l00095"></a>00095 >
+<a name="l00096"></a>00096 <span class="keyword">struct </span>access
+<a name="l00097"></a>00097 {
+<a name="l00098"></a>00098     <span class="comment">//static inline T get(const G& ) {}</span>
+<a name="l00099"></a>00099     <span class="comment">//static inline void set(G& g, T const& value) {}</span>
+<a name="l00100"></a>00100 };
+<a name="l00101"></a>00101 
+<a name="l00102"></a>00102 <span class="keyword">template</span> 
+<a name="l00103"></a>00103 <
+<a name="l00104"></a>00104     <span class="keyword">typename</span> Tag, 
+<a name="l00105"></a>00105     <span class="keyword">typename</span> Geometry, 
+<a name="l00106"></a>00106     <span class="keyword">typename</span> CoordinateType, 
+<a name="l00107"></a>00107     std::size_t Index, 
+<a name="l00108"></a>00108     std::size_t Dimension
+<a name="l00109"></a>00109 >
+<a name="l00110"></a>00110 <span class="keyword">struct </span>indexed_access
+<a name="l00111"></a>00111 {
+<a name="l00112"></a>00112     <span class="comment">//static inline T get(const G& ) {}</span>
+<a name="l00113"></a>00113     <span class="comment">//static inline void set(G& g, T const& value) {}</span>
+<a name="l00114"></a>00114 };
+<a name="l00115"></a>00115 
+<a name="l00116"></a>00116 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>, <span class="keyword">typename</span> CoordinateType, std::<span class="keywordtype">size_t</span> Dimension>
+<a name="l00117"></a>00117 <span class="keyword">struct </span>access<point_tag, Point, CoordinateType, Dimension>
+<a name="l00118"></a>00118 {
+<a name="l00119"></a>00119     <span class="keyword">static</span> <span class="keyword">inline</span> CoordinateType <span class="keyword">get</span>(Point <span class="keyword">const</span>& point)
+<a name="l00120"></a>00120     {
+<a name="l00121"></a>00121         <span class="keywordflow">return</span> <a class="code" href="group__access.html#g6cf833a7f9622af2fc05fd94aa61153f" title="get a coordinate value of a point / nsphere">traits::access<Point, Dimension>::get</a>(point);
+<a name="l00122"></a>00122     }
+<a name="l00123"></a>00123     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(Point& p, CoordinateType <span class="keyword">const</span>& value)
+<a name="l00124"></a>00124     {
+<a name="l00125"></a>00125         <a class="code" href="group__access.html#g411ad2eab588e3fa0f0a3d35c79cbb4a" title="assign coordinate value to a point / sphere">traits::access<Point, Dimension>::set</a>(p, value);
+<a name="l00126"></a>00126     }
+<a name="l00127"></a>00127 };
+<a name="l00128"></a>00128 
+<a name="l00129"></a>00129 <span class="keyword">template</span> <<span class="keyword">typename</span> Nsphere, <span class="keyword">typename</span> CoordinateType, std::<span class="keywordtype">size_t</span> Dimension>
+<a name="l00130"></a>00130 <span class="keyword">struct </span>access<nsphere_tag, Nsphere, CoordinateType, Dimension>
+<a name="l00131"></a>00131 {
+<a name="l00132"></a>00132     <span class="keyword">static</span> <span class="keyword">inline</span> CoordinateType <span class="keyword">get</span>(Nsphere <span class="keyword">const</span>& nsphere)
+<a name="l00133"></a>00133     {
+<a name="l00134"></a>00134         <span class="keywordflow">return</span> <a class="code" href="group__access.html#g6cf833a7f9622af2fc05fd94aa61153f" title="get a coordinate value of a point / nsphere">traits::access<Nsphere, Dimension>::get</a>(nsphere);
+<a name="l00135"></a>00135     }
+<a name="l00136"></a>00136     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(Nsphere& s, CoordinateType <span class="keyword">const</span>& value)
+<a name="l00137"></a>00137     {
+<a name="l00138"></a>00138         <a class="code" href="group__access.html#g411ad2eab588e3fa0f0a3d35c79cbb4a" title="assign coordinate value to a point / sphere">traits::access<Nsphere, Dimension>::set</a>(s, value);
+<a name="l00139"></a>00139     }
+<a name="l00140"></a>00140 };
+<a name="l00141"></a>00141 
+<a name="l00142"></a>00142 <span class="keyword">template</span> 
+<a name="l00143"></a>00143 <
+<a name="l00144"></a>00144     <span class="keyword">typename</span> Box, 
+<a name="l00145"></a>00145     <span class="keyword">typename</span> CoordinateType, 
+<a name="l00146"></a>00146     std::size_t Index, 
+<a name="l00147"></a>00147     std::size_t Dimension
+<a name="l00148"></a>00148 >
+<a name="l00149"></a>00149 <span class="keyword">struct </span>indexed_access<box_tag, Box, CoordinateType, Index, Dimension>
+<a name="l00150"></a>00150 {
+<a name="l00151"></a>00151     <span class="keyword">static</span> <span class="keyword">inline</span> CoordinateType <span class="keyword">get</span>(Box <span class="keyword">const</span>& box)
+<a name="l00152"></a>00152     {
+<a name="l00153"></a>00153         <span class="keywordflow">return</span> <a class="code" href="group__access.html#g6cf833a7f9622af2fc05fd94aa61153f" title="get a coordinate value of a point / nsphere">traits::indexed_access<Box, Index, Dimension>::get</a>(box);
+<a name="l00154"></a>00154     }
+<a name="l00155"></a>00155     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(Box& b, CoordinateType <span class="keyword">const</span>& value)
+<a name="l00156"></a>00156     {
+<a name="l00157"></a>00157         <a class="code" href="group__access.html#g411ad2eab588e3fa0f0a3d35c79cbb4a" title="assign coordinate value to a point / sphere">traits::indexed_access<Box, Index, Dimension>::set</a>(b, value);
+<a name="l00158"></a>00158     }
+<a name="l00159"></a>00159 };
 <a name="l00160"></a>00160 
-<a name="l00161"></a>00161 <span class="comment">// Two dummy tags to distinguish get/set variants below.</span>
-<a name="l00162"></a>00162 <span class="comment">// They don't have to be specified by the user. The functions are distinguished</span>
-<a name="l00163"></a>00163 <span class="comment">// by template signature also, but for e.g. GCC this is not enough. So give them</span>
-<a name="l00164"></a>00164 <span class="comment">// a different signature.</span>
-<a name="l00165"></a>00165 <span class="keyword">struct </span>signature_getset_dimension {};
-<a name="l00166"></a>00166 <span class="keyword">struct </span>signature_getset_index_dimension {};
-<a name="l00167"></a>00167 
-<a name="l00168"></a>00168 } <span class="comment">// namespace detail</span>
-<a name="l00169"></a>00169 <span class="preprocessor">#endif // DOXYGEN_NO_DETAIL</span>
-<a name="l00170"></a>00170 <span class="preprocessor"></span>
-<a name="l00171"></a>00171 
-<a name="l00181"></a>00181 <span class="keyword">template</span> <std::<span class="keywordtype">size_t</span> D, <span class="keyword">typename</span> G>
-<a name="l00182"></a><a class="code" href="group__access.html#g6cf833a7f9622af2fc05fd94aa61153f">00182</a> <span class="keyword">inline</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<G>::type</a> <span class="keyword">get</span>(<span class="keyword">const</span> G& geometry,
-<a name="l00183"></a>00183     detail::signature_getset_dimension* dummy = 0)
-<a name="l00184"></a>00184 {
-<a name="l00185"></a>00185     boost::ignore_unused_variable_warning(dummy);
-<a name="l00186"></a>00186 
-<a name="l00187"></a>00187     <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::remove_const<G>::type ncg_type;
-<a name="l00188"></a>00188 
-<a name="l00189"></a>00189     <span class="keyword">typedef</span> core_dispatch::access
-<a name="l00190"></a>00190         <
-<a name="l00191"></a>00191         <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<G>::type</a>,
-<a name="l00192"></a>00192         ncg_type,
-<a name="l00193"></a>00193         <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<ncg_type>::type</a>,
-<a name="l00194"></a>00194         D
-<a name="l00195"></a>00195         > coord_access_type;
-<a name="l00196"></a>00196 
-<a name="l00197"></a>00197     <span class="keywordflow">return</span> <a class="code" href="group__access.html#g6cf833a7f9622af2fc05fd94aa61153f" title="get a coordinate value of a point / nsphere">coord_access_type::get</a>(geometry);
-<a name="l00198"></a>00198 }
-<a name="l00199"></a>00199 
-<a name="l00200"></a>00200 
-<a name="l00210"></a>00210 <span class="keyword">template</span> <std::<span class="keywordtype">size_t</span> D, <span class="keyword">typename</span> G>
-<a name="l00211"></a><a class="code" href="group__access.html#g411ad2eab588e3fa0f0a3d35c79cbb4a">00211</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(G& geometry, <span class="keyword">const</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<G>::type</a>& value,
-<a name="l00212"></a>00212     detail::signature_getset_dimension* dummy = 0)
-<a name="l00213"></a>00213 {
-<a name="l00214"></a>00214     boost::ignore_unused_variable_warning(dummy);
+<a name="l00161"></a>00161 <span class="keyword">template</span> 
+<a name="l00162"></a>00162 <
+<a name="l00163"></a>00163     <span class="keyword">typename</span> Segment, 
+<a name="l00164"></a>00164     <span class="keyword">typename</span> CoordinateType, 
+<a name="l00165"></a>00165     std::size_t Index, 
+<a name="l00166"></a>00166     std::size_t Dimension
+<a name="l00167"></a>00167 >
+<a name="l00168"></a>00168 <span class="keyword">struct </span>indexed_access<segment_tag, Segment, CoordinateType, Index, Dimension>
+<a name="l00169"></a>00169 {
+<a name="l00170"></a>00170     <span class="keyword">static</span> <span class="keyword">inline</span> CoordinateType <span class="keyword">get</span>(Segment <span class="keyword">const</span>& segment)
+<a name="l00171"></a>00171     {
+<a name="l00172"></a>00172         <span class="keywordflow">return</span> <a class="code" href="group__access.html#g6cf833a7f9622af2fc05fd94aa61153f" title="get a coordinate value of a point / nsphere">traits::indexed_access<Segment, Index, Dimension>::get</a>(segment);
+<a name="l00173"></a>00173     }
+<a name="l00174"></a>00174     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(Segment& segment, CoordinateType <span class="keyword">const</span>& value)
+<a name="l00175"></a>00175     {
+<a name="l00176"></a>00176         <a class="code" href="group__access.html#g411ad2eab588e3fa0f0a3d35c79cbb4a" title="assign coordinate value to a point / sphere">traits::indexed_access<Segment, Index, Dimension>::set</a>(segment, value);
+<a name="l00177"></a>00177     }
+<a name="l00178"></a>00178 };
+<a name="l00179"></a>00179 
+<a name="l00180"></a>00180 } <span class="comment">// namespace core_dispatch</span>
+<a name="l00181"></a>00181 <span class="preprocessor">#endif // DOXYGEN_NO_DISPATCH</span>
+<a name="l00182"></a>00182 <span class="preprocessor"></span>
+<a name="l00183"></a>00183 
+<a name="l00184"></a>00184 <span class="preprocessor">#ifndef DOXYGEN_NO_DETAIL</span>
+<a name="l00185"></a>00185 <span class="preprocessor"></span><span class="keyword">namespace </span>detail
+<a name="l00186"></a>00186 {
+<a name="l00187"></a>00187 
+<a name="l00188"></a>00188 <span class="comment">// Two dummy tags to distinguish get/set variants below.</span>
+<a name="l00189"></a>00189 <span class="comment">// They don't have to be specified by the user. The functions are distinguished</span>
+<a name="l00190"></a>00190 <span class="comment">// by template signature also, but for e.g. GCC this is not enough. So give them</span>
+<a name="l00191"></a>00191 <span class="comment">// a different signature.</span>
+<a name="l00192"></a>00192 <span class="keyword">struct </span>signature_getset_dimension {};
+<a name="l00193"></a>00193 <span class="keyword">struct </span>signature_getset_index_dimension {};
+<a name="l00194"></a>00194 
+<a name="l00195"></a>00195 } <span class="comment">// namespace detail</span>
+<a name="l00196"></a>00196 <span class="preprocessor">#endif // DOXYGEN_NO_DETAIL</span>
+<a name="l00197"></a>00197 <span class="preprocessor"></span>
+<a name="l00198"></a>00198 
+<a name="l00208"></a>00208 <span class="keyword">template</span> <std::<span class="keywordtype">size_t</span> D, <span class="keyword">typename</span> G>
+<a name="l00209"></a><a class="code" href="group__access.html#g6cf833a7f9622af2fc05fd94aa61153f">00209</a> <span class="keyword">inline</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<G>::type</a> <span class="keyword">get</span>(<span class="keyword">const</span> G& geometry,
+<a name="l00210"></a>00210     detail::signature_getset_dimension* dummy = 0)
+<a name="l00211"></a>00211 {
+<a name="l00212"></a>00212     boost::ignore_unused_variable_warning(dummy);
+<a name="l00213"></a>00213 
+<a name="l00214"></a>00214     <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::remove_const<G>::type ncg_type;
 <a name="l00215"></a>00215 
-<a name="l00216"></a>00216     <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::remove_const<G>::type ncg_type;
-<a name="l00217"></a>00217 
-<a name="l00218"></a>00218     <span class="keyword">typedef</span> core_dispatch::access
-<a name="l00219"></a>00219         <
-<a name="l00220"></a>00220         <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<G>::type</a>,
-<a name="l00221"></a>00221         ncg_type,
-<a name="l00222"></a>00222         <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<ncg_type>::type</a>,
-<a name="l00223"></a>00223         D
-<a name="l00224"></a>00224         > coord_access_type;
-<a name="l00225"></a>00225 
-<a name="l00226"></a>00226     <a class="code" href="group__access.html#g411ad2eab588e3fa0f0a3d35c79cbb4a" title="assign coordinate value to a point / sphere">coord_access_type::set</a>(geometry, value);
-<a name="l00227"></a>00227 }
-<a name="l00228"></a>00228 
-<a name="l00229"></a>00229 <span class="comment">// Note: doxygen needs a construct to distinguish get/set (like the gcc compiler)</span>
-<a name="l00230"></a>00230 
-<a name="l00241"></a>00241 <span class="keyword">template</span> <std::<span class="keywordtype">size_t</span> I, std::<span class="keywordtype">size_t</span> D, <span class="keyword">typename</span> G>
-<a name="l00242"></a><a class="code" href="group__access.html#gd3c007fcbae837d56d13aa77ed03f920">00242</a> <span class="keyword">inline</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<G>::type</a> <span class="keyword">get</span>(<span class="keyword">const</span> G& geometry,
-<a name="l00243"></a>00243     detail::signature_getset_index_dimension* dummy = 0)
-<a name="l00244"></a>00244 {
-<a name="l00245"></a>00245     boost::ignore_unused_variable_warning(dummy);
-<a name="l00246"></a>00246 
-<a name="l00247"></a>00247     <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::remove_const<G>::type ncg_type;
-<a name="l00248"></a>00248 
-<a name="l00249"></a>00249     <span class="keyword">typedef</span> core_dispatch::indexed_access
-<a name="l00250"></a>00250         <
-<a name="l00251"></a>00251         <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<G>::type</a>,
-<a name="l00252"></a>00252         ncg_type,
-<a name="l00253"></a>00253         <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<ncg_type>::type</a>,
-<a name="l00254"></a>00254         I,
-<a name="l00255"></a>00255         D
-<a name="l00256"></a>00256         > coord_access_type;
+<a name="l00216"></a>00216     <span class="keyword">typedef</span> core_dispatch::access
+<a name="l00217"></a>00217         <
+<a name="l00218"></a>00218             <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<G>::type</a>,
+<a name="l00219"></a>00219             ncg_type,
+<a name="l00220"></a>00220             <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<ncg_type>::type</a>,
+<a name="l00221"></a>00221             D
+<a name="l00222"></a>00222         > coord_access_type;
+<a name="l00223"></a>00223 
+<a name="l00224"></a>00224     <span class="keywordflow">return</span> <a class="code" href="group__access.html#g6cf833a7f9622af2fc05fd94aa61153f" title="get a coordinate value of a point / nsphere">coord_access_type::get</a>(geometry);
+<a name="l00225"></a>00225 }
+<a name="l00226"></a>00226 
+<a name="l00227"></a>00227 
+<a name="l00237"></a>00237 <span class="keyword">template</span> <std::<span class="keywordtype">size_t</span> D, <span class="keyword">typename</span> G>
+<a name="l00238"></a><a class="code" href="group__access.html#g411ad2eab588e3fa0f0a3d35c79cbb4a">00238</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(G& geometry, <span class="keyword">const</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<G>::type</a>& value,
+<a name="l00239"></a>00239     detail::signature_getset_dimension* dummy = 0)
+<a name="l00240"></a>00240 {
+<a name="l00241"></a>00241     boost::ignore_unused_variable_warning(dummy);
+<a name="l00242"></a>00242 
+<a name="l00243"></a>00243     <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::remove_const<G>::type ncg_type;
+<a name="l00244"></a>00244 
+<a name="l00245"></a>00245     <span class="keyword">typedef</span> core_dispatch::access
+<a name="l00246"></a>00246         <
+<a name="l00247"></a>00247             <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<G>::type</a>,
+<a name="l00248"></a>00248             ncg_type,
+<a name="l00249"></a>00249             <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<ncg_type>::type</a>,
+<a name="l00250"></a>00250             D
+<a name="l00251"></a>00251         > coord_access_type;
+<a name="l00252"></a>00252 
+<a name="l00253"></a>00253     <a class="code" href="group__access.html#g411ad2eab588e3fa0f0a3d35c79cbb4a" title="assign coordinate value to a point / sphere">coord_access_type::set</a>(geometry, value);
+<a name="l00254"></a>00254 }
+<a name="l00255"></a>00255 
+<a name="l00256"></a>00256 <span class="comment">// Note: doxygen needs a construct to distinguish get/set (like the gcc compiler)</span>
 <a name="l00257"></a>00257 
-<a name="l00258"></a>00258     <span class="keywordflow">return</span> <a class="code" href="group__access.html#g6cf833a7f9622af2fc05fd94aa61153f" title="get a coordinate value of a point / nsphere">coord_access_type::get</a>(geometry);
-<a name="l00259"></a>00259 }
-<a name="l00260"></a>00260 
-<a name="l00271"></a>00271 <span class="keyword">template</span> <std::<span class="keywordtype">size_t</span> I, std::<span class="keywordtype">size_t</span> D, <span class="keyword">typename</span> G>
-<a name="l00272"></a><a class="code" href="group__access.html#g6ced3f6383c5e664984c54a36a1d78a2">00272</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(G& geometry, <span class="keyword">const</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<G>::type</a>& value,
-<a name="l00273"></a>00273     detail::signature_getset_index_dimension* dummy = 0)
-<a name="l00274"></a>00274 {
-<a name="l00275"></a>00275     boost::ignore_unused_variable_warning(dummy);
-<a name="l00276"></a>00276 
-<a name="l00277"></a>00277     <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::remove_const<G>::type ncg_type;
-<a name="l00278"></a>00278 
-<a name="l00279"></a>00279     <span class="keyword">typedef</span> core_dispatch::indexed_access
-<a name="l00280"></a>00280         <
-<a name="l00281"></a>00281         <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<G>::type</a>, ncg_type,
-<a name="l00282"></a>00282         <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<ncg_type>::type</a>,
-<a name="l00283"></a>00283         I,
-<a name="l00284"></a>00284         D
-<a name="l00285"></a>00285         > coord_access_type;
-<a name="l00286"></a>00286 
-<a name="l00287"></a>00287     <a class="code" href="group__access.html#g411ad2eab588e3fa0f0a3d35c79cbb4a" title="assign coordinate value to a point / sphere">coord_access_type::set</a>(geometry, value);
-<a name="l00288"></a>00288 }
-<a name="l00289"></a>00289 
-<a name="l00290"></a>00290 } <span class="comment">// namespace ggl</span>
-<a name="l00291"></a>00291 
-<a name="l00292"></a>00292 <span class="preprocessor">#endif // GGL_CORE_ACCESS_HPP</span>
+<a name="l00268"></a>00268 <span class="keyword">template</span> <std::<span class="keywordtype">size_t</span> I, std::<span class="keywordtype">size_t</span> D, <span class="keyword">typename</span> G>
+<a name="l00269"></a><a class="code" href="group__access.html#gd3c007fcbae837d56d13aa77ed03f920">00269</a> <span class="keyword">inline</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<G>::type</a> <span class="keyword">get</span>(<span class="keyword">const</span> G& geometry,
+<a name="l00270"></a>00270     detail::signature_getset_index_dimension* dummy = 0)
+<a name="l00271"></a>00271 {
+<a name="l00272"></a>00272     boost::ignore_unused_variable_warning(dummy);
+<a name="l00273"></a>00273 
+<a name="l00274"></a>00274     <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::remove_const<G>::type ncg_type;
+<a name="l00275"></a>00275 
+<a name="l00276"></a>00276     <span class="keyword">typedef</span> core_dispatch::indexed_access
+<a name="l00277"></a>00277         <
+<a name="l00278"></a>00278         <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<G>::type</a>,
+<a name="l00279"></a>00279         ncg_type,
+<a name="l00280"></a>00280         <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<ncg_type>::type</a>,
+<a name="l00281"></a>00281         I,
+<a name="l00282"></a>00282         D
+<a name="l00283"></a>00283         > coord_access_type;
+<a name="l00284"></a>00284 
+<a name="l00285"></a>00285     <span class="keywordflow">return</span> <a class="code" href="group__access.html#g6cf833a7f9622af2fc05fd94aa61153f" title="get a coordinate value of a point / nsphere">coord_access_type::get</a>(geometry);
+<a name="l00286"></a>00286 }
+<a name="l00287"></a>00287 
+<a name="l00298"></a>00298 <span class="keyword">template</span> <std::<span class="keywordtype">size_t</span> I, std::<span class="keywordtype">size_t</span> D, <span class="keyword">typename</span> G>
+<a name="l00299"></a><a class="code" href="group__access.html#g6ced3f6383c5e664984c54a36a1d78a2">00299</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(G& geometry, <span class="keyword">const</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<G>::type</a>& value,
+<a name="l00300"></a>00300     detail::signature_getset_index_dimension* dummy = 0)
+<a name="l00301"></a>00301 {
+<a name="l00302"></a>00302     boost::ignore_unused_variable_warning(dummy);
+<a name="l00303"></a>00303 
+<a name="l00304"></a>00304     <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::remove_const<G>::type ncg_type;
+<a name="l00305"></a>00305 
+<a name="l00306"></a>00306     <span class="keyword">typedef</span> core_dispatch::indexed_access
+<a name="l00307"></a>00307         <
+<a name="l00308"></a>00308         <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<G>::type</a>, ncg_type,
+<a name="l00309"></a>00309         <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<ncg_type>::type</a>,
+<a name="l00310"></a>00310         I,
+<a name="l00311"></a>00311         D
+<a name="l00312"></a>00312         > coord_access_type;
+<a name="l00313"></a>00313 
+<a name="l00314"></a>00314     <a class="code" href="group__access.html#g411ad2eab588e3fa0f0a3d35c79cbb4a" title="assign coordinate value to a point / sphere">coord_access_type::set</a>(geometry, value);
+<a name="l00315"></a>00315 }
+<a name="l00316"></a>00316 
+<a name="l00317"></a>00317 } <span class="comment">// namespace ggl</span>
+<a name="l00318"></a>00318 
+<a name="l00319"></a>00319 <span class="preprocessor">#endif // GGL_CORE_ACCESS_HPP</span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/agn__simplify_8hpp.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/agn__simplify_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,83 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li>Classes</li>
-      <li class="current">Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>File List</li>
-      <li>File Members</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
-<h1>ggl/strategies/agnostic/agn_simplify.hpp File Reference</h1>
-<p>
-Go to the source code of this file.<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker< R, O_IT, PSDS ></a></td></tr>
-
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Implements the <a class="el" href="namespaceggl_1_1strategy_1_1simplify.html">simplify</a> algorithm.  More...<br></td></tr>
-<tr><td colspan="2"><br><h2>Namespaces</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl.html">ggl</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl_1_1strategy.html">ggl::strategy</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl_1_1strategy_1_1simplify.html">ggl::strategy::simplify</a></td></tr>
-
-</table>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/agn__simplify_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/agn__simplify_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,236 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li>Classes</li>
-      <li class="current">Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>File List</li>
-      <li>File Members</li>
-    </ul>
-  </div>
-<h1>ggl/strategies/agnostic/agn_simplify.hpp</h1>Go to the documentation of this file.<div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">// Generic Geometry Library</span>
-<a name="l00002"></a>00002 <span class="comment">//</span>
-<a name="l00003"></a>00003 <span class="comment">// Copyright Barend Gehrels 1995-2009, Geodan Holding B.V. Amsterdam, the Netherlands.</span>
-<a name="l00004"></a>00004 <span class="comment">// Copyright Bruno Lalande 2008, 2009</span>
-<a name="l00005"></a>00005 <span class="comment">// Use, modification and distribution is subject to the Boost Software License,</span>
-<a name="l00006"></a>00006 <span class="comment">// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at</span>
-<a name="l00007"></a>00007 <span class="comment">// http://www.boost.org/LICENSE_1_0.txt)</span>
-<a name="l00008"></a>00008 
-<a name="l00009"></a>00009 <span class="preprocessor">#ifndef GGL_STRATEGY_AGNOSTIC_SIMPLIFY_HPP</span>
-<a name="l00010"></a>00010 <span class="preprocessor"></span><span class="preprocessor">#define GGL_STRATEGY_AGNOSTIC_SIMPLIFY_HPP</span>
-<a name="l00011"></a>00011 <span class="preprocessor"></span>
-<a name="l00012"></a>00012 <span class="preprocessor">#include <boost/range/functions.hpp></span>
-<a name="l00013"></a>00013 
-<a name="l00014"></a>00014 <span class="preprocessor">#include <<a class="code" href="cs_8hpp.html">ggl/core/cs.hpp</a>></span>
-<a name="l00015"></a>00015 
-<a name="l00016"></a>00016 
-<a name="l00017"></a>00017 <span class="comment">//#define GL_DEBUG_SIMPLIFY</span>
-<a name="l00018"></a>00018 
-<a name="l00019"></a>00019 <span class="preprocessor">#ifdef GL_DEBUG_SIMPLIFY</span>
-<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#include <ggl/extensions/gis/io/wkt/write_wkt.hpp></span>
-<a name="l00021"></a>00021 <span class="preprocessor">#include <ggl/extensions/gis/io/wkt/stream_wkt.hpp></span>
-<a name="l00022"></a>00022 <span class="preprocessor">#include <iostream></span>
-<a name="l00023"></a>00023 <span class="preprocessor">#endif</span>
-<a name="l00024"></a>00024 <span class="preprocessor"></span>
-<a name="l00025"></a>00025 
-<a name="l00026"></a>00026 <span class="keyword">namespace </span>ggl
-<a name="l00027"></a>00027 {
-<a name="l00028"></a>00028 <span class="keyword">namespace </span>strategy
-<a name="l00029"></a>00029 {
-<a name="l00030"></a><a class="code" href="namespaceggl_1_1strategy_1_1simplify.html">00030</a>     <span class="keyword">namespace </span><a class="code" href="group__simplify.html#g752a5b4c8a40756da0e717c1ae4d2d8d" title="Simplify a geometry.">simplify</a>
-<a name="l00031"></a>00031     {
-<a name="l00032"></a>00032 <span class="preprocessor">        #ifndef DOXYGEN_NO_DETAIL</span>
-<a name="l00033"></a>00033 <span class="preprocessor"></span>        <span class="keyword">namespace </span>detail
-<a name="l00034"></a>00034         {
-<a name="l00035"></a>00035 
-<a name="l00044"></a>00044             <span class="keyword">template</span><<span class="keyword">typename</span> P>
-<a name="l00045"></a>00045             <span class="keyword">struct </span>douglas_peucker_point
-<a name="l00046"></a>00046             {
-<a name="l00047"></a>00047                 <span class="keyword">const</span> P& p;
-<a name="l00048"></a>00048                 <span class="keywordtype">bool</span> included;
-<a name="l00049"></a>00049 
-<a name="l00050"></a>00050                 <span class="keyword">inline</span> douglas_peucker_point(<span class="keyword">const</span> P& ap)
-<a name="l00051"></a>00051                     : p(ap)
-<a name="l00052"></a>00052                     , included(<span class="keyword">false</span>)
-<a name="l00053"></a>00053                 {}
-<a name="l00054"></a>00054 
-<a name="l00055"></a>00055                 <span class="keyword">inline</span> douglas_peucker_point<P> operator=(<span class="keyword">const</span> douglas_peucker_point<P>& other)
-<a name="l00056"></a>00056                 {
-<a name="l00057"></a>00057                     <span class="keywordflow">return</span> douglas_peucker_point<P>(*this);
-<a name="l00058"></a>00058                 }
-<a name="l00059"></a>00059             };
-<a name="l00060"></a>00060         }
-<a name="l00061"></a>00061 <span class="preprocessor">        #endif // DOXYGEN_NO_DETAIL</span>
-<a name="l00062"></a>00062 <span class="preprocessor"></span>
-<a name="l00063"></a>00063 
-<a name="l00078"></a>00078         <span class="keyword">template</span><<span class="keyword">typename</span> R, <span class="keyword">typename</span> O_IT, <span class="keyword">typename</span> PSDS>
-<a name="l00079"></a><a class="code" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">00079</a>         <span class="keyword">class </span><a class="code" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html" title="Implements the simplify algorithm.">douglas_peucker</a>
-<a name="l00080"></a>00080         {
-<a name="l00081"></a>00081             <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type<R>::type</a> P;
-<a name="l00082"></a>00082             <span class="keyword">typedef</span> detail::douglas_peucker_point<P> DP;
-<a name="l00083"></a>00083             <span class="keyword">typedef</span> <span class="keyword">typename</span> std::vector<DP>::iterator DIT;
-<a name="l00084"></a>00084 
-<a name="l00085"></a>00085             <span class="keyword">typedef</span> <span class="keyword">typename</span> PSDS::return_type RET;
-<a name="l00086"></a>00086 
-<a name="l00087"></a>00087             <span class="keyword">inline</span> <span class="keywordtype">void</span> consider(DIT begin, DIT end, <span class="keyword">const</span> RET& max_dist, <span class="keywordtype">int</span>& n,
-<a name="l00088"></a>00088                             <span class="keyword">const</span> PSDS& ps_distance_strategy)<span class="keyword"> const</span>
-<a name="l00089"></a>00089 <span class="keyword">            </span>{
-<a name="l00090"></a>00090                 <span class="keywordtype">size_t</span> size = end - begin;
-<a name="l00091"></a>00091                 <span class="comment">// size must be at least 3 here: we want to consider a candidate point between begin and end</span>
-<a name="l00092"></a>00092                 <span class="keywordflow">if</span> (size <= 2)
-<a name="l00093"></a>00093                 {
-<a name="l00094"></a>00094 <span class="preprocessor">#ifdef GL_DEBUG_SIMPLIFY</span>
-<a name="l00095"></a>00095 <span class="preprocessor"></span>                    <span class="keywordflow">if</span> (begin != end)
-<a name="l00096"></a>00096                     {
-<a name="l00097"></a>00097                         std::cout << <span class="stringliteral">"ignore between "</span> << begin->p << <span class="stringliteral">" and "</span> << (end - 1)->p << <span class="stringliteral">" size="</span> << size << std::endl;
-<a name="l00098"></a>00098                     }
-<a name="l00099"></a>00099                     std::cout << <span class="stringliteral">"return because size="</span> << size << std::endl;
-<a name="l00100"></a>00100 <span class="preprocessor">#endif</span>
-<a name="l00101"></a>00101 <span class="preprocessor"></span>                    <span class="keywordflow">return</span>;
-<a name="l00102"></a>00102                 }
-<a name="l00103"></a>00103 
-<a name="l00104"></a>00104                 DIT last = end - 1;
-<a name="l00105"></a>00105 
-<a name="l00106"></a>00106 <span class="preprocessor">#ifdef GL_DEBUG_SIMPLIFY</span>
-<a name="l00107"></a>00107 <span class="preprocessor"></span>                std::cout << <span class="stringliteral">"find between "</span> << begin->p << <span class="stringliteral">" and "</span> << last->p << <span class="stringliteral">" size="</span> << size << std::endl;
-<a name="l00108"></a>00108 <span class="preprocessor">#endif</span>
-<a name="l00109"></a>00109 <span class="preprocessor"></span>
-<a name="l00110"></a>00110 
-<a name="l00111"></a>00111                 <span class="comment">// Find most distance point, compare to the current segment</span>
-<a name="l00112"></a>00112                 <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">ggl::segment<const P></a> s(begin->p, last->p);
-<a name="l00113"></a>00113                 RET md(-1.0); <span class="comment">// any value < 0</span>
-<a name="l00114"></a>00114                 DIT candidate;
-<a name="l00115"></a>00115                 <span class="keywordflow">for</span>(DIT it = begin + 1; it != last; it++)
-<a name="l00116"></a>00116                 {
-<a name="l00117"></a>00117                     RET dist = ps_distance_strategy(it->p, s);
-<a name="l00118"></a>00118 
-<a name="l00119"></a>00119 <span class="preprocessor">#ifdef GL_DEBUG_SIMPLIFY</span>
-<a name="l00120"></a>00120 <span class="preprocessor"></span>                    std::cout << <span class="stringliteral">"consider "</span> << it->p << <span class="stringliteral">" at "</span> << dist.value() << (dist.value() > max_dist.value() ? <span class="stringliteral">" maybe"</span> : <span class="stringliteral">" no"</span>) << std::endl;
-<a name="l00121"></a>00121 <span class="preprocessor">#endif</span>
-<a name="l00122"></a>00122 <span class="preprocessor"></span>                    <span class="keywordflow">if</span> (dist > md)
-<a name="l00123"></a>00123                     {
-<a name="l00124"></a>00124                         md = dist;
-<a name="l00125"></a>00125                         candidate = it;
-<a name="l00126"></a>00126                     }
-<a name="l00127"></a>00127                 }
-<a name="l00128"></a>00128 
-<a name="l00129"></a>00129                 <span class="comment">// If a point is found, set the include flag and handle segments in between recursively</span>
-<a name="l00130"></a>00130                 <span class="keywordflow">if</span> (md > max_dist)
-<a name="l00131"></a>00131                 {
-<a name="l00132"></a>00132 <span class="preprocessor">#ifdef GL_DEBUG_SIMPLIFY</span>
-<a name="l00133"></a>00133 <span class="preprocessor"></span>                    std::cout << <span class="stringliteral">"use "</span> << candidate->p << std::endl;
-<a name="l00134"></a>00134 <span class="preprocessor">#endif</span>
-<a name="l00135"></a>00135 <span class="preprocessor"></span>
-<a name="l00136"></a>00136                     candidate->included = <span class="keyword">true</span>;
-<a name="l00137"></a>00137                     n++;
-<a name="l00138"></a>00138 
-<a name="l00139"></a>00139                     consider(begin, candidate + 1, max_dist, n, ps_distance_strategy);
-<a name="l00140"></a>00140                     consider(candidate, end, max_dist, n, ps_distance_strategy);
-<a name="l00141"></a>00141                 }
-<a name="l00142"></a>00142             }
-<a name="l00143"></a>00143 
-<a name="l00144"></a>00144 
-<a name="l00145"></a>00145         <span class="keyword">public</span> :
-<a name="l00146"></a>00146 
-<a name="l00147"></a><a class="code" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#8baa11b24fd260345ee451512c710350">00147</a>             <span class="keyword">typedef</span> PSDS <a class="code" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#8baa11b24fd260345ee451512c710350">distance_strategy_type</a>;
-<a name="l00148"></a>00148 
-<a name="l00152"></a><a class="code" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#dca55aa87f6d5b49df52585fa0f97add">00152</a>             <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#dca55aa87f6d5b49df52585fa0f97add" title="Call simplification on an iterator pair.">simplify</a>(<span class="keyword">const</span> R& range, O_IT out, <span class="keywordtype">double</span> max_distance)<span class="keyword"> const</span>
-<a name="l00153"></a>00153 <span class="keyword">            </span>{
-<a name="l00154"></a>00154                 PSDS strategy;
-<a name="l00155"></a>00155                 <span class="comment">// Init the output, a vector of references to all points</span>
-<a name="l00156"></a>00156 
-<a name="l00157"></a>00157                 <span class="comment">// Note Geometry Algorithms suggest here</span>
-<a name="l00158"></a>00158                 <span class="comment">// http://geometryalgorithms.com/Archive/algorithm_0205/algorithm_0205.htm>
-<a name="l00159"></a>00159                 <span class="comment">// to "STAGE 1: Vertex Reduction within max_distance of prior vertex cluster"</span>
-<a name="l00160"></a>00160                 <span class="comment">// However, that is not correct: a vertex within the specified distance might be</span>
-<a name="l00161"></a>00161                 <span class="comment">// excluded here, but might be a better candidate for final inclusion than the point before.</span>
-<a name="l00162"></a>00162 
-<a name="l00163"></a>00163                 std::vector<DP> ref_candidates(boost::begin(range), boost::end(range));
-<a name="l00164"></a>00164 
-<a name="l00165"></a>00165                 <span class="comment">// Include first and last point of line, they are always part of the line</span>
-<a name="l00166"></a>00166                 <span class="keywordtype">int</span> n = 2;
-<a name="l00167"></a>00167                 ref_candidates.front().included = <span class="keyword">true</span>;
-<a name="l00168"></a>00168                 ref_candidates.back().included = <span class="keyword">true</span>;
-<a name="l00169"></a>00169 
-<a name="l00170"></a>00170                 <span class="comment">// Get points, recursively, including them if they are further away than the specified distance</span>
-<a name="l00171"></a>00171                 <span class="keyword">typedef</span> <span class="keyword">typename</span> PSDS::return_type RET;
-<a name="l00172"></a>00172 
-<a name="l00173"></a>00173                 consider(boost::begin(ref_candidates), boost::end(ref_candidates),
-<a name="l00174"></a>00174                     make_distance_result<RET>(max_distance), n, strategy);
-<a name="l00175"></a>00175 
-<a name="l00176"></a>00176                 <span class="comment">// Copy included elements to the output  (might be changed using copy_if)</span>
-<a name="l00177"></a>00177                 <span class="keywordflow">for</span>(<span class="keyword">typename</span> std::vector<DP>::const_iterator it = boost::begin(ref_candidates);
-<a name="l00178"></a>00178                     it != boost::end(ref_candidates); it++)
-<a name="l00179"></a>00179                 {
-<a name="l00180"></a>00180                     <span class="keywordflow">if</span> (it->included)
-<a name="l00181"></a>00181                     {
-<a name="l00182"></a>00182                         *out = it->p;
-<a name="l00183"></a>00183                         out++;
-<a name="l00184"></a>00184                     }
-<a name="l00185"></a>00185                 }
-<a name="l00186"></a>00186             }
-<a name="l00187"></a>00187 
-<a name="l00188"></a>00188         };
-<a name="l00189"></a>00189 
-<a name="l00190"></a>00190     }
-<a name="l00191"></a>00191 }
-<a name="l00192"></a>00192 
-<a name="l00193"></a>00193 
-<a name="l00194"></a>00194 } <span class="comment">// namespace ggl</span>
-<a name="l00195"></a>00195 
-<a name="l00196"></a>00196 <span class="preprocessor">#endif // GGL_STRATEGY_AGNOSTIC_SIMPLIFY_HPP</span>
-</pre></div></div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/agn__within_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/agn__within_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/agn__within_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -90,7 +90,7 @@
 <a name="l00059"></a>00059                 };
 <a name="l00060"></a>00060 
 <a name="l00061"></a>00061                 <span class="keyword">template</span> <<span class="keywordtype">size_t</span> D>
-<a name="l00062"></a>00062                 <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> check_touch(<span class="keyword">const</span> <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment<const PS></a>& s, windings& state)
+<a name="l00062"></a>00062                 <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> check_touch(<span class="keyword">const</span> <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment<const PS></a>& s, windings& state)
 <a name="l00063"></a>00063                 {
 <a name="l00064"></a>00064                     <span class="keyword">const</span> PT& p = get<D>(state.p);
 <a name="l00065"></a>00065                     <span class="keyword">const</span> ST& s1 = get<0, D>(s);
@@ -104,7 +104,7 @@
 <a name="l00073"></a>00073 
 <a name="l00074"></a>00074 
 <a name="l00075"></a>00075                 <span class="keyword">template</span> <<span class="keywordtype">size_t</span> D>
-<a name="l00076"></a>00076                 <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> check_segment(<span class="keyword">const</span> <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment<const PS></a>& s, windings& state)
+<a name="l00076"></a>00076                 <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> check_segment(<span class="keyword">const</span> <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment<const PS></a>& s, windings& state)
 <a name="l00077"></a>00077                 {
 <a name="l00078"></a>00078                     <span class="keyword">const</span> PT& p = get<D>(state.p);
 <a name="l00079"></a>00079                     <span class="keyword">const</span> ST& s1 = get<0, D>(s);
@@ -134,7 +134,7 @@
 <a name="l00103"></a>00103 
 <a name="l00104"></a><a class="code" href="classggl_1_1strategy_1_1within_1_1winding.html#aa5dc8bd530eed3ac8420ccccd2c8e65">00104</a>                 <span class="keyword">typedef</span> windings <a class="code" href="classggl_1_1strategy_1_1within_1_1winding.html#aa5dc8bd530eed3ac8420ccccd2c8e65">state_type</a>;
 <a name="l00105"></a>00105 
-<a name="l00106"></a><a class="code" href="classggl_1_1strategy_1_1within_1_1winding.html#8ce0e3219bdded9943af7bc594a7f1be">00106</a>                 <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classggl_1_1strategy_1_1within_1_1winding.html#8ce0e3219bdded9943af7bc594a7f1be">operator()</a>(<span class="keyword">const</span> <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment<const PS></a>& s, <a class="code" href="classggl_1_1strategy_1_1within_1_1winding.html#aa5dc8bd530eed3ac8420ccccd2c8e65">state_type</a>& state)<span class="keyword"> const</span>
+<a name="l00106"></a><a class="code" href="classggl_1_1strategy_1_1within_1_1winding.html#8ce0e3219bdded9943af7bc594a7f1be">00106</a>                 <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classggl_1_1strategy_1_1within_1_1winding.html#8ce0e3219bdded9943af7bc594a7f1be">operator()</a>(<span class="keyword">const</span> <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment<const PS></a>& s, <a class="code" href="classggl_1_1strategy_1_1within_1_1winding.html#aa5dc8bd530eed3ac8420ccccd2c8e65">state_type</a>& state)<span class="keyword"> const</span>
 <a name="l00107"></a>00107 <span class="keyword">                </span>{
 <a name="l00108"></a>00108                     <span class="keywordtype">int</span> cnt = check_segment<1>(s, state);
 <a name="l00109"></a>00109                     <span class="keywordflow">if</span> (cnt != 0)
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2area_8hpp.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2area_8hpp.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2area_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -46,9 +46,6 @@
 <p>
 <a href="algorithms_2area_8hpp_source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
 <tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1area__result.html">ggl::area_result< Geometry ></a></td></tr>
-
 <tr><td colspan="2"><br><h2>Namespaces</h2></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl.html">ggl</a></td></tr>
 
@@ -58,10 +55,9 @@
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate area of a geometry using a <a class="el" href="namespaceggl_1_1strategy.html">strategy</a>.  <br></td></tr>
 <tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">area_result< Geometry ><br class="typebreak">
-::return_type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3">ggl::area</a> (Geometry const &geometry)</td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">area_result< Geometry >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d">ggl::area</a> (Geometry const &geometry)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate area of a geometry.  <br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate area of a geometry.  <br></td></tr>
 </table>
 </div>
 <hr size="1">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2area_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2area_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2area_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -52,10 +52,10 @@
 <a name="l00010"></a>00010 <span class="preprocessor"></span><span class="preprocessor">#define GGL_ALGORITHMS_AREA_HPP</span>
 <a name="l00011"></a>00011 <span class="preprocessor"></span>
 <a name="l00012"></a>00012 <span class="preprocessor">#include <boost/concept/requires.hpp></span>
-<a name="l00013"></a>00013 <span class="preprocessor">#include <boost/range/functions.hpp></span>
-<a name="l00014"></a>00014 <span class="preprocessor">#include <boost/range/metafunctions.hpp></span>
-<a name="l00015"></a>00015 
-<a name="l00016"></a>00016 <span class="preprocessor">#include <<a class="code" href="calculate__null_8hpp.html">ggl/algorithms/detail/calculate_null.hpp</a>></span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include <boost/mpl/if.hpp></span>
+<a name="l00014"></a>00014 <span class="preprocessor">#include <boost/range/functions.hpp></span>
+<a name="l00015"></a>00015 <span class="preprocessor">#include <boost/range/metafunctions.hpp></span>
+<a name="l00016"></a>00016 
 <a name="l00017"></a>00017 
 <a name="l00018"></a>00018 <span class="preprocessor">#include <<a class="code" href="point__order_8hpp.html">ggl/core/point_order.hpp</a>></span>
 <a name="l00019"></a>00019 <span class="preprocessor">#include <<a class="code" href="exterior__ring_8hpp.html">ggl/core/exterior_ring.hpp</a>></span>
@@ -64,231 +64,203 @@
 <a name="l00022"></a>00022 <span class="preprocessor">#include <<a class="code" href="point__concept_8hpp.html">ggl/core/concepts/point_concept.hpp</a>></span>
 <a name="l00023"></a>00023 <span class="preprocessor">#include <<a class="code" href="nsphere__concept_8hpp.html">ggl/core/concepts/nsphere_concept.hpp</a>></span>
 <a name="l00024"></a>00024 
-<a name="l00025"></a>00025 <span class="preprocessor">#include <<a class="code" href="strategies_8hpp.html">ggl/strategies/strategies.hpp</a>></span>
-<a name="l00026"></a>00026 
-<a name="l00027"></a>00027 <span class="preprocessor">#include <<a class="code" href="loop_8hpp.html">ggl/util/loop.hpp</a>></span>
-<a name="l00028"></a>00028 <span class="preprocessor">#include <<a class="code" href="math_8hpp.html">ggl/util/math.hpp</a>></span>
-<a name="l00029"></a>00029 
-<a name="l00052"></a>00052 <span class="keyword">namespace </span>ggl
-<a name="l00053"></a>00053 {
-<a name="l00054"></a>00054 
-<a name="l00055"></a>00055 <span class="preprocessor">#ifndef DOXYGEN_NO_DETAIL</span>
-<a name="l00056"></a>00056 <span class="preprocessor"></span><span class="keyword">namespace </span>detail { <span class="keyword">namespace </span><a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">area</a> {
-<a name="l00057"></a>00057 
-<a name="l00058"></a>00058 <span class="keyword">template</span><<span class="keyword">typename</span> B, <span class="keyword">typename</span> S>
-<a name="l00059"></a>00059 <span class="keyword">struct </span>box_area
-<a name="l00060"></a>00060 {
-<a name="l00061"></a>00061     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html#b723a443a97f7c4ed7c47ac96d7e29ee">coordinate_type<B>::type</a> return_type;
-<a name="l00062"></a>00062 
-<a name="l00063"></a>00063     <span class="keyword">static</span> <span class="keyword">inline</span> return_type apply(B <span class="keyword">const</span>& b, S <span class="keyword">const</span>&)
-<a name="l00064"></a>00064     {
-<a name="l00065"></a>00065         <span class="comment">// Currently only works for Cartesian boxes</span>
-<a name="l00066"></a>00066         <span class="comment">// Todo: use strategy</span>
-<a name="l00067"></a>00067         <span class="comment">// Todo: use concept</span>
-<a name="l00068"></a>00068         assert_dimension<B, 2>();
-<a name="l00069"></a>00069 
-<a name="l00070"></a>00070         return_type <span class="keyword">const</span> dx = get<max_corner, 0>(b) - get<min_corner, 0>(b);
-<a name="l00071"></a>00071         return_type <span class="keyword">const</span> dy = get<max_corner, 1>(b) - get<min_corner, 1>(b);
-<a name="l00072"></a>00072 
-<a name="l00073"></a>00073         <span class="keywordflow">return</span> dx * dy;
-<a name="l00074"></a>00074     }
-<a name="l00075"></a>00075 };
+<a name="l00025"></a>00025 <span class="preprocessor">#include <<a class="code" href="calculate__null_8hpp.html">ggl/algorithms/detail/calculate_null.hpp</a>></span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include <<a class="code" href="calculate__sum_8hpp.html">ggl/algorithms/detail/calculate_sum.hpp</a>></span>
+<a name="l00027"></a>00027 
+<a name="l00028"></a>00028 <span class="preprocessor">#include <<a class="code" href="strategies_8hpp.html">ggl/strategies/strategies.hpp</a>></span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include <<a class="code" href="area__result_8hpp.html">ggl/strategies/area_result.hpp</a>></span>
+<a name="l00030"></a>00030 
+<a name="l00031"></a>00031 <span class="preprocessor">#include <<a class="code" href="loop_8hpp.html">ggl/util/loop.hpp</a>></span>
+<a name="l00032"></a>00032 <span class="preprocessor">#include <<a class="code" href="math_8hpp.html">ggl/util/math.hpp</a>></span>
+<a name="l00033"></a>00033 
+<a name="l00056"></a>00056 <span class="keyword">namespace </span>ggl
+<a name="l00057"></a>00057 {
+<a name="l00058"></a>00058 
+<a name="l00059"></a>00059 <span class="preprocessor">#ifndef DOXYGEN_NO_DETAIL</span>
+<a name="l00060"></a>00060 <span class="preprocessor"></span><span class="keyword">namespace </span>detail { <span class="keyword">namespace </span><a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">area</a> {
+<a name="l00061"></a>00061 
+<a name="l00062"></a>00062 <span class="keyword">template</span><<span class="keyword">typename</span> B, <span class="keyword">typename</span> S>
+<a name="l00063"></a>00063 <span class="keyword">struct </span>box_area
+<a name="l00064"></a>00064 {
+<a name="l00065"></a>00065     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html#b723a443a97f7c4ed7c47ac96d7e29ee">coordinate_type<B>::type</a> return_type;
+<a name="l00066"></a>00066 
+<a name="l00067"></a>00067     <span class="keyword">static</span> <span class="keyword">inline</span> return_type apply(B <span class="keyword">const</span>& b, S <span class="keyword">const</span>&)
+<a name="l00068"></a>00068     {
+<a name="l00069"></a>00069         <span class="comment">// Currently only works for Cartesian boxes</span>
+<a name="l00070"></a>00070         <span class="comment">// Todo: use strategy</span>
+<a name="l00071"></a>00071         <span class="comment">// Todo: use concept</span>
+<a name="l00072"></a>00072         assert_dimension<B, 2>();
+<a name="l00073"></a>00073 
+<a name="l00074"></a>00074         return_type <span class="keyword">const</span> dx = get<max_corner, 0>(b) - get<min_corner, 0>(b);
+<a name="l00075"></a>00075         return_type <span class="keyword">const</span> dy = get<max_corner, 1>(b) - get<min_corner, 1>(b);
 <a name="l00076"></a>00076 
-<a name="l00077"></a>00077 
-<a name="l00078"></a>00078 <span class="keyword">template</span><<span class="keyword">typename</span> C, <span class="keyword">typename</span> S>
-<a name="l00079"></a>00079 <span class="keyword">struct </span>circle_area
-<a name="l00080"></a>00080 {
-<a name="l00081"></a>00081     <span class="keyword">typedef</span> <span class="keyword">typename</span> coordinate_type<C>::type coordinate_type;
-<a name="l00082"></a>00082 
-<a name="l00083"></a>00083     <span class="comment">// Returning the coordinate precision, but if integer, returning a double</span>
-<a name="l00084"></a>00084     <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::mpl::if_c
-<a name="l00085"></a>00085             <
-<a name="l00086"></a>00086                 boost::is_integral<coordinate_type>::type::value,
-<a name="l00087"></a>00087                 double,
-<a name="l00088"></a>00088                 coordinate_type
-<a name="l00089"></a>00089             >::type return_type;
-<a name="l00090"></a>00090 
-<a name="l00091"></a>00091     <span class="keyword">static</span> <span class="keyword">inline</span> return_type apply(C <span class="keyword">const</span>& c, S <span class="keyword">const</span>&)
-<a name="l00092"></a>00092     {
-<a name="l00093"></a>00093         <span class="comment">// Currently only works for Cartesian circles</span>
-<a name="l00094"></a>00094         <span class="comment">// Todo: use strategy</span>
-<a name="l00095"></a>00095         <span class="comment">// Todo: use concept</span>
-<a name="l00096"></a>00096         assert_dimension<C, 2>();
-<a name="l00097"></a>00097 
-<a name="l00098"></a>00098         return_type r = get_radius<0>(c);
-<a name="l00099"></a>00099         r *= r * <a class="code" href="namespaceggl_1_1math.html#54fc384779fa97a61e07149d880a599c">ggl::math::pi</a>;
-<a name="l00100"></a>00100         <span class="keywordflow">return</span> r;
-<a name="l00101"></a>00101     }
-<a name="l00102"></a>00102 };
-<a name="l00103"></a>00103 
-<a name="l00104"></a>00104 
-<a name="l00105"></a>00105 <span class="comment">// Area of a linear linear_ring</span>
-<a name="l00106"></a>00106 <span class="keyword">template</span>
-<a name="l00107"></a>00107 <
-<a name="l00108"></a>00108     <span class="keyword">typename</span> R,
-<a name="l00109"></a>00109     <a class="code" href="namespaceggl.html#9a0f9a02ea40ca3ceab32afc4b08bf4d">order_selector</a> Order,
-<a name="l00110"></a>00110     <span class="comment">// closing_selector Closed -- for now assuming CLOSED, p(0) == p(n-1)</span>
-<a name="l00111"></a>00111     <span class="keyword">typename</span> S
-<a name="l00112"></a>00112 >
-<a name="l00113"></a>00113 <span class="keyword">struct </span>ring_area
-<a name="l00114"></a>00114 {};
-<a name="l00115"></a>00115 
-<a name="l00116"></a>00116 
-<a name="l00117"></a>00117 <span class="keyword">template</span><<span class="keyword">typename</span> R, <span class="keyword">typename</span> S>
-<a name="l00118"></a>00118 <span class="keyword">struct </span>ring_area<R, <a class="code" href="namespaceggl.html#9a0f9a02ea40ca3ceab32afc4b08bf4d55fe53c1821ca13eb0eacb9084cb1d1c">clockwise</a>, S>
-<a name="l00119"></a>00119 {
-<a name="l00120"></a>00120     <span class="keyword">typedef</span> <span class="keyword">typename</span> S::return_type type;
-<a name="l00121"></a>00121     <span class="keyword">static</span> <span class="keyword">inline</span> type apply(R <span class="keyword">const</span>& ring, S <span class="keyword">const</span>& strategy)
-<a name="l00122"></a>00122     {
-<a name="l00123"></a>00123         assert_dimension<R, 2>();
-<a name="l00124"></a>00124 
-<a name="l00125"></a>00125         <span class="comment">// A closed linear_ring has at least four points,</span>
-<a name="l00126"></a>00126         <span class="comment">// if not, there is no (zero) area</span>
-<a name="l00127"></a>00127         <span class="keywordflow">if</span> (boost::size(ring) >= 4)
-<a name="l00128"></a>00128         {
-<a name="l00129"></a>00129             <span class="keyword">typename</span> S::state_type state_type;
-<a name="l00130"></a>00130             <span class="keywordflow">if</span> (<a class="code" href="group__loop.html#g1ff95a74f261e15dfa714146bdcbf23f" title="Loops through segments of a container and call specified functor for all segments...">loop</a>(ring, strategy, state_type))
-<a name="l00131"></a>00131             {
-<a name="l00132"></a>00132                 <span class="keywordflow">return</span> state_type.area();
-<a name="l00133"></a>00133             }
-<a name="l00134"></a>00134         }
-<a name="l00135"></a>00135 
-<a name="l00136"></a>00136         <span class="keywordflow">return</span> type();
-<a name="l00137"></a>00137     }
-<a name="l00138"></a>00138 };
+<a name="l00077"></a>00077         <span class="keywordflow">return</span> dx * dy;
+<a name="l00078"></a>00078     }
+<a name="l00079"></a>00079 };
+<a name="l00080"></a>00080 
+<a name="l00081"></a>00081 
+<a name="l00082"></a>00082 <span class="keyword">template</span><<span class="keyword">typename</span> C, <span class="keyword">typename</span> S>
+<a name="l00083"></a>00083 <span class="keyword">struct </span>circle_area
+<a name="l00084"></a>00084 {
+<a name="l00085"></a>00085     <span class="keyword">typedef</span> <span class="keyword">typename</span> coordinate_type<C>::type coordinate_type;
+<a name="l00086"></a>00086 
+<a name="l00087"></a>00087     <span class="comment">// Returning the coordinate precision, but if integer, returning a double</span>
+<a name="l00088"></a>00088     <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::mpl::if_c
+<a name="l00089"></a>00089             <
+<a name="l00090"></a>00090                 boost::is_integral<coordinate_type>::type::value,
+<a name="l00091"></a>00091                 double,
+<a name="l00092"></a>00092                 coordinate_type
+<a name="l00093"></a>00093             >::type return_type;
+<a name="l00094"></a>00094 
+<a name="l00095"></a>00095     <span class="keyword">static</span> <span class="keyword">inline</span> return_type apply(C <span class="keyword">const</span>& c, S <span class="keyword">const</span>&)
+<a name="l00096"></a>00096     {
+<a name="l00097"></a>00097         <span class="comment">// Currently only works for Cartesian circles</span>
+<a name="l00098"></a>00098         <span class="comment">// Todo: use strategy</span>
+<a name="l00099"></a>00099         <span class="comment">// Todo: use concept</span>
+<a name="l00100"></a>00100         assert_dimension<C, 2>();
+<a name="l00101"></a>00101 
+<a name="l00102"></a>00102         return_type r = get_radius<0>(c);
+<a name="l00103"></a>00103         r *= r * <a class="code" href="namespaceggl_1_1math.html#54fc384779fa97a61e07149d880a599c">ggl::math::pi</a>;
+<a name="l00104"></a>00104         <span class="keywordflow">return</span> r;
+<a name="l00105"></a>00105     }
+<a name="l00106"></a>00106 };
+<a name="l00107"></a>00107 
+<a name="l00108"></a>00108 
+<a name="l00109"></a>00109 <span class="comment">// Area of a linear linear_ring</span>
+<a name="l00110"></a>00110 <span class="keyword">template</span>
+<a name="l00111"></a>00111 <
+<a name="l00112"></a>00112     <span class="keyword">typename</span> R,
+<a name="l00113"></a>00113     <a class="code" href="namespaceggl.html#9a0f9a02ea40ca3ceab32afc4b08bf4d">order_selector</a> Order,
+<a name="l00114"></a>00114     <span class="comment">// closing_selector Closed -- for now assuming CLOSED, p(0) == p(n-1)</span>
+<a name="l00115"></a>00115     <span class="keyword">typename</span> S
+<a name="l00116"></a>00116 >
+<a name="l00117"></a>00117 <span class="keyword">struct </span>ring_area
+<a name="l00118"></a>00118 {};
+<a name="l00119"></a>00119 
+<a name="l00120"></a>00120 
+<a name="l00121"></a>00121 <span class="keyword">template</span><<span class="keyword">typename</span> R, <span class="keyword">typename</span> S>
+<a name="l00122"></a>00122 <span class="keyword">struct </span>ring_area<R, <a class="code" href="namespaceggl.html#9a0f9a02ea40ca3ceab32afc4b08bf4d55fe53c1821ca13eb0eacb9084cb1d1c">clockwise</a>, S>
+<a name="l00123"></a>00123 {
+<a name="l00124"></a>00124     <span class="keyword">typedef</span> <span class="keyword">typename</span> S::return_type type;
+<a name="l00125"></a>00125     <span class="keyword">static</span> <span class="keyword">inline</span> type apply(R <span class="keyword">const</span>& ring, S <span class="keyword">const</span>& strategy)
+<a name="l00126"></a>00126     {
+<a name="l00127"></a>00127         assert_dimension<R, 2>();
+<a name="l00128"></a>00128 
+<a name="l00129"></a>00129         <span class="comment">// A closed linear_ring has at least four points,</span>
+<a name="l00130"></a>00130         <span class="comment">// if not, there is no (zero) area</span>
+<a name="l00131"></a>00131         <span class="keywordflow">if</span> (boost::size(ring) >= 4)
+<a name="l00132"></a>00132         {
+<a name="l00133"></a>00133             <span class="keyword">typename</span> S::state_type state_type;
+<a name="l00134"></a>00134             <span class="keywordflow">if</span> (<a class="code" href="group__loop.html#g1ff95a74f261e15dfa714146bdcbf23f" title="Loops through segments of a container and call specified functor for all segments...">loop</a>(ring, strategy, state_type))
+<a name="l00135"></a>00135             {
+<a name="l00136"></a>00136                 <span class="keywordflow">return</span> state_type.area();
+<a name="l00137"></a>00137             }
+<a name="l00138"></a>00138         }
 <a name="l00139"></a>00139 
-<a name="l00140"></a>00140 <span class="keyword">template</span><<span class="keyword">typename</span> R, <span class="keyword">typename</span> S>
-<a name="l00141"></a>00141 <span class="keyword">struct </span>ring_area<R, <a class="code" href="namespaceggl.html#9a0f9a02ea40ca3ceab32afc4b08bf4d7242f3377ee5283786ecb2bc2d90015a">counterclockwise</a>, S>
-<a name="l00142"></a>00142 {
-<a name="l00143"></a>00143     <span class="keyword">typedef</span> <span class="keyword">typename</span> S::return_type type;
-<a name="l00144"></a>00144     <span class="keyword">static</span> <span class="keyword">inline</span> type apply(R <span class="keyword">const</span>& ring, S <span class="keyword">const</span>& strategy)
-<a name="l00145"></a>00145     {
-<a name="l00146"></a>00146         <span class="comment">// Counter clockwise rings negate the area result</span>
-<a name="l00147"></a>00147         <span class="keywordflow">return</span> -ring_area<R, clockwise, S>::apply(ring, strategy);
-<a name="l00148"></a>00148     }
-<a name="l00149"></a>00149 };
-<a name="l00150"></a>00150 
-<a name="l00151"></a>00151 
-<a name="l00152"></a>00152 <span class="comment">// Area of a polygon, either clockwise or anticlockwise</span>
-<a name="l00153"></a>00153 <span class="keyword">template</span><<span class="keyword">typename</span> Polygon, order_selector Order, <span class="keyword">typename</span> Strategy>
-<a name="l00154"></a>00154 <span class="keyword">class </span>polygon_area
-<a name="l00155"></a>00155 {
-<a name="l00156"></a>00156     <span class="keyword">typedef</span> <span class="keyword">typename</span> Strategy::return_type type;
+<a name="l00140"></a>00140         <span class="keywordflow">return</span> type();
+<a name="l00141"></a>00141     }
+<a name="l00142"></a>00142 };
+<a name="l00143"></a>00143 
+<a name="l00144"></a>00144 <span class="keyword">template</span><<span class="keyword">typename</span> R, <span class="keyword">typename</span> S>
+<a name="l00145"></a>00145 <span class="keyword">struct </span>ring_area<R, <a class="code" href="namespaceggl.html#9a0f9a02ea40ca3ceab32afc4b08bf4d7242f3377ee5283786ecb2bc2d90015a">counterclockwise</a>, S>
+<a name="l00146"></a>00146 {
+<a name="l00147"></a>00147     <span class="keyword">typedef</span> <span class="keyword">typename</span> S::return_type type;
+<a name="l00148"></a>00148     <span class="keyword">static</span> <span class="keyword">inline</span> type apply(R <span class="keyword">const</span>& ring, S <span class="keyword">const</span>& strategy)
+<a name="l00149"></a>00149     {
+<a name="l00150"></a>00150         <span class="comment">// Counter clockwise rings negate the area result</span>
+<a name="l00151"></a>00151         <span class="keywordflow">return</span> -ring_area<R, clockwise, S>::apply(ring, strategy);
+<a name="l00152"></a>00152     }
+<a name="l00153"></a>00153 };
+<a name="l00154"></a>00154 
+<a name="l00155"></a>00155 
+<a name="l00156"></a>00156 }} <span class="comment">// namespace detail::area</span>
 <a name="l00157"></a>00157 
-<a name="l00158"></a>00158 <span class="keyword">public</span>:
-<a name="l00159"></a>00159     <span class="keyword">static</span> <span class="keyword">inline</span> type apply(Polygon <span class="keyword">const</span>& poly,
-<a name="l00160"></a>00160                     Strategy <span class="keyword">const</span>& strategy)
-<a name="l00161"></a>00161     {
-<a name="l00162"></a>00162         assert_dimension<Polygon, 2>();
-<a name="l00163"></a>00163 
-<a name="l00164"></a>00164         <span class="keyword">typedef</span> ring_area
-<a name="l00165"></a>00165                 <
-<a name="l00166"></a>00166                     <span class="keyword">typename</span> ring_type<Polygon>::type,
-<a name="l00167"></a>00167                     Order,
-<a name="l00168"></a>00168                     Strategy
-<a name="l00169"></a>00169                 > ring_area_type;
-<a name="l00170"></a>00170 
-<a name="l00171"></a>00171         <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::range_const_iterator
-<a name="l00172"></a>00172             <
-<a name="l00173"></a>00173                 <span class="keyword">typename</span> interior_type<Polygon>::type
-<a name="l00174"></a>00174             >::type iterator_type;
-<a name="l00175"></a>00175 
-<a name="l00176"></a>00176         type a = ring_area_type::apply(<a class="code" href="group__access.html#gf92470d0612da7f0e118d296e7fcfe01" title="Function to get the exterior_ring ring of a polygon.">exterior_ring</a>(poly), strategy);
+<a name="l00158"></a>00158 <span class="preprocessor">#endif // DOXYGEN_NO_DETAIL</span>
+<a name="l00159"></a>00159 <span class="preprocessor"></span>
+<a name="l00160"></a>00160 <span class="preprocessor">#ifndef DOXYGEN_NO_DISPATCH</span>
+<a name="l00161"></a>00161 <span class="preprocessor"></span><span class="keyword">namespace </span>dispatch {
+<a name="l00162"></a>00162 
+<a name="l00163"></a>00163 <span class="keyword">template</span> <<span class="keyword">typename</span> Tag, <span class="keyword">typename</span> Geometry, order_selector Order, <span class="keyword">typename</span> Strategy>
+<a name="l00164"></a>00164 <span class="keyword">struct </span><a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">area</a>
+<a name="l00165"></a>00165     : detail::calculate_null
+<a name="l00166"></a>00166         <
+<a name="l00167"></a>00167             typename Strategy::return_type,
+<a name="l00168"></a>00168             Geometry,
+<a name="l00169"></a>00169             Strategy
+<a name="l00170"></a>00170         > {};
+<a name="l00171"></a>00171 
+<a name="l00172"></a>00172 
+<a name="l00173"></a>00173 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry, order_selector Order, <span class="keyword">typename</span> Strategy>
+<a name="l00174"></a>00174 <span class="keyword">struct </span><a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">area</a><box_tag, Geometry, Order, Strategy>
+<a name="l00175"></a>00175     : detail::<a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">area</a>::box_area<Geometry, Strategy> 
+<a name="l00176"></a>00176 {};
 <a name="l00177"></a>00177 
-<a name="l00178"></a>00178         <span class="keywordflow">for</span> (iterator_type it = boost::begin(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly));
-<a name="l00179"></a>00179              it != boost::end(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly)); ++it)
-<a name="l00180"></a>00180         {
-<a name="l00181"></a>00181             <span class="comment">// Add ring-area (area of hole should be negative</span>
-<a name="l00182"></a>00182             <span class="comment">// (because other order))</span>
-<a name="l00183"></a>00183             a += ring_area_type::apply(*it, strategy);
-<a name="l00184"></a>00184         }
-<a name="l00185"></a>00185         <span class="keywordflow">return</span> a;
-<a name="l00186"></a>00186     }
-<a name="l00187"></a>00187 };
-<a name="l00188"></a>00188 
-<a name="l00189"></a>00189 }} <span class="comment">// namespace detail::area</span>
-<a name="l00190"></a>00190 
-<a name="l00191"></a>00191 <span class="preprocessor">#endif // DOXYGEN_NO_DETAIL</span>
-<a name="l00192"></a>00192 <span class="preprocessor"></span>
-<a name="l00193"></a>00193 <span class="preprocessor">#ifndef DOXYGEN_NO_DISPATCH</span>
-<a name="l00194"></a>00194 <span class="preprocessor"></span><span class="keyword">namespace </span>dispatch {
-<a name="l00195"></a>00195 
-<a name="l00196"></a>00196 <span class="keyword">template</span> <<span class="keyword">typename</span> Tag, <span class="keyword">typename</span> Geometry, order_selector Order, <span class="keyword">typename</span> Strategy>
-<a name="l00197"></a>00197 <span class="keyword">struct </span><a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">area</a>
-<a name="l00198"></a>00198     : detail::calculate_null
-<a name="l00199"></a>00199         <
-<a name="l00200"></a>00200             typename Strategy::return_type,
-<a name="l00201"></a>00201             Geometry,
-<a name="l00202"></a>00202             Strategy
-<a name="l00203"></a>00203         > {};
-<a name="l00204"></a>00204 
-<a name="l00205"></a>00205 
-<a name="l00206"></a>00206 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry, order_selector Order, <span class="keyword">typename</span> Strategy>
-<a name="l00207"></a>00207 <span class="keyword">struct </span><a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">area</a><box_tag, Geometry, Order, Strategy>
-<a name="l00208"></a>00208     : detail::<a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">area</a>::box_area<Geometry, Strategy> {};
-<a name="l00209"></a>00209 
-<a name="l00210"></a>00210 
-<a name="l00211"></a>00211 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry, order_selector Order, <span class="keyword">typename</span> Strategy>
-<a name="l00212"></a>00212 <span class="keyword">struct </span><a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">area</a><nsphere_tag, Geometry, Order, Strategy>
-<a name="l00213"></a>00213     : detail::<a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">area</a>::circle_area<Geometry, Strategy> {};
-<a name="l00214"></a>00214 
-<a name="l00215"></a>00215 
-<a name="l00216"></a>00216 <span class="comment">// Area of ring currently returns area of closed rings but it might be argued</span>
-<a name="l00217"></a>00217 <span class="comment">// that it is 0.0, because a ring is just a line.</span>
-<a name="l00218"></a>00218 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry, order_selector Order, <span class="keyword">typename</span> Strategy>
-<a name="l00219"></a>00219 <span class="keyword">struct </span><a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">area</a><ring_tag, Geometry, Order, Strategy>
-<a name="l00220"></a>00220     : detail::<a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">area</a>::ring_area<Geometry, Order, Strategy> {};
-<a name="l00221"></a>00221 
-<a name="l00222"></a>00222 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry, order_selector Order, <span class="keyword">typename</span> Strategy>
-<a name="l00223"></a>00223 <span class="keyword">struct </span><a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">area</a><polygon_tag, Geometry, Order, Strategy>
-<a name="l00224"></a>00224     : detail::<a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">area</a>::polygon_area<Geometry, Order, Strategy> {};
-<a name="l00225"></a>00225 
-<a name="l00226"></a>00226 } <span class="comment">// namespace dispatch</span>
-<a name="l00227"></a>00227 <span class="preprocessor">#endif // DOXYGEN_NO_DISPATCH</span>
-<a name="l00228"></a>00228 <span class="preprocessor"></span>
+<a name="l00178"></a>00178 
+<a name="l00179"></a>00179 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry, order_selector Order, <span class="keyword">typename</span> Strategy>
+<a name="l00180"></a>00180 <span class="keyword">struct </span><a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">area</a><nsphere_tag, Geometry, Order, Strategy>
+<a name="l00181"></a>00181     : detail::<a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">area</a>::circle_area<Geometry, Strategy> 
+<a name="l00182"></a>00182 {};
+<a name="l00183"></a>00183 
+<a name="l00184"></a>00184 
+<a name="l00185"></a>00185 <span class="comment">// Area of ring currently returns area of closed rings but it might be argued</span>
+<a name="l00186"></a>00186 <span class="comment">// that it is 0.0, because a ring is just a line.</span>
+<a name="l00187"></a>00187 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry, order_selector Order, <span class="keyword">typename</span> Strategy>
+<a name="l00188"></a>00188 <span class="keyword">struct </span><a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">area</a><ring_tag, Geometry, Order, Strategy>
+<a name="l00189"></a>00189     : detail::<a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">area</a>::ring_area<Geometry, Order, Strategy> 
+<a name="l00190"></a>00190 {};
+<a name="l00191"></a>00191 
+<a name="l00192"></a>00192 <span class="keyword">template</span> <<span class="keyword">typename</span> Polygon, order_selector Order, <span class="keyword">typename</span> Strategy>
+<a name="l00193"></a>00193 <span class="keyword">struct </span><a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">area</a><polygon_tag, Polygon, Order, Strategy>
+<a name="l00194"></a>00194     : detail::calculate_polygon_sum
+<a name="l00195"></a>00195         <
+<a name="l00196"></a>00196             typename Strategy::return_type,
+<a name="l00197"></a>00197             Polygon, 
+<a name="l00198"></a>00198             Strategy, 
+<a name="l00199"></a>00199             detail::area::ring_area
+<a name="l00200"></a>00200                 <
+<a name="l00201"></a>00201                     typename ring_type<Polygon>::type, 
+<a name="l00202"></a>00202                     Order, 
+<a name="l00203"></a>00203                     Strategy
+<a name="l00204"></a>00204                 > 
+<a name="l00205"></a>00205         >
+<a name="l00206"></a>00206     <span class="comment">//: detail::area::polygon_area<Geometry, Order, Strategy> </span>
+<a name="l00207"></a>00207 {};
+<a name="l00208"></a>00208 
+<a name="l00209"></a>00209 } <span class="comment">// namespace dispatch</span>
+<a name="l00210"></a>00210 <span class="preprocessor">#endif // DOXYGEN_NO_DISPATCH</span>
+<a name="l00211"></a>00211 <span class="preprocessor"></span>
+<a name="l00212"></a>00212 
+<a name="l00213"></a>00213 
+<a name="l00225"></a>00225 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry>
+<a name="l00226"></a><a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d">00226</a> <span class="keyword">inline</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1area__result.html" title="Meta-function defining return type of area function.">area_result<Geometry>::type</a> <a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">area</a>(Geometry <span class="keyword">const</span>& geometry)
+<a name="l00227"></a>00227 {
+<a name="l00228"></a>00228     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1strategy_1_1not__implemented.html" title="Indicate compiler/library user that strategy is not implemented.">area_result<Geometry>::strategy_type</a> strategy_type;
 <a name="l00229"></a>00229 
-<a name="l00230"></a>00230 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry>
-<a name="l00231"></a><a class="code" href="structggl_1_1area__result.html">00231</a> <span class="keyword">struct </span><a class="code" href="structggl_1_1area__result.html">area_result</a>
-<a name="l00232"></a>00232 {
-<a name="l00233"></a><a class="code" href="structggl_1_1area__result.html#d6428313802f153cd99b803ecde23872">00233</a>     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type<Geometry>::type</a> <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type</a>;
-<a name="l00234"></a>00234     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1strategy__area.html" title="Traits class binding an area strategy to a coordinate system.">strategy_area</a>
-<a name="l00235"></a>00235         <
-<a name="l00236"></a>00236             <span class="keyword">typename</span> <a class="code" href="structggl_1_1cs__tag.html" title="Meta-function returning coordinate system tag (cs family) of any geometry.">cs_tag<point_type>::type</a>,
-<a name="l00237"></a>00237             <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type</a>
-<a name="l00238"></a><a class="code" href="structggl_1_1area__result.html#ccb03cf635c157788a99c33d8f3c3a1e">00238</a>         >::type <a class="code" href="structggl_1_1strategy_1_1not__implemented.html" title="Indicate compiler/library user that strategy is not implemented.">strategy_type</a>;
-<a name="l00239"></a><a class="code" href="structggl_1_1area__result.html#4915057a85bc6a0c7292b3db1e4f33be">00239</a>     <span class="keyword">typedef</span> <span class="keyword">typename</span> strategy_type::return_type <a class="code" href="structggl_1_1area__result.html#4915057a85bc6a0c7292b3db1e4f33be">return_type</a>;
-<a name="l00240"></a>00240 };
-<a name="l00241"></a>00241 
-<a name="l00253"></a>00253 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry>
-<a name="l00254"></a><a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3">00254</a> <span class="keyword">inline</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1area__result.html">area_result<Geometry>::return_type</a> <a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">area</a>(Geometry <span class="keyword">const</span>& geometry)
-<a name="l00255"></a>00255 {
-<a name="l00256"></a>00256     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1strategy_1_1not__implemented.html" title="Indicate compiler/library user that strategy is not implemented.">area_result<Geometry>::strategy_type</a> strategy_type;
-<a name="l00257"></a>00257 
-<a name="l00258"></a>00258     <span class="keywordflow">return</span> <a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">dispatch::area</a>
-<a name="l00259"></a>00259         <
-<a name="l00260"></a>00260             <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<Geometry>::type</a>,
-<a name="l00261"></a>00261             Geometry,
-<a name="l00262"></a>00262             <a class="code" href="structggl_1_1point__order.html" title="Meta-function which defines point type of any geometry.">ggl::point_order<Geometry>::value</a>,
-<a name="l00263"></a>00263             strategy_type
-<a name="l00264"></a>00264         >::apply(geometry, strategy_type());
-<a name="l00265"></a>00265 }
-<a name="l00266"></a>00266 
-<a name="l00276"></a>00276 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry, <span class="keyword">typename</span> Strategy>
-<a name="l00277"></a><a class="code" href="group__area.html#g7e0783c73b5f561707c50b445a01b833">00277</a> <span class="keyword">inline</span> <span class="keyword">typename</span> Strategy::return_type <a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">area</a>(
-<a name="l00278"></a>00278         Geometry <span class="keyword">const</span>& geometry, Strategy <span class="keyword">const</span>& strategy)
-<a name="l00279"></a>00279 {
-<a name="l00280"></a>00280     <span class="keywordflow">return</span> <a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">dispatch::area</a>
-<a name="l00281"></a>00281         <
-<a name="l00282"></a>00282             <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<Geometry>::type</a>,
-<a name="l00283"></a>00283             Geometry,
-<a name="l00284"></a>00284             <a class="code" href="structggl_1_1point__order.html" title="Meta-function which defines point type of any geometry.">ggl::point_order<Geometry>::value</a>,
-<a name="l00285"></a>00285             Strategy
-<a name="l00286"></a>00286         >::apply(geometry, strategy);
-<a name="l00287"></a>00287 }
-<a name="l00288"></a>00288 
-<a name="l00289"></a>00289 } <span class="comment">// namespace ggl</span>
-<a name="l00290"></a>00290 
-<a name="l00291"></a>00291 <span class="preprocessor">#endif // GGL_ALGORITHMS_AREA_HPP</span>
+<a name="l00230"></a>00230     <span class="keywordflow">return</span> <a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">dispatch::area</a>
+<a name="l00231"></a>00231         <
+<a name="l00232"></a>00232             <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<Geometry>::type</a>,
+<a name="l00233"></a>00233             Geometry,
+<a name="l00234"></a>00234             <a class="code" href="structggl_1_1point__order.html" title="Meta-function which defines point type of any geometry.">ggl::point_order<Geometry>::value</a>,
+<a name="l00235"></a>00235             strategy_type
+<a name="l00236"></a>00236         >::apply(geometry, strategy_type());
+<a name="l00237"></a>00237 }
+<a name="l00238"></a>00238 
+<a name="l00248"></a>00248 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry, <span class="keyword">typename</span> Strategy>
+<a name="l00249"></a><a class="code" href="group__area.html#g7e0783c73b5f561707c50b445a01b833">00249</a> <span class="keyword">inline</span> <span class="keyword">typename</span> Strategy::return_type <a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">area</a>(
+<a name="l00250"></a>00250         Geometry <span class="keyword">const</span>& geometry, Strategy <span class="keyword">const</span>& strategy)
+<a name="l00251"></a>00251 {
+<a name="l00252"></a>00252     <span class="keywordflow">return</span> <a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">dispatch::area</a>
+<a name="l00253"></a>00253         <
+<a name="l00254"></a>00254             <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<Geometry>::type</a>,
+<a name="l00255"></a>00255             Geometry,
+<a name="l00256"></a>00256             <a class="code" href="structggl_1_1point__order.html" title="Meta-function which defines point type of any geometry.">ggl::point_order<Geometry>::value</a>,
+<a name="l00257"></a>00257             Strategy
+<a name="l00258"></a>00258         >::apply(geometry, strategy);
+<a name="l00259"></a>00259 }
+<a name="l00260"></a>00260 
+<a name="l00261"></a>00261 } <span class="comment">// namespace ggl</span>
+<a name="l00262"></a>00262 
+<a name="l00263"></a>00263 <span class="preprocessor">#endif // GGL_ALGORITHMS_AREA_HPP</span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Added: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2for__each_8hpp.html
==============================================================================
--- (empty file)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2for__each_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -0,0 +1,92 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Generic Geometry Library</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head>
+<body style="background-image: url(images/draft.png);">
+
+<table cellpadding="2" width="100%">
+<tbody>
+<tr>
+<td valign="top">
+<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
+  
+</td>
+<td valign="top" align="right">
+<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
+</td>
+</tr>
+</tbody>
+</table>
+<!-- Generated by Doxygen 1.5.9 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li>Main Page</li>
+      <li>Related Pages</li>
+      <li>Modules</li>
+      <li>Namespaces</li>
+      <li>Classes</li>
+      <li class="current">Files</li>
+      <li>Examples</li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li>File List</li>
+      <li>File Members</li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+<h1>ggl/algorithms/for_each.hpp File Reference</h1>
+<p>
+Go to the source code of this file.<table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Namespaces</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl.html">ggl</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
+<tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry , typename Functor > </td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Functor </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#g66bf40f0ee4dc883d9d3b621aeb2e81d">ggl::for_each_point</a> (Geometry &geometry, Functor f)</td></tr>
+
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for geometry.  <br></td></tr>
+<tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry , typename Functor > </td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Functor </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#g0cdb7f23bf7395ba3f385e9cf01a601f">ggl::for_each_point</a> (Geometry const &geometry, Functor f)</td></tr>
+
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for geometry.  <br></td></tr>
+<tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry , typename Functor > </td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Functor </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#g529f5655aa7702e9f143263b484ff91b">ggl::for_each_segment</a> (Geometry &geometry, Functor f)</td></tr>
+
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for segments on linestrings, rings, polygons, ...  <br></td></tr>
+<tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry , typename Functor > </td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Functor </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#ge8453eab0e9db146184d7ccef687a33e">ggl::for_each_segment</a> (Geometry const &geometry, Functor f)</td></tr>
+
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for segments on linestrings, rings, polygons, ...  <br></td></tr>
+</table>
+</div>
+<hr size="1">
+<table width="100%">
+<tbody>
+<tr>
+<td align="left"><small>
+<p>October 13, 2009</p>
+</small></td>
+<td align="right">
+<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
+Copyright © 2008-2009 Bruno Lalande, Paris<br>
+Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
+</small>
+</td>
+</tr>
+</tbody>
+</table>
+
+<address style="text-align: right;"><small>
+Documentation is generated by Doxygen
+</small></address>
+</body>
+</html>
Added: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2for__each_8hpp_source.html
==============================================================================
--- (empty file)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2for__each_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -0,0 +1,383 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Generic Geometry Library</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head>
+<body style="background-image: url(images/draft.png);">
+
+<table cellpadding="2" width="100%">
+<tbody>
+<tr>
+<td valign="top">
+<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
+  
+</td>
+<td valign="top" align="right">
+<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
+</td>
+</tr>
+</tbody>
+</table>
+<!-- Generated by Doxygen 1.5.9 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li>Main Page</li>
+      <li>Related Pages</li>
+      <li>Modules</li>
+      <li>Namespaces</li>
+      <li>Classes</li>
+      <li class="current">Files</li>
+      <li>Examples</li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li>File List</li>
+      <li>File Members</li>
+    </ul>
+  </div>
+<h1>ggl/algorithms/for_each.hpp</h1>Go to the documentation of this file.<div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">// Generic Geometry Library</span>
+<a name="l00002"></a>00002 <span class="comment">//</span>
+<a name="l00003"></a>00003 <span class="comment">// Copyright Barend Gehrels 1995-2009, Geodan Holding B.V. Amsterdam, the Netherlands.</span>
+<a name="l00004"></a>00004 <span class="comment">// Copyright Bruno Lalande 2008, 2009</span>
+<a name="l00005"></a>00005 <span class="comment">// Use, modification and distribution is subject to the Boost Software License,</span>
+<a name="l00006"></a>00006 <span class="comment">// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at</span>
+<a name="l00007"></a>00007 <span class="comment">// http://www.boost.org/LICENSE_1_0.txt)</span>
+<a name="l00008"></a>00008 
+<a name="l00009"></a>00009 <span class="preprocessor">#ifndef GGL_ALGORITHMS_FOR_EACH_HPP</span>
+<a name="l00010"></a>00010 <span class="preprocessor"></span><span class="preprocessor">#define GGL_ALGORITHMS_FOR_EACH_HPP</span>
+<a name="l00011"></a>00011 <span class="preprocessor"></span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include <algorithm></span>
+<a name="l00022"></a>00022 
+<a name="l00023"></a>00023 <span class="preprocessor">#include <boost/concept/requires.hpp></span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include <boost/mpl/if.hpp></span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include <boost/range/functions.hpp></span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include <boost/range/metafunctions.hpp></span>
+<a name="l00027"></a>00027 
+<a name="l00028"></a>00028 <span class="preprocessor">#include <<a class="code" href="exterior__ring_8hpp.html">ggl/core/exterior_ring.hpp</a>></span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include <<a class="code" href="interior__rings_8hpp.html">ggl/core/interior_rings.hpp</a>></span>
+<a name="l00030"></a>00030 <span class="preprocessor">#include <<a class="code" href="core_2is__multi_8hpp.html">ggl/core/is_multi.hpp</a>></span>
+<a name="l00031"></a>00031 <span class="preprocessor">#include <<a class="code" href="point__concept_8hpp.html">ggl/core/concepts/point_concept.hpp</a>></span>
+<a name="l00032"></a>00032 <span class="preprocessor">#include <<a class="code" href="segment_8hpp.html">ggl/geometries/segment.hpp</a>></span>
+<a name="l00033"></a>00033 <span class="preprocessor">#include <<a class="code" href="iterators_2vertex__iterator_8hpp.html">ggl/iterators/vertex_iterator.hpp</a>></span>
+<a name="l00034"></a>00034 
+<a name="l00035"></a>00035 <span class="keyword">namespace </span>ggl
+<a name="l00036"></a>00036 {
+<a name="l00037"></a>00037 
+<a name="l00038"></a>00038 <span class="preprocessor">#ifndef DOXYGEN_NO_DETAIL</span>
+<a name="l00039"></a>00039 <span class="preprocessor"></span><span class="keyword">namespace </span>detail { <span class="keyword">namespace </span>for_each {
+<a name="l00040"></a>00040 
+<a name="l00041"></a>00041 
+<a name="l00042"></a>00042 <span class="comment">// There is probably something in boost type_traits</span>
+<a name="l00043"></a>00043 <span class="comment">// or MPL with this functionality</span>
+<a name="l00044"></a>00044 <span class="keyword">template</span> <<span class="keyword">typename</span> Type, <span class="keywordtype">bool</span> IsConst>
+<a name="l00045"></a>00045 <span class="keyword">struct </span>c_nc
+<a name="l00046"></a>00046 {
+<a name="l00047"></a>00047     <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::mpl::if_c
+<a name="l00048"></a>00048         <
+<a name="l00049"></a>00049             IsConst,
+<a name="l00050"></a>00050             <span class="keyword">const</span> Type,
+<a name="l00051"></a>00051             Type
+<a name="l00052"></a>00052         >::type type;
+<a name="l00053"></a>00053 };
+<a name="l00054"></a>00054 
+<a name="l00055"></a>00055 <span class="comment">// Utility to adapt a boost-range for const/non const</span>
+<a name="l00056"></a>00056 <span class="keyword">template</span> <<span class="keyword">typename</span> Range, <span class="keywordtype">bool</span> IsConst>
+<a name="l00057"></a>00057 <span class="keyword">struct </span>c_nc_range
+<a name="l00058"></a>00058 {
+<a name="l00059"></a>00059     <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::mpl::if_c
+<a name="l00060"></a>00060         <
+<a name="l00061"></a>00061             IsConst,
+<a name="l00062"></a>00062             <span class="keyword">typename</span> boost::range_const_iterator<Range>::type,
+<a name="l00063"></a>00063             <span class="keyword">typename</span> boost::range_iterator<Range>::type
+<a name="l00064"></a>00064         >::type type;
+<a name="l00065"></a>00065 };
+<a name="l00066"></a>00066 
+<a name="l00067"></a>00067 
+<a name="l00068"></a>00068 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>, <span class="keyword">typename</span> Functor, <span class="keywordtype">bool</span> IsConst>
+<a name="l00069"></a>00069 <span class="keyword">struct </span>fe_point_per_point
+<a name="l00070"></a>00070 {
+<a name="l00071"></a>00071     <span class="keyword">static</span> <span class="keyword">inline</span> Functor apply(
+<a name="l00072"></a>00072                 <span class="keyword">typename</span> c_nc<Point, IsConst>::type& point, Functor f)
+<a name="l00073"></a>00073     {
+<a name="l00074"></a>00074         f(point);
+<a name="l00075"></a>00075         <span class="keywordflow">return</span> f;
+<a name="l00076"></a>00076     }
+<a name="l00077"></a>00077 };
+<a name="l00078"></a>00078 
+<a name="l00079"></a>00079 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>, <span class="keyword">typename</span> Functor, <span class="keywordtype">bool</span> IsConst>
+<a name="l00080"></a>00080 <span class="keyword">struct </span>fe_point_per_segment
+<a name="l00081"></a>00081 {
+<a name="l00082"></a>00082     <span class="keyword">static</span> <span class="keyword">inline</span> Functor apply(
+<a name="l00083"></a>00083                 <span class="keyword">typename</span> c_nc<Point, IsConst>::type& point, Functor f)
+<a name="l00084"></a>00084     {
+<a name="l00085"></a>00085         <span class="keywordflow">return</span> f;
+<a name="l00086"></a>00086     }
+<a name="l00087"></a>00087 };
+<a name="l00088"></a>00088 
+<a name="l00089"></a>00089 <span class="keyword">template</span> <<span class="keyword">typename</span> Range, <span class="keyword">typename</span> Functor, <span class="keywordtype">bool</span> IsConst>
+<a name="l00090"></a>00090 <span class="keyword">struct </span>fe_range_per_point
+<a name="l00091"></a>00091 {
+<a name="l00092"></a>00092     <span class="keyword">static</span> <span class="keyword">inline</span> Functor apply(
+<a name="l00093"></a>00093                     <span class="keyword">typename</span> c_nc<Range, IsConst>::type& range,
+<a name="l00094"></a>00094                     Functor f)
+<a name="l00095"></a>00095     {
+<a name="l00096"></a>00096         <span class="keywordflow">return</span> (std::for_each(boost::begin(range), boost::end(range), f));
+<a name="l00097"></a>00097     }
+<a name="l00098"></a>00098 };
+<a name="l00099"></a>00099 
+<a name="l00100"></a>00100 <span class="keyword">template</span> <<span class="keyword">typename</span> Range, <span class="keyword">typename</span> Functor, <span class="keywordtype">bool</span> IsConst>
+<a name="l00101"></a>00101 <span class="keyword">struct </span>fe_range_per_segment
+<a name="l00102"></a>00102 {
+<a name="l00103"></a>00103     <span class="keyword">static</span> <span class="keyword">inline</span> Functor apply(
+<a name="l00104"></a>00104                 <span class="keyword">typename</span> c_nc<Range, IsConst>::type& range,
+<a name="l00105"></a>00105                 Functor f)
+<a name="l00106"></a>00106     {
+<a name="l00107"></a>00107         <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1vertex__iterator.html" title="Meta-function which defines vertex_iterator type.">ggl::vertex_iterator<Range, IsConst>::type</a> iterator_type;
+<a name="l00108"></a>00108 
+<a name="l00109"></a>00109         <span class="keyword">typedef</span> <span class="keyword">typename</span> c_nc
+<a name="l00110"></a>00110             <
+<a name="l00111"></a>00111                 <span class="keyword">typename</span> point_type<Range>::type, IsConst
+<a name="l00112"></a>00112             >::type point_type;
+<a name="l00113"></a>00113 
+<a name="l00114"></a>00114         iterator_type it = boost::begin(range);
+<a name="l00115"></a>00115         iterator_type previous = it++;
+<a name="l00116"></a>00116         <span class="keywordflow">while</span>(it != boost::end(range))
+<a name="l00117"></a>00117         {
+<a name="l00118"></a>00118             segment<point_type> s(*previous, *it);
+<a name="l00119"></a>00119             f(s);
+<a name="l00120"></a>00120             previous = it++;
+<a name="l00121"></a>00121         }
+<a name="l00122"></a>00122 
+<a name="l00123"></a>00123         <span class="keywordflow">return</span> f;
+<a name="l00124"></a>00124     }
+<a name="l00125"></a>00125 };
+<a name="l00126"></a>00126 
+<a name="l00127"></a>00127 
+<a name="l00128"></a>00128 <span class="keyword">template</span> <<span class="keyword">typename</span> Polygon, <span class="keyword">typename</span> Functor, <span class="keywordtype">bool</span> IsConst>
+<a name="l00129"></a>00129 <span class="keyword">struct </span>fe_polygon_per_point
+<a name="l00130"></a>00130 {
+<a name="l00131"></a>00131     <span class="keyword">static</span> <span class="keyword">inline</span> Functor apply(
+<a name="l00132"></a>00132                 <span class="keyword">typename</span> c_nc<Polygon, IsConst>::type& poly,
+<a name="l00133"></a>00133                 Functor f)
+<a name="l00134"></a>00134     {
+<a name="l00135"></a>00135         <span class="keyword">typedef</span> <span class="keyword">typename</span> c_nc_range
+<a name="l00136"></a>00136             <
+<a name="l00137"></a>00137                 <span class="keyword">typename</span> interior_type<Polygon>::type, 
+<a name="l00138"></a>00138                 IsConst
+<a name="l00139"></a>00139             >::type iterator_type;
+<a name="l00140"></a>00140 
+<a name="l00141"></a>00141         <span class="keyword">typedef</span> fe_range_per_point
+<a name="l00142"></a>00142                 <
+<a name="l00143"></a>00143                     <span class="keyword">typename</span> ring_type<Polygon>::type, 
+<a name="l00144"></a>00144                     Functor, 
+<a name="l00145"></a>00145                     IsConst
+<a name="l00146"></a>00146                 > per_ring;
+<a name="l00147"></a>00147 
+<a name="l00148"></a>00148         f = per_ring::apply(<a class="code" href="group__access.html#gf92470d0612da7f0e118d296e7fcfe01" title="Function to get the exterior_ring ring of a polygon.">exterior_ring</a>(poly), f);
+<a name="l00149"></a>00149 
+<a name="l00150"></a>00150         <span class="keywordflow">for</span> (iterator_type it = boost::begin(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly));
+<a name="l00151"></a>00151              it != boost::end(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly));
+<a name="l00152"></a>00152              ++it)
+<a name="l00153"></a>00153         {
+<a name="l00154"></a>00154             f = per_ring::apply(*it, f);
+<a name="l00155"></a>00155         }
+<a name="l00156"></a>00156 
+<a name="l00157"></a>00157         <span class="keywordflow">return</span> f;
+<a name="l00158"></a>00158     }
+<a name="l00159"></a>00159 
+<a name="l00160"></a>00160 };
+<a name="l00161"></a>00161 
+<a name="l00162"></a>00162 
+<a name="l00163"></a>00163 <span class="keyword">template</span> <<span class="keyword">typename</span> Polygon, <span class="keyword">typename</span> Functor, <span class="keywordtype">bool</span> IsConst>
+<a name="l00164"></a>00164 <span class="keyword">struct </span>fe_polygon_per_segment
+<a name="l00165"></a>00165 {
+<a name="l00166"></a>00166     <span class="keyword">static</span> <span class="keyword">inline</span> Functor apply(
+<a name="l00167"></a>00167                 <span class="keyword">typename</span> c_nc<Polygon, IsConst>::type& poly,
+<a name="l00168"></a>00168                 Functor f)
+<a name="l00169"></a>00169     {
+<a name="l00170"></a>00170         <span class="keyword">typedef</span> <span class="keyword">typename</span> c_nc_range
+<a name="l00171"></a>00171             <
+<a name="l00172"></a>00172                 <span class="keyword">typename</span> interior_type<Polygon>::type, 
+<a name="l00173"></a>00173                 IsConst
+<a name="l00174"></a>00174             >::type iterator_type;
+<a name="l00175"></a>00175 
+<a name="l00176"></a>00176         <span class="keyword">typedef</span> fe_range_per_segment
+<a name="l00177"></a>00177             <
+<a name="l00178"></a>00178                 <span class="keyword">typename</span> ring_type<Polygon>::type, 
+<a name="l00179"></a>00179                 Functor, 
+<a name="l00180"></a>00180                 IsConst
+<a name="l00181"></a>00181             > per_ring;
+<a name="l00182"></a>00182 
+<a name="l00183"></a>00183         f = per_ring::apply(<a class="code" href="group__access.html#gf92470d0612da7f0e118d296e7fcfe01" title="Function to get the exterior_ring ring of a polygon.">exterior_ring</a>(poly), f);
+<a name="l00184"></a>00184 
+<a name="l00185"></a>00185         <span class="keywordflow">for</span> (iterator_type it = boost::begin(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly));
+<a name="l00186"></a>00186              it != boost::end(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly));
+<a name="l00187"></a>00187              ++it)
+<a name="l00188"></a>00188         {
+<a name="l00189"></a>00189             f = per_ring::apply(*it, f);
+<a name="l00190"></a>00190         }
+<a name="l00191"></a>00191 
+<a name="l00192"></a>00192         <span class="keywordflow">return</span> f;
+<a name="l00193"></a>00193     }
+<a name="l00194"></a>00194 
+<a name="l00195"></a>00195 };
+<a name="l00196"></a>00196 
+<a name="l00197"></a>00197 }} <span class="comment">// namespace detail::for_each</span>
+<a name="l00198"></a>00198 <span class="preprocessor">#endif // DOXYGEN_NO_DETAIL</span>
+<a name="l00199"></a>00199 <span class="preprocessor"></span>
+<a name="l00200"></a>00200 
+<a name="l00201"></a>00201 <span class="preprocessor">#ifndef DOXYGEN_NO_DISPATCH</span>
+<a name="l00202"></a>00202 <span class="preprocessor"></span><span class="keyword">namespace </span>dispatch
+<a name="l00203"></a>00203 {
+<a name="l00204"></a>00204 
+<a name="l00205"></a>00205 <span class="keyword">template</span> 
+<a name="l00206"></a>00206 <
+<a name="l00207"></a>00207     <span class="keyword">typename</span> Tag, 
+<a name="l00208"></a>00208     <span class="keywordtype">bool</span> IsMulti, 
+<a name="l00209"></a>00209     <span class="keyword">typename</span> Geometry, 
+<a name="l00210"></a>00210     <span class="keyword">typename</span> Functor, 
+<a name="l00211"></a>00211     <span class="keywordtype">bool</span> IsConst
+<a name="l00212"></a>00212 >
+<a name="l00213"></a>00213 <span class="keyword">struct </span><a class="code" href="group__loop.html#g0cdb7f23bf7395ba3f385e9cf01a601f" title="Calls functor for geometry.">for_each_point</a> {};
+<a name="l00214"></a>00214 
+<a name="l00215"></a>00215 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>, <span class="keyword">typename</span> Functor, <span class="keywordtype">bool</span> IsConst>
+<a name="l00216"></a>00216 <span class="keyword">struct </span><a class="code" href="group__loop.html#g0cdb7f23bf7395ba3f385e9cf01a601f" title="Calls functor for geometry.">for_each_point</a><point_tag, false, Point, Functor, IsConst>
+<a name="l00217"></a>00217     : detail::for_each::fe_point_per_point<Point, Functor, IsConst>
+<a name="l00218"></a>00218 {};
+<a name="l00219"></a>00219 
+<a name="l00220"></a>00220 <span class="keyword">template</span> <<span class="keyword">typename</span> Line<span class="keywordtype">string</span>, <span class="keyword">typename</span> Functor, <span class="keywordtype">bool</span> IsConst>
+<a name="l00221"></a>00221 <span class="keyword">struct </span><a class="code" href="group__loop.html#g0cdb7f23bf7395ba3f385e9cf01a601f" title="Calls functor for geometry.">for_each_point</a><linestring_tag, false, Linestring, Functor, IsConst>
+<a name="l00222"></a>00222     : detail::for_each::fe_range_per_point<Linestring, Functor, IsConst>
+<a name="l00223"></a>00223 {};
+<a name="l00224"></a>00224 
+<a name="l00225"></a>00225 <span class="keyword">template</span> <<span class="keyword">typename</span> Ring, <span class="keyword">typename</span> Functor, <span class="keywordtype">bool</span> IsConst>
+<a name="l00226"></a>00226 <span class="keyword">struct </span><a class="code" href="group__loop.html#g0cdb7f23bf7395ba3f385e9cf01a601f" title="Calls functor for geometry.">for_each_point</a><ring_tag, false, Ring, Functor, IsConst>
+<a name="l00227"></a>00227     : detail::for_each::fe_range_per_point<Ring, Functor, IsConst>
+<a name="l00228"></a>00228 {};
+<a name="l00229"></a>00229 
+<a name="l00230"></a>00230 <span class="keyword">template</span> <<span class="keyword">typename</span> Polygon, <span class="keyword">typename</span> Functor, <span class="keywordtype">bool</span> IsConst>
+<a name="l00231"></a>00231 <span class="keyword">struct </span><a class="code" href="group__loop.html#g0cdb7f23bf7395ba3f385e9cf01a601f" title="Calls functor for geometry.">for_each_point</a><polygon_tag, false, Polygon, Functor, IsConst>
+<a name="l00232"></a>00232     : detail::for_each::fe_polygon_per_point<Polygon, Functor, IsConst>
+<a name="l00233"></a>00233 {};
+<a name="l00234"></a>00234 
+<a name="l00235"></a>00235 
+<a name="l00236"></a>00236 
+<a name="l00237"></a>00237 
+<a name="l00238"></a>00238 <span class="keyword">template</span> 
+<a name="l00239"></a>00239 <
+<a name="l00240"></a>00240     <span class="keyword">typename</span> Tag, 
+<a name="l00241"></a>00241     <span class="keywordtype">bool</span> IsMulti, 
+<a name="l00242"></a>00242     <span class="keyword">typename</span> Geometry, 
+<a name="l00243"></a>00243     <span class="keyword">typename</span> Functor, 
+<a name="l00244"></a>00244     <span class="keywordtype">bool</span> IsConst
+<a name="l00245"></a>00245 >
+<a name="l00246"></a>00246 <span class="keyword">struct </span><a class="code" href="group__loop.html#ge8453eab0e9db146184d7ccef687a33e" title="Calls functor for segments on linestrings, rings, polygons, ...">for_each_segment</a> {};
+<a name="l00247"></a>00247 
+<a name="l00248"></a>00248 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>, <span class="keyword">typename</span> Functor, <span class="keywordtype">bool</span> IsConst>
+<a name="l00249"></a>00249 <span class="keyword">struct </span><a class="code" href="group__loop.html#ge8453eab0e9db146184d7ccef687a33e" title="Calls functor for segments on linestrings, rings, polygons, ...">for_each_segment</a><point_tag, false, Point, Functor, IsConst>
+<a name="l00250"></a>00250     : detail::for_each::fe_point_per_segment<Point, Functor, IsConst>
+<a name="l00251"></a>00251 {};
+<a name="l00252"></a>00252 
+<a name="l00253"></a>00253 <span class="keyword">template</span> <<span class="keyword">typename</span> Line<span class="keywordtype">string</span>, <span class="keyword">typename</span> Functor, <span class="keywordtype">bool</span> IsConst>
+<a name="l00254"></a>00254 <span class="keyword">struct </span><a class="code" href="group__loop.html#ge8453eab0e9db146184d7ccef687a33e" title="Calls functor for segments on linestrings, rings, polygons, ...">for_each_segment</a><linestring_tag, false, Linestring, Functor, IsConst>
+<a name="l00255"></a>00255     : detail::for_each::fe_range_per_segment<Linestring, Functor, IsConst>
+<a name="l00256"></a>00256 {};
+<a name="l00257"></a>00257 
+<a name="l00258"></a>00258 <span class="keyword">template</span> <<span class="keyword">typename</span> Ring, <span class="keyword">typename</span> Functor, <span class="keywordtype">bool</span> IsConst>
+<a name="l00259"></a>00259 <span class="keyword">struct </span><a class="code" href="group__loop.html#ge8453eab0e9db146184d7ccef687a33e" title="Calls functor for segments on linestrings, rings, polygons, ...">for_each_segment</a><ring_tag, false, Ring, Functor, IsConst>
+<a name="l00260"></a>00260     : detail::for_each::fe_range_per_segment<Ring, Functor, IsConst>
+<a name="l00261"></a>00261 {};
+<a name="l00262"></a>00262 
+<a name="l00263"></a>00263 <span class="keyword">template</span> <<span class="keyword">typename</span> Polygon, <span class="keyword">typename</span> Functor, <span class="keywordtype">bool</span> IsConst>
+<a name="l00264"></a>00264 <span class="keyword">struct </span><a class="code" href="group__loop.html#ge8453eab0e9db146184d7ccef687a33e" title="Calls functor for segments on linestrings, rings, polygons, ...">for_each_segment</a><polygon_tag, false, Polygon, Functor, IsConst>
+<a name="l00265"></a>00265     : detail::for_each::fe_polygon_per_segment<Polygon, Functor, IsConst>
+<a name="l00266"></a>00266 {};
+<a name="l00267"></a>00267 
+<a name="l00268"></a>00268 
+<a name="l00269"></a>00269 } <span class="comment">// namespace dispatch</span>
+<a name="l00270"></a>00270 <span class="preprocessor">#endif // DOXYGEN_NO_DISPATCH</span>
+<a name="l00271"></a>00271 <span class="preprocessor"></span>
+<a name="l00279"></a>00279 <span class="keyword">template</span><<span class="keyword">typename</span> Geometry, <span class="keyword">typename</span> Functor>
+<a name="l00280"></a><a class="code" href="group__loop.html#g0cdb7f23bf7395ba3f385e9cf01a601f">00280</a> <span class="keyword">inline</span> Functor <a class="code" href="group__loop.html#g0cdb7f23bf7395ba3f385e9cf01a601f" title="Calls functor for geometry.">for_each_point</a>(Geometry <span class="keyword">const</span>& geometry, Functor f)
+<a name="l00281"></a>00281 {
+<a name="l00282"></a>00282     <span class="keywordflow">return</span> <a class="code" href="group__loop.html#g0cdb7f23bf7395ba3f385e9cf01a601f" title="Calls functor for geometry.">dispatch::for_each_point</a>
+<a name="l00283"></a>00283         <
+<a name="l00284"></a>00284             <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<Geometry>::type</a>, 
+<a name="l00285"></a>00285             <a class="code" href="structggl_1_1is__multi.html" title="Meta-function defining &quot;true&quot; for multi geometries (multi_point, etc).">is_multi<Geometry>::type::value</a>,
+<a name="l00286"></a>00286             Geometry, 
+<a name="l00287"></a>00287             Functor, 
+<a name="l00288"></a>00288             <span class="keyword">true</span>
+<a name="l00289"></a>00289         >::apply(geometry, f);
+<a name="l00290"></a>00290 }
+<a name="l00291"></a>00291 
+<a name="l00299"></a>00299 <span class="keyword">template</span><<span class="keyword">typename</span> Geometry, <span class="keyword">typename</span> Functor>
+<a name="l00300"></a><a class="code" href="group__loop.html#g66bf40f0ee4dc883d9d3b621aeb2e81d">00300</a> <span class="keyword">inline</span> Functor <a class="code" href="group__loop.html#g0cdb7f23bf7395ba3f385e9cf01a601f" title="Calls functor for geometry.">for_each_point</a>(Geometry& geometry, Functor f)
+<a name="l00301"></a>00301 {
+<a name="l00302"></a>00302     <span class="keywordflow">return</span> <a class="code" href="group__loop.html#g0cdb7f23bf7395ba3f385e9cf01a601f" title="Calls functor for geometry.">dispatch::for_each_point</a>
+<a name="l00303"></a>00303         <
+<a name="l00304"></a>00304             <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<Geometry>::type</a>, 
+<a name="l00305"></a>00305             <a class="code" href="structggl_1_1is__multi.html" title="Meta-function defining &quot;true&quot; for multi geometries (multi_point, etc).">is_multi<Geometry>::type::value</a>,
+<a name="l00306"></a>00306             Geometry, 
+<a name="l00307"></a>00307             Functor, 
+<a name="l00308"></a>00308             <span class="keyword">false</span>
+<a name="l00309"></a>00309         >::apply(geometry, f);
+<a name="l00310"></a>00310 }
+<a name="l00311"></a>00311 
+<a name="l00319"></a>00319 <span class="keyword">template</span><<span class="keyword">typename</span> Geometry, <span class="keyword">typename</span> Functor>
+<a name="l00320"></a><a class="code" href="group__loop.html#ge8453eab0e9db146184d7ccef687a33e">00320</a> <span class="keyword">inline</span> Functor <a class="code" href="group__loop.html#ge8453eab0e9db146184d7ccef687a33e" title="Calls functor for segments on linestrings, rings, polygons, ...">for_each_segment</a>(Geometry <span class="keyword">const</span>& geometry, Functor f)
+<a name="l00321"></a>00321 {
+<a name="l00322"></a>00322     <span class="keywordflow">return</span> <a class="code" href="group__loop.html#ge8453eab0e9db146184d7ccef687a33e" title="Calls functor for segments on linestrings, rings, polygons, ...">dispatch::for_each_segment</a>
+<a name="l00323"></a>00323         <
+<a name="l00324"></a>00324             <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<Geometry>::type</a>, 
+<a name="l00325"></a>00325             <a class="code" href="structggl_1_1is__multi.html" title="Meta-function defining &quot;true&quot; for multi geometries (multi_point, etc).">is_multi<Geometry>::type::value</a>,
+<a name="l00326"></a>00326             Geometry, 
+<a name="l00327"></a>00327             Functor, 
+<a name="l00328"></a>00328             <span class="keyword">true</span>
+<a name="l00329"></a>00329         >::apply(geometry, f);
+<a name="l00330"></a>00330 }
+<a name="l00331"></a>00331 
+<a name="l00332"></a>00332 
+<a name="l00340"></a>00340 <span class="keyword">template</span><<span class="keyword">typename</span> Geometry, <span class="keyword">typename</span> Functor>
+<a name="l00341"></a><a class="code" href="group__loop.html#g529f5655aa7702e9f143263b484ff91b">00341</a> <span class="keyword">inline</span> Functor <a class="code" href="group__loop.html#ge8453eab0e9db146184d7ccef687a33e" title="Calls functor for segments on linestrings, rings, polygons, ...">for_each_segment</a>(Geometry& geometry, Functor f)
+<a name="l00342"></a>00342 {
+<a name="l00343"></a>00343     <span class="keywordflow">return</span> <a class="code" href="group__loop.html#ge8453eab0e9db146184d7ccef687a33e" title="Calls functor for segments on linestrings, rings, polygons, ...">dispatch::for_each_segment</a>
+<a name="l00344"></a>00344         <
+<a name="l00345"></a>00345             <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<Geometry>::type</a>, 
+<a name="l00346"></a>00346             <a class="code" href="structggl_1_1is__multi.html" title="Meta-function defining &quot;true&quot; for multi geometries (multi_point, etc).">is_multi<Geometry>::type::value</a>,
+<a name="l00347"></a>00347             Geometry, 
+<a name="l00348"></a>00348             Functor, 
+<a name="l00349"></a>00349             <span class="keyword">false</span>
+<a name="l00350"></a>00350         >::apply(geometry, f);
+<a name="l00351"></a>00351 }
+<a name="l00352"></a>00352 
+<a name="l00353"></a>00353 } <span class="comment">// namespace ggl</span>
+<a name="l00354"></a>00354 
+<a name="l00355"></a>00355 <span class="preprocessor">#endif // GGL_ALGORITHMS_FOR_EACH_HPP</span>
+</pre></div></div>
+<hr size="1">
+<table width="100%">
+<tbody>
+<tr>
+<td align="left"><small>
+<p>October 13, 2009</p>
+</small></td>
+<td align="right">
+<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
+Copyright © 2008-2009 Bruno Lalande, Paris<br>
+Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
+</small>
+</td>
+</tr>
+</tbody>
+</table>
+
+<address style="text-align: right;"><small>
+Documentation is generated by Doxygen
+</small></address>
+</body>
+</html>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2intersection_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2intersection_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2intersection_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -53,386 +53,389 @@
 <a name="l00011"></a>00011 <span class="preprocessor"></span>
 <a name="l00012"></a>00012 <span class="preprocessor">#include <deque></span>
 <a name="l00013"></a>00013 
-<a name="l00014"></a>00014 <span class="preprocessor">#include <<a class="code" href="intersection__linestring_8hpp.html">ggl/algorithms/intersection_linestring.hpp</a>></span>
+<a name="l00014"></a>00014 <span class="preprocessor">#include <boost/mpl/if.hpp></span>
 <a name="l00015"></a>00015 
-<a name="l00016"></a>00016 <span class="preprocessor">#include <<a class="code" href="get__intersection__points_8hpp.html">ggl/algorithms/overlay/get_intersection_points.hpp</a>></span>
-<a name="l00017"></a>00017 <span class="preprocessor">#include <<a class="code" href="merge__intersection__points_8hpp.html">ggl/algorithms/overlay/merge_intersection_points.hpp</a>></span>
-<a name="l00018"></a>00018 <span class="preprocessor">#include <<a class="code" href="adapt__turns_8hpp.html">ggl/algorithms/overlay/adapt_turns.hpp</a>></span>
-<a name="l00019"></a>00019 <span class="preprocessor">#include <<a class="code" href="enrich__intersection__points_8hpp.html">ggl/algorithms/overlay/enrich_intersection_points.hpp</a>></span>
-<a name="l00020"></a>00020 <span class="preprocessor">#include <<a class="code" href="traverse_8hpp.html">ggl/algorithms/overlay/traverse.hpp</a>></span>
-<a name="l00021"></a>00021 
-<a name="l00022"></a>00022 <span class="preprocessor">#include <<a class="code" href="assign_8hpp.html">ggl/algorithms/assign.hpp</a>></span>
-<a name="l00023"></a>00023 <span class="preprocessor">#include <<a class="code" href="convert_8hpp.html">ggl/algorithms/convert.hpp</a>></span>
-<a name="l00024"></a>00024 <span class="preprocessor">#include <<a class="code" href="algorithms_2within_8hpp.html">ggl/algorithms/within.hpp</a>></span>
-<a name="l00025"></a>00025 
-<a name="l00026"></a>00026 
-<a name="l00027"></a>00027 
-<a name="l00073"></a>00073 <span class="keyword">namespace </span>ggl
-<a name="l00074"></a>00074 {
-<a name="l00075"></a>00075 
-<a name="l00076"></a>00076 
-<a name="l00077"></a>00077 <span class="preprocessor">#ifndef DOXYGEN_NO_DETAIL</span>
-<a name="l00078"></a>00078 <span class="preprocessor"></span><span class="keyword">namespace </span>detail { <span class="keyword">namespace </span><a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a> {
+<a name="l00016"></a>00016 
+<a name="l00017"></a>00017 <span class="preprocessor">#include <<a class="code" href="intersection__linestring_8hpp.html">ggl/algorithms/intersection_linestring.hpp</a>></span>
+<a name="l00018"></a>00018 
+<a name="l00019"></a>00019 <span class="preprocessor">#include <<a class="code" href="get__intersection__points_8hpp.html">ggl/algorithms/overlay/get_intersection_points.hpp</a>></span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include <<a class="code" href="merge__intersection__points_8hpp.html">ggl/algorithms/overlay/merge_intersection_points.hpp</a>></span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include <<a class="code" href="adapt__turns_8hpp.html">ggl/algorithms/overlay/adapt_turns.hpp</a>></span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include <<a class="code" href="enrich__intersection__points_8hpp.html">ggl/algorithms/overlay/enrich_intersection_points.hpp</a>></span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include <<a class="code" href="traverse_8hpp.html">ggl/algorithms/overlay/traverse.hpp</a>></span>
+<a name="l00024"></a>00024 
+<a name="l00025"></a>00025 <span class="preprocessor">#include <<a class="code" href="assign_8hpp.html">ggl/algorithms/assign.hpp</a>></span>
+<a name="l00026"></a>00026 <span class="preprocessor">#include <<a class="code" href="convert_8hpp.html">ggl/algorithms/convert.hpp</a>></span>
+<a name="l00027"></a>00027 <span class="preprocessor">#include <<a class="code" href="algorithms_2within_8hpp.html">ggl/algorithms/within.hpp</a>></span>
+<a name="l00028"></a>00028 
+<a name="l00029"></a>00029 
+<a name="l00030"></a>00030 
+<a name="l00076"></a>00076 <span class="keyword">namespace </span>ggl
+<a name="l00077"></a>00077 {
+<a name="l00078"></a>00078 
 <a name="l00079"></a>00079 
-<a name="l00080"></a>00080 
-<a name="l00081"></a>00081 <span class="keyword">template</span>
-<a name="l00082"></a>00082 <
-<a name="l00083"></a>00083     <span class="keyword">typename</span> Polygon1, <span class="keyword">typename</span> Polygon2,
-<a name="l00084"></a>00084     <span class="keyword">typename</span> OutputIterator, <span class="keyword">typename</span> GeometryOut
-<a name="l00085"></a>00085 >
-<a name="l00086"></a>00086 <span class="keyword">struct </span>intersection_polygon_polygon
-<a name="l00087"></a>00087 {
-<a name="l00088"></a>00088     <span class="keyword">static</span> <span class="keyword">inline</span> OutputIterator apply(Polygon1 <span class="keyword">const</span>& polygon1,
-<a name="l00089"></a>00089                 Polygon2 <span class="keyword">const</span>& polygon2, OutputIterator out)
-<a name="l00090"></a>00090     {
-<a name="l00091"></a>00091         <span class="keyword">typedef</span> detail::intersection::intersection_point
-<a name="l00092"></a>00092             <
-<a name="l00093"></a>00093                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">ggl::point_type<GeometryOut>::type</a>
-<a name="l00094"></a>00094             > ip_type;
-<a name="l00095"></a>00095         <span class="keyword">typedef</span> std::deque<ip_type> ips_container;
-<a name="l00096"></a>00096 
-<a name="l00097"></a>00097         <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1ring__type.html" title="Meta-function which defines ring type of (multi)polygon geometry.">ggl::ring_type<GeometryOut>::type</a> ring_type;
-<a name="l00098"></a>00098 
-<a name="l00099"></a>00099         ips_container ips;
-<a name="l00100"></a>00100 
-<a name="l00101"></a>00101         <span class="keywordtype">bool</span> trivial = <a class="code" href="group__overlay.html#g9b41efeface4cb10fbce39c8bcc8bec9" title="Calculate intersection points of two geometries.">ggl::get_intersection_points</a>(polygon1, polygon2, ips);
-<a name="l00102"></a>00102 
-<a name="l00103"></a>00103         <span class="keywordflow">if</span> (ips.size() <= 0)
-<a name="l00104"></a>00104         {
-<a name="l00105"></a>00105             <span class="comment">// If there are no IP-s, check if one point is in other polygon</span>
-<a name="l00106"></a>00106             <span class="comment">// assume both polygons having points</span>
-<a name="l00107"></a>00107             <span class="keywordflow">if</span> (<a class="code" href="group__boolean__relations.html#g95d6465a12b762c77df41369a039f6dc" title="Within check.">ggl::within</a>(<a class="code" href="group__access.html#gf92470d0612da7f0e118d296e7fcfe01" title="Function to get the exterior_ring ring of a polygon.">ggl::exterior_ring</a>(polygon1).front(), polygon2))
-<a name="l00108"></a>00108             {
-<a name="l00109"></a>00109                 <span class="comment">// Assume same type (output = input)</span>
-<a name="l00110"></a>00110                 <span class="comment">// TODO: solve this (we go to specialize again...)</span>
-<a name="l00111"></a>00111                 *out = polygon1;
-<a name="l00112"></a>00112                 out++;
-<a name="l00113"></a>00113             }
-<a name="l00114"></a>00114             <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="group__boolean__relations.html#g95d6465a12b762c77df41369a039f6dc" title="Within check.">ggl::within</a>(<a class="code" href="group__access.html#gf92470d0612da7f0e118d296e7fcfe01" title="Function to get the exterior_ring ring of a polygon.">ggl::exterior_ring</a>(polygon2).front(), polygon1))
-<a name="l00115"></a>00115             {
-<a name="l00116"></a>00116                 *out = polygon2;
-<a name="l00117"></a>00117                 out++;
-<a name="l00118"></a>00118             }
-<a name="l00119"></a>00119         }
-<a name="l00120"></a>00120         <span class="keywordflow">else</span>
-<a name="l00121"></a>00121         {
-<a name="l00122"></a>00122             <span class="keywordflow">if</span> (! trivial)
-<a name="l00123"></a>00123             {
-<a name="l00124"></a>00124                 <a class="code" href="group__overlay.html#gc1dcd7471f802810f7d48b36eea24d0f" title="Merges intersection points such that points at the same location will be merged,...">ggl::merge_intersection_points</a>(ips);
-<a name="l00125"></a>00125                 <a class="code" href="namespaceggl.html#a8f29c6cbf3f88d5926a127c76976027">ggl::adapt_turns</a>(ips);
-<a name="l00126"></a>00126 
-<a name="l00127"></a>00127             }
-<a name="l00128"></a>00128 
-<a name="l00129"></a>00129             <a class="code" href="group__overlay.html#g379db9c2e9741b685302a21f86ea24f3" title="All intersection points are enriched with successor information.">ggl::enrich_intersection_points</a>(ips, trivial);
-<a name="l00130"></a>00130 
+<a name="l00080"></a>00080 <span class="preprocessor">#ifndef DOXYGEN_NO_DETAIL</span>
+<a name="l00081"></a>00081 <span class="preprocessor"></span><span class="keyword">namespace </span>detail { <span class="keyword">namespace </span><a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a> {
+<a name="l00082"></a>00082 
+<a name="l00083"></a>00083 
+<a name="l00084"></a>00084 <span class="keyword">template</span>
+<a name="l00085"></a>00085 <
+<a name="l00086"></a>00086     <span class="keyword">typename</span> Polygon1, <span class="keyword">typename</span> Polygon2,
+<a name="l00087"></a>00087     <span class="keyword">typename</span> OutputIterator, <span class="keyword">typename</span> GeometryOut
+<a name="l00088"></a>00088 >
+<a name="l00089"></a>00089 <span class="keyword">struct </span>intersection_polygon_polygon
+<a name="l00090"></a>00090 {
+<a name="l00091"></a>00091     <span class="keyword">static</span> <span class="keyword">inline</span> OutputIterator apply(Polygon1 <span class="keyword">const</span>& polygon1,
+<a name="l00092"></a>00092                 Polygon2 <span class="keyword">const</span>& polygon2, OutputIterator out)
+<a name="l00093"></a>00093     {
+<a name="l00094"></a>00094         <span class="keyword">typedef</span> detail::intersection::intersection_point
+<a name="l00095"></a>00095             <
+<a name="l00096"></a>00096                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">ggl::point_type<GeometryOut>::type</a>
+<a name="l00097"></a>00097             > ip_type;
+<a name="l00098"></a>00098         <span class="keyword">typedef</span> std::deque<ip_type> ips_container;
+<a name="l00099"></a>00099 
+<a name="l00100"></a>00100         <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1ring__type.html" title="Meta-function which defines ring type of (multi)polygon geometry.">ggl::ring_type<GeometryOut>::type</a> ring_type;
+<a name="l00101"></a>00101 
+<a name="l00102"></a>00102         ips_container ips;
+<a name="l00103"></a>00103 
+<a name="l00104"></a>00104         <span class="keywordtype">bool</span> trivial = <a class="code" href="group__overlay.html#g9b41efeface4cb10fbce39c8bcc8bec9" title="Calculate intersection points of two geometries.">ggl::get_intersection_points</a>(polygon1, polygon2, ips);
+<a name="l00105"></a>00105 
+<a name="l00106"></a>00106         <span class="keywordflow">if</span> (ips.size() <= 0)
+<a name="l00107"></a>00107         {
+<a name="l00108"></a>00108             <span class="comment">// If there are no IP-s, check if one point is in other polygon</span>
+<a name="l00109"></a>00109             <span class="comment">// assume both polygons having points</span>
+<a name="l00110"></a>00110             <span class="keywordflow">if</span> (<a class="code" href="group__boolean__relations.html#g95d6465a12b762c77df41369a039f6dc" title="Within check.">ggl::within</a>(<a class="code" href="group__access.html#gf92470d0612da7f0e118d296e7fcfe01" title="Function to get the exterior_ring ring of a polygon.">ggl::exterior_ring</a>(polygon1).front(), polygon2))
+<a name="l00111"></a>00111             {
+<a name="l00112"></a>00112                 <span class="comment">// Assume same type (output = input)</span>
+<a name="l00113"></a>00113                 <span class="comment">// TODO: solve this (we go to specialize again...)</span>
+<a name="l00114"></a>00114                 *out = polygon1;
+<a name="l00115"></a>00115                 out++;
+<a name="l00116"></a>00116             }
+<a name="l00117"></a>00117             <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="group__boolean__relations.html#g95d6465a12b762c77df41369a039f6dc" title="Within check.">ggl::within</a>(<a class="code" href="group__access.html#gf92470d0612da7f0e118d296e7fcfe01" title="Function to get the exterior_ring ring of a polygon.">ggl::exterior_ring</a>(polygon2).front(), polygon1))
+<a name="l00118"></a>00118             {
+<a name="l00119"></a>00119                 *out = polygon2;
+<a name="l00120"></a>00120                 out++;
+<a name="l00121"></a>00121             }
+<a name="l00122"></a>00122         }
+<a name="l00123"></a>00123         <span class="keywordflow">else</span>
+<a name="l00124"></a>00124         {
+<a name="l00125"></a>00125             <span class="keywordflow">if</span> (! trivial)
+<a name="l00126"></a>00126             {
+<a name="l00127"></a>00127                 <a class="code" href="group__overlay.html#gc1dcd7471f802810f7d48b36eea24d0f" title="Merges intersection points such that points at the same location will be merged,...">ggl::merge_intersection_points</a>(ips);
+<a name="l00128"></a>00128                 <a class="code" href="namespaceggl.html#a8f29c6cbf3f88d5926a127c76976027">ggl::adapt_turns</a>(ips);
+<a name="l00129"></a>00129 
+<a name="l00130"></a>00130             }
 <a name="l00131"></a>00131 
-<a name="l00132"></a>00132             std::vector<ring_type> v;
-<a name="l00133"></a>00133             ggl::traverse<ring_type>
-<a name="l00134"></a>00134                 (
-<a name="l00135"></a>00135                     polygon1,
-<a name="l00136"></a>00136                     polygon2,
-<a name="l00137"></a>00137                     -1,
-<a name="l00138"></a>00138                     ips,
-<a name="l00139"></a>00139                     trivial,
-<a name="l00140"></a>00140                     std::back_inserter(v)
-<a name="l00141"></a>00141                 );
-<a name="l00142"></a>00142 
-<a name="l00143"></a>00143 
-<a name="l00144"></a>00144             <span class="comment">// TODO:</span>
-<a name="l00145"></a>00145             <span class="comment">// assemble rings / inner rings / to polygons</span>
-<a name="l00146"></a>00146             <span class="keywordflow">for</span> (<span class="keyword">typename</span> std::vector<ring_type>::const_iterator it = v.begin();
-<a name="l00147"></a>00147                 it != v.end(); ++it)
-<a name="l00148"></a>00148             {
-<a name="l00149"></a>00149                 <span class="comment">// How can we avoid the double copy here! It is really bad!</span>
-<a name="l00150"></a>00150                 <span class="comment">// We have to create a polygon, then copy it to the output iterator.</span>
-<a name="l00151"></a>00151                 <span class="comment">// Having an output-vector would have been better: append it to the vector!</span>
-<a name="l00152"></a>00152                 <span class="comment">// So output iterators are not that good.</span>
-<a name="l00153"></a>00153                 GeometryOut poly;
-<a name="l00154"></a>00154                 poly.outer() = *it;
-<a name="l00155"></a>00155                 *out = poly;
-<a name="l00156"></a>00156                 out++;
-<a name="l00157"></a>00157             }
-<a name="l00158"></a>00158         }
-<a name="l00159"></a>00159 
-<a name="l00160"></a>00160 
-<a name="l00161"></a>00161         <span class="keywordflow">return</span> out;
-<a name="l00162"></a>00162     }
-<a name="l00163"></a>00163 };
-<a name="l00164"></a>00164 
-<a name="l00165"></a>00165 
-<a name="l00166"></a>00166 
+<a name="l00132"></a>00132             <a class="code" href="group__overlay.html#g379db9c2e9741b685302a21f86ea24f3" title="All intersection points are enriched with successor information.">ggl::enrich_intersection_points</a>(ips, trivial);
+<a name="l00133"></a>00133 
+<a name="l00134"></a>00134 
+<a name="l00135"></a>00135             std::vector<ring_type> v;
+<a name="l00136"></a>00136             ggl::traverse<ring_type>
+<a name="l00137"></a>00137                 (
+<a name="l00138"></a>00138                     polygon1,
+<a name="l00139"></a>00139                     polygon2,
+<a name="l00140"></a>00140                     -1,
+<a name="l00141"></a>00141                     ips,
+<a name="l00142"></a>00142                     trivial,
+<a name="l00143"></a>00143                     std::back_inserter(v)
+<a name="l00144"></a>00144                 );
+<a name="l00145"></a>00145 
+<a name="l00146"></a>00146 
+<a name="l00147"></a>00147             <span class="comment">// TODO:</span>
+<a name="l00148"></a>00148             <span class="comment">// assemble rings / inner rings / to polygons</span>
+<a name="l00149"></a>00149             <span class="keywordflow">for</span> (<span class="keyword">typename</span> std::vector<ring_type>::const_iterator it = v.begin();
+<a name="l00150"></a>00150                 it != v.end(); ++it)
+<a name="l00151"></a>00151             {
+<a name="l00152"></a>00152                 <span class="comment">// How can we avoid the double copy here! It is really bad!</span>
+<a name="l00153"></a>00153                 <span class="comment">// We have to create a polygon, then copy it to the output iterator.</span>
+<a name="l00154"></a>00154                 <span class="comment">// Having an output-vector would have been better: append it to the vector!</span>
+<a name="l00155"></a>00155                 <span class="comment">// So output iterators are not that good.</span>
+<a name="l00156"></a>00156                 GeometryOut poly;
+<a name="l00157"></a>00157                 poly.outer() = *it;
+<a name="l00158"></a>00158                 *out = poly;
+<a name="l00159"></a>00159                 out++;
+<a name="l00160"></a>00160             }
+<a name="l00161"></a>00161         }
+<a name="l00162"></a>00162 
+<a name="l00163"></a>00163 
+<a name="l00164"></a>00164         <span class="keywordflow">return</span> out;
+<a name="l00165"></a>00165     }
+<a name="l00166"></a>00166 };
 <a name="l00167"></a>00167 
-<a name="l00168"></a>00168 <span class="keyword">template</span>
-<a name="l00169"></a>00169 <
-<a name="l00170"></a>00170     <span class="keyword">typename</span> Polygon, <span class="keyword">typename</span> Box,
-<a name="l00171"></a>00171     <span class="keyword">typename</span> OutputIterator, <span class="keyword">typename</span> GeometryOut
-<a name="l00172"></a>00172 >
-<a name="l00173"></a>00173 <span class="keyword">struct </span>intersection_polygon_box
-<a name="l00174"></a>00174 {
-<a name="l00175"></a>00175     <span class="keyword">static</span> <span class="keyword">inline</span> OutputIterator apply(Polygon <span class="keyword">const</span>& polygon,
-<a name="l00176"></a>00176                 Box <span class="keyword">const</span>& box, OutputIterator out)
-<a name="l00177"></a>00177     {
-<a name="l00178"></a>00178         <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">ggl::point_type<GeometryOut>::type</a> point_type;
-<a name="l00179"></a>00179         <span class="keyword">typedef</span> detail::intersection::intersection_point<point_type> ip_type;
-<a name="l00180"></a>00180         <span class="keyword">typedef</span> std::deque<ip_type> ips_container;
-<a name="l00181"></a>00181 
-<a name="l00182"></a>00182         <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1ring__type.html" title="Meta-function which defines ring type of (multi)polygon geometry.">ggl::ring_type<GeometryOut>::type</a> ring_type;
-<a name="l00183"></a>00183 
-<a name="l00184"></a>00184         ips_container ips;
-<a name="l00185"></a>00185 
-<a name="l00186"></a>00186         <span class="keywordtype">bool</span> trivial = <a class="code" href="group__overlay.html#g9b41efeface4cb10fbce39c8bcc8bec9" title="Calculate intersection points of two geometries.">ggl::get_intersection_points</a>(polygon, box, ips);
-<a name="l00187"></a>00187 
-<a name="l00188"></a>00188         <span class="comment">// TODO: share this all with polygon_polygon using an "assemble" function!</span>
-<a name="l00189"></a>00189         <span class="comment">// It is only different in the 'within' calls, can be sorted out with specialization</span>
+<a name="l00168"></a>00168 
+<a name="l00169"></a>00169 
+<a name="l00170"></a>00170 
+<a name="l00171"></a>00171 <span class="keyword">template</span>
+<a name="l00172"></a>00172 <
+<a name="l00173"></a>00173     <span class="keyword">typename</span> Polygon, <span class="keyword">typename</span> Box,
+<a name="l00174"></a>00174     <span class="keyword">typename</span> OutputIterator, <span class="keyword">typename</span> GeometryOut
+<a name="l00175"></a>00175 >
+<a name="l00176"></a>00176 <span class="keyword">struct </span>intersection_polygon_box
+<a name="l00177"></a>00177 {
+<a name="l00178"></a>00178     <span class="keyword">static</span> <span class="keyword">inline</span> OutputIterator apply(Polygon <span class="keyword">const</span>& polygon,
+<a name="l00179"></a>00179                 Box <span class="keyword">const</span>& box, OutputIterator out)
+<a name="l00180"></a>00180     {
+<a name="l00181"></a>00181         <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">ggl::point_type<GeometryOut>::type</a> point_type;
+<a name="l00182"></a>00182         <span class="keyword">typedef</span> detail::intersection::intersection_point<point_type> ip_type;
+<a name="l00183"></a>00183         <span class="keyword">typedef</span> std::deque<ip_type> ips_container;
+<a name="l00184"></a>00184 
+<a name="l00185"></a>00185         <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1ring__type.html" title="Meta-function which defines ring type of (multi)polygon geometry.">ggl::ring_type<GeometryOut>::type</a> ring_type;
+<a name="l00186"></a>00186 
+<a name="l00187"></a>00187         ips_container ips;
+<a name="l00188"></a>00188 
+<a name="l00189"></a>00189         <span class="keywordtype">bool</span> trivial = <a class="code" href="group__overlay.html#g9b41efeface4cb10fbce39c8bcc8bec9" title="Calculate intersection points of two geometries.">ggl::get_intersection_points</a>(polygon, box, ips);
 <a name="l00190"></a>00190 
-<a name="l00191"></a>00191 
-<a name="l00192"></a>00192         <span class="keywordflow">if</span> (ips.size() <= 0)
-<a name="l00193"></a>00193         {
-<a name="l00194"></a>00194             <span class="comment">// If there are no IP-s, check if one point is in other polygon</span>
-<a name="l00195"></a>00195             <span class="comment">// assume both polygons having points</span>
-<a name="l00196"></a>00196             <span class="keywordflow">if</span> (<a class="code" href="group__boolean__relations.html#g95d6465a12b762c77df41369a039f6dc" title="Within check.">ggl::within</a>(<a class="code" href="group__access.html#gf92470d0612da7f0e118d296e7fcfe01" title="Function to get the exterior_ring ring of a polygon.">ggl::exterior_ring</a>(polygon).front(), box))
-<a name="l00197"></a>00197             {
-<a name="l00198"></a>00198                 <span class="comment">// Assume same type (output = input)</span>
-<a name="l00199"></a>00199                 <span class="comment">// TODO: solve this (we go to specialize again...)</span>
-<a name="l00200"></a>00200                 *out = polygon;
-<a name="l00201"></a>00201                 out++;
-<a name="l00202"></a>00202             }
-<a name="l00203"></a>00203             <span class="keywordflow">else</span>
-<a name="l00204"></a>00204             {
-<a name="l00205"></a>00205                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">ggl::point_type<Box>::type</a> p;
-<a name="l00206"></a>00206                 ggl::set<0>(p, ggl::get<min_corner, 0>(box));
-<a name="l00207"></a>00207                 ggl::set<1>(p, ggl::get<min_corner, 1>(box));
-<a name="l00208"></a>00208                 <span class="keywordflow">if</span> (<a class="code" href="group__boolean__relations.html#g95d6465a12b762c77df41369a039f6dc" title="Within check.">ggl::within</a>(p, polygon))
-<a name="l00209"></a>00209                 {
-<a name="l00210"></a>00210                     GeometryOut boxpoly;
-<a name="l00211"></a>00211                     <a class="code" href="group__convert.html#ge07fa83176190049c856e35f77d0f569" title="Converts one geometry to another geometry.">ggl::convert</a>(box, boxpoly);
-<a name="l00212"></a>00212                     *out = boxpoly;
-<a name="l00213"></a>00213                     out++;
-<a name="l00214"></a>00214                 }
-<a name="l00215"></a>00215             }
-<a name="l00216"></a>00216         }
-<a name="l00217"></a>00217         <span class="keywordflow">else</span>
-<a name="l00218"></a>00218         {
-<a name="l00219"></a>00219             <span class="keywordflow">if</span> (trivial)
-<a name="l00220"></a>00220             {
-<a name="l00221"></a>00221                 <a class="code" href="group__overlay.html#gc1dcd7471f802810f7d48b36eea24d0f" title="Merges intersection points such that points at the same location will be merged,...">ggl::merge_intersection_points</a>(ips);
-<a name="l00222"></a>00222             }
-<a name="l00223"></a>00223 
-<a name="l00224"></a>00224             <a class="code" href="group__overlay.html#g379db9c2e9741b685302a21f86ea24f3" title="All intersection points are enriched with successor information.">ggl::enrich_intersection_points</a>(ips, trivial);
-<a name="l00225"></a>00225 
-<a name="l00226"></a>00226             std::vector<ring_type> v;
-<a name="l00227"></a>00227             ggl::traverse<ring_type>
-<a name="l00228"></a>00228                 (
-<a name="l00229"></a>00229                     polygon,
-<a name="l00230"></a>00230                     box,
-<a name="l00231"></a>00231                     -1,
-<a name="l00232"></a>00232                     ips,
-<a name="l00233"></a>00233                     trivial,
-<a name="l00234"></a>00234                     std::back_inserter(v)
-<a name="l00235"></a>00235                 );
-<a name="l00236"></a>00236 
-<a name="l00237"></a>00237             <span class="comment">// TODO:</span>
-<a name="l00238"></a>00238             <span class="comment">// assemble rings / inner rings / to polygons</span>
-<a name="l00239"></a>00239             <span class="keywordflow">for</span> (<span class="keyword">typename</span> std::vector<ring_type>::const_iterator it = v.begin();
-<a name="l00240"></a>00240                 it != v.end(); ++it)
-<a name="l00241"></a>00241             {
-<a name="l00242"></a>00242                 <span class="comment">// How can we avoid the double copy here! It is really bad!</span>
-<a name="l00243"></a>00243                 <span class="comment">// We have to create a polygon, then copy it to the output iterator.</span>
-<a name="l00244"></a>00244                 <span class="comment">// Having an output-vector would have been better: append it to the vector!</span>
-<a name="l00245"></a>00245                 <span class="comment">// So output iterators are not that good.</span>
-<a name="l00246"></a>00246                 GeometryOut poly;
-<a name="l00247"></a>00247                 poly.outer() = *it;
-<a name="l00248"></a>00248                 *out = poly;
-<a name="l00249"></a>00249                 out++;
-<a name="l00250"></a>00250             }
-<a name="l00251"></a>00251         }
-<a name="l00252"></a>00252 
-<a name="l00253"></a>00253 
-<a name="l00254"></a>00254         <span class="keywordflow">return</span> out;
-<a name="l00255"></a>00255     }
-<a name="l00256"></a>00256 };
-<a name="l00257"></a>00257 
-<a name="l00258"></a>00258 
-<a name="l00259"></a>00259 }} <span class="comment">// namespace detail::intersection</span>
-<a name="l00260"></a>00260 <span class="preprocessor">#endif // DOXYGEN_NO_DETAIL</span>
-<a name="l00261"></a>00261 <span class="preprocessor"></span>
-<a name="l00262"></a>00262 
-<a name="l00263"></a>00263 
-<a name="l00264"></a>00264 
+<a name="l00191"></a>00191         <span class="comment">// TODO: share this all with polygon_polygon using an "assemble" function!</span>
+<a name="l00192"></a>00192         <span class="comment">// It is only different in the 'within' calls, can be sorted out with specialization</span>
+<a name="l00193"></a>00193 
+<a name="l00194"></a>00194 
+<a name="l00195"></a>00195         <span class="keywordflow">if</span> (ips.size() <= 0)
+<a name="l00196"></a>00196         {
+<a name="l00197"></a>00197             <span class="comment">// If there are no IP-s, check if one point is in other polygon</span>
+<a name="l00198"></a>00198             <span class="comment">// assume both polygons having points</span>
+<a name="l00199"></a>00199             <span class="keywordflow">if</span> (<a class="code" href="group__boolean__relations.html#g95d6465a12b762c77df41369a039f6dc" title="Within check.">ggl::within</a>(<a class="code" href="group__access.html#gf92470d0612da7f0e118d296e7fcfe01" title="Function to get the exterior_ring ring of a polygon.">ggl::exterior_ring</a>(polygon).front(), box))
+<a name="l00200"></a>00200             {
+<a name="l00201"></a>00201                 <span class="comment">// Assume same type (output = input)</span>
+<a name="l00202"></a>00202                 <span class="comment">// TODO: solve this (we go to specialize again...)</span>
+<a name="l00203"></a>00203                 *out = polygon;
+<a name="l00204"></a>00204                 out++;
+<a name="l00205"></a>00205             }
+<a name="l00206"></a>00206             <span class="keywordflow">else</span>
+<a name="l00207"></a>00207             {
+<a name="l00208"></a>00208                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">ggl::point_type<Box>::type</a> p;
+<a name="l00209"></a>00209                 ggl::set<0>(p, ggl::get<min_corner, 0>(box));
+<a name="l00210"></a>00210                 ggl::set<1>(p, ggl::get<min_corner, 1>(box));
+<a name="l00211"></a>00211                 <span class="keywordflow">if</span> (<a class="code" href="group__boolean__relations.html#g95d6465a12b762c77df41369a039f6dc" title="Within check.">ggl::within</a>(p, polygon))
+<a name="l00212"></a>00212                 {
+<a name="l00213"></a>00213                     GeometryOut boxpoly;
+<a name="l00214"></a>00214                     <a class="code" href="group__convert.html#ge07fa83176190049c856e35f77d0f569" title="Converts one geometry to another geometry.">ggl::convert</a>(box, boxpoly);
+<a name="l00215"></a>00215                     *out = boxpoly;
+<a name="l00216"></a>00216                     out++;
+<a name="l00217"></a>00217                 }
+<a name="l00218"></a>00218             }
+<a name="l00219"></a>00219         }
+<a name="l00220"></a>00220         <span class="keywordflow">else</span>
+<a name="l00221"></a>00221         {
+<a name="l00222"></a>00222             <span class="keywordflow">if</span> (trivial)
+<a name="l00223"></a>00223             {
+<a name="l00224"></a>00224                 <a class="code" href="group__overlay.html#gc1dcd7471f802810f7d48b36eea24d0f" title="Merges intersection points such that points at the same location will be merged,...">ggl::merge_intersection_points</a>(ips);
+<a name="l00225"></a>00225             }
+<a name="l00226"></a>00226 
+<a name="l00227"></a>00227             <a class="code" href="group__overlay.html#g379db9c2e9741b685302a21f86ea24f3" title="All intersection points are enriched with successor information.">ggl::enrich_intersection_points</a>(ips, trivial);
+<a name="l00228"></a>00228 
+<a name="l00229"></a>00229             std::vector<ring_type> v;
+<a name="l00230"></a>00230             ggl::traverse<ring_type>
+<a name="l00231"></a>00231                 (
+<a name="l00232"></a>00232                     polygon,
+<a name="l00233"></a>00233                     box,
+<a name="l00234"></a>00234                     -1,
+<a name="l00235"></a>00235                     ips,
+<a name="l00236"></a>00236                     trivial,
+<a name="l00237"></a>00237                     std::back_inserter(v)
+<a name="l00238"></a>00238                 );
+<a name="l00239"></a>00239 
+<a name="l00240"></a>00240             <span class="comment">// TODO:</span>
+<a name="l00241"></a>00241             <span class="comment">// assemble rings / inner rings / to polygons</span>
+<a name="l00242"></a>00242             <span class="keywordflow">for</span> (<span class="keyword">typename</span> std::vector<ring_type>::const_iterator it = v.begin();
+<a name="l00243"></a>00243                 it != v.end(); ++it)
+<a name="l00244"></a>00244             {
+<a name="l00245"></a>00245                 <span class="comment">// How can we avoid the double copy here! It is really bad!</span>
+<a name="l00246"></a>00246                 <span class="comment">// We have to create a polygon, then copy it to the output iterator.</span>
+<a name="l00247"></a>00247                 <span class="comment">// Having an output-vector would have been better: append it to the vector!</span>
+<a name="l00248"></a>00248                 <span class="comment">// So output iterators are not that good.</span>
+<a name="l00249"></a>00249                 GeometryOut poly;
+<a name="l00250"></a>00250                 poly.outer() = *it;
+<a name="l00251"></a>00251                 *out = poly;
+<a name="l00252"></a>00252                 out++;
+<a name="l00253"></a>00253             }
+<a name="l00254"></a>00254         }
+<a name="l00255"></a>00255 
+<a name="l00256"></a>00256 
+<a name="l00257"></a>00257         <span class="keywordflow">return</span> out;
+<a name="l00258"></a>00258     }
+<a name="l00259"></a>00259 };
+<a name="l00260"></a>00260 
+<a name="l00261"></a>00261 
+<a name="l00262"></a>00262 }} <span class="comment">// namespace detail::intersection</span>
+<a name="l00263"></a>00263 <span class="preprocessor">#endif // DOXYGEN_NO_DETAIL</span>
+<a name="l00264"></a>00264 <span class="preprocessor"></span>
 <a name="l00265"></a>00265 
-<a name="l00266"></a>00266 <span class="preprocessor">#ifndef DOXYGEN_NO_DISPATCH</span>
-<a name="l00267"></a>00267 <span class="preprocessor"></span><span class="keyword">namespace </span>dispatch
-<a name="l00268"></a>00268 {
-<a name="l00269"></a>00269 
-<a name="l00270"></a>00270 <span class="keyword">template</span>
-<a name="l00271"></a>00271 <
-<a name="l00272"></a>00272     <span class="keyword">typename</span> Tag1, <span class="keyword">typename</span> Tag2, <span class="keyword">typename</span> Tag3,
-<a name="l00273"></a>00273     <span class="keyword">typename</span> G1, <span class="keyword">typename</span> G2,
-<a name="l00274"></a>00274     <span class="keyword">typename</span> OutputIterator,
-<a name="l00275"></a>00275     <span class="keyword">typename</span> GeometryOut
-<a name="l00276"></a>00276 >
-<a name="l00277"></a>00277 <span class="keyword">struct </span><a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a> {};
-<a name="l00278"></a>00278 
-<a name="l00279"></a>00279 
-<a name="l00280"></a>00280 <span class="keyword">template</span>
-<a name="l00281"></a>00281 <
-<a name="l00282"></a>00282     <span class="keyword">typename</span> Segment1, <span class="keyword">typename</span> Segment2,
-<a name="l00283"></a>00283     <span class="keyword">typename</span> OutputIterator, <span class="keyword">typename</span> GeometryOut
-<a name="l00284"></a>00284 >
-<a name="l00285"></a>00285 <span class="keyword">struct </span><a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a>
-<a name="l00286"></a>00286     <
-<a name="l00287"></a>00287         segment_tag, segment_tag, point_tag,
-<a name="l00288"></a>00288         Segment1, Segment2,
-<a name="l00289"></a>00289         OutputIterator, GeometryOut
-<a name="l00290"></a>00290     >
-<a name="l00291"></a>00291 {
-<a name="l00292"></a>00292     <span class="keyword">static</span> <span class="keyword">inline</span> OutputIterator apply(Segment1 <span class="keyword">const</span>& segment1,
-<a name="l00293"></a>00293             Segment2 <span class="keyword">const</span>& segment2, OutputIterator out)
-<a name="l00294"></a>00294     {
-<a name="l00295"></a>00295         <span class="keyword">typedef</span> <span class="keyword">typename</span> point_type<GeometryOut>::type point_type;
-<a name="l00296"></a>00296 
-<a name="l00297"></a>00297         <span class="comment">// Get the intersection point (or two points)</span>
-<a name="l00298"></a>00298         segment_intersection_points<point_type> is
-<a name="l00299"></a>00299             = strategy::intersection::relate_cartesian_segments
-<a name="l00300"></a>00300             <
-<a name="l00301"></a>00301                 policies::relate::segments_intersection_points
-<a name="l00302"></a>00302                     <
-<a name="l00303"></a>00303                         Segment1,
-<a name="l00304"></a>00304                         Segment2,
-<a name="l00305"></a>00305                         segment_intersection_points<point_type>
-<a name="l00306"></a>00306                     >
-<a name="l00307"></a>00307             >::relate(segment1, segment2);
-<a name="l00308"></a>00308         <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < is.count; i++)
-<a name="l00309"></a>00309         {
-<a name="l00310"></a>00310             GeometryOut p;
-<a name="l00311"></a>00311             <a class="code" href="namespaceggl.html#f8cee6dd577bebfd1dbbe4cc503304d4" title="Copies coordinates from source to destination point.">ggl::copy_coordinates</a>(is.intersections[i], p);
-<a name="l00312"></a>00312             *out = p;
-<a name="l00313"></a>00313             out++;
-<a name="l00314"></a>00314         }
-<a name="l00315"></a>00315         <span class="keywordflow">return</span> out;
-<a name="l00316"></a>00316     }
-<a name="l00317"></a>00317 };
-<a name="l00318"></a>00318 
-<a name="l00319"></a>00319 
-<a name="l00320"></a>00320 <span class="keyword">template</span>
-<a name="l00321"></a>00321 <
-<a name="l00322"></a>00322     <span class="keyword">typename</span> Linestring, <span class="keyword">typename</span> Box,
-<a name="l00323"></a>00323     <span class="keyword">typename</span> OutputIterator, <span class="keyword">typename</span> GeometryOut
-<a name="l00324"></a>00324 >
-<a name="l00325"></a>00325 <span class="keyword">struct </span><a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a>
-<a name="l00326"></a>00326     <
-<a name="l00327"></a>00327         linestring_tag, box_tag, linestring_tag,
-<a name="l00328"></a>00328         Linestring, Box,
-<a name="l00329"></a>00329         OutputIterator, GeometryOut
-<a name="l00330"></a>00330     >
-<a name="l00331"></a>00331 {
-<a name="l00332"></a>00332     <span class="keyword">static</span> <span class="keyword">inline</span> OutputIterator apply(Linestring <span class="keyword">const</span>& linestring,
-<a name="l00333"></a>00333             Box <span class="keyword">const</span>& box, OutputIterator out)
-<a name="l00334"></a>00334     {
-<a name="l00335"></a>00335         <span class="keyword">typedef</span> <span class="keyword">typename</span> point_type<GeometryOut>::type point_type;
-<a name="l00336"></a>00336         strategy::intersection::liang_barsky<Box, point_type> strategy;
-<a name="l00337"></a>00337         <span class="keywordflow">return</span> detail::intersection::clip_linestring_with_box<GeometryOut>(box, linestring, out, strategy);
-<a name="l00338"></a>00338     }
-<a name="l00339"></a>00339 };
-<a name="l00340"></a>00340 
-<a name="l00341"></a>00341 
-<a name="l00342"></a>00342 <span class="keyword">template</span>
-<a name="l00343"></a>00343 <
-<a name="l00344"></a>00344     <span class="keyword">typename</span> Polygon1, <span class="keyword">typename</span> Polygon2,
-<a name="l00345"></a>00345     <span class="keyword">typename</span> OutputIterator, <span class="keyword">typename</span> GeometryOut
-<a name="l00346"></a>00346 >
-<a name="l00347"></a>00347 <span class="keyword">struct </span><a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a>
-<a name="l00348"></a>00348     <
-<a name="l00349"></a>00349         polygon_tag, polygon_tag, polygon_tag,
-<a name="l00350"></a>00350         Polygon1, Polygon2,
-<a name="l00351"></a>00351         OutputIterator, GeometryOut
-<a name="l00352"></a>00352     >
-<a name="l00353"></a>00353     : detail::<a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a>::intersection_polygon_polygon
-<a name="l00354"></a>00354         <Polygon1, Polygon2, OutputIterator, GeometryOut>
-<a name="l00355"></a>00355 {};
-<a name="l00356"></a>00356 
-<a name="l00357"></a>00357 
-<a name="l00358"></a>00358 
-<a name="l00359"></a>00359 <span class="keyword">template</span>
-<a name="l00360"></a>00360 <
-<a name="l00361"></a>00361     <span class="keyword">typename</span> Polygon, <span class="keyword">typename</span> Box,
-<a name="l00362"></a>00362     <span class="keyword">typename</span> OutputIterator, <span class="keyword">typename</span> GeometryOut
-<a name="l00363"></a>00363 >
-<a name="l00364"></a>00364 <span class="keyword">struct </span><a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a>
-<a name="l00365"></a>00365 <
-<a name="l00366"></a>00366     polygon_tag, box_tag, polygon_tag,
-<a name="l00367"></a>00367     Polygon, Box,
-<a name="l00368"></a>00368     OutputIterator, GeometryOut
-<a name="l00369"></a>00369 >
-<a name="l00370"></a>00370     : detail::<a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a>::intersection_polygon_box
-<a name="l00371"></a>00371         <Polygon, Box, OutputIterator, GeometryOut>
-<a name="l00372"></a>00372 {};
-<a name="l00373"></a>00373 
-<a name="l00374"></a>00374 
-<a name="l00375"></a>00375 
-<a name="l00376"></a>00376 <span class="keyword">template</span>
-<a name="l00377"></a>00377 <
-<a name="l00378"></a>00378     <span class="keyword">typename</span> GeometryTag1, <span class="keyword">typename</span> GeometryTag2, <span class="keyword">typename</span> GeometryTag3,
-<a name="l00379"></a>00379     <span class="keyword">typename</span> G1, <span class="keyword">typename</span> G2,
-<a name="l00380"></a>00380     <span class="keyword">typename</span> OutputIterator, <span class="keyword">typename</span> GeometryOut
-<a name="l00381"></a>00381 >
-<a name="l00382"></a>00382 <span class="keyword">struct </span>intersection_reversed
-<a name="l00383"></a>00383 {
-<a name="l00384"></a>00384     <span class="keyword">static</span> <span class="keyword">inline</span> OutputIterator apply(G1 <span class="keyword">const</span>& g1, G2 <span class="keyword">const</span>& g2, OutputIterator out)
-<a name="l00385"></a>00385     {
-<a name="l00386"></a>00386         <span class="keywordflow">return</span> <a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a>
-<a name="l00387"></a>00387             <
-<a name="l00388"></a>00388                 GeometryTag2, GeometryTag1, GeometryTag3,
-<a name="l00389"></a>00389                 G2, G1,
-<a name="l00390"></a>00390                 OutputIterator, GeometryOut
-<a name="l00391"></a>00391             >::apply(g2, g1, out);
-<a name="l00392"></a>00392     }
-<a name="l00393"></a>00393 };
-<a name="l00394"></a>00394 
-<a name="l00395"></a>00395 
-<a name="l00396"></a>00396 
-<a name="l00397"></a>00397 } <span class="comment">// namespace dispatch</span>
-<a name="l00398"></a>00398 <span class="preprocessor">#endif // DOXYGEN_NO_DISPATCH</span>
-<a name="l00399"></a>00399 <span class="preprocessor"></span>
-<a name="l00417"></a>00417 <span class="keyword">template</span>
-<a name="l00418"></a>00418 <
-<a name="l00419"></a>00419     <span class="keyword">typename</span> GeometryOut,
-<a name="l00420"></a>00420     <span class="keyword">typename</span> Geometry1,
-<a name="l00421"></a>00421     <span class="keyword">typename</span> Geometry2,
-<a name="l00422"></a>00422     <span class="keyword">typename</span> OutputIterator
-<a name="l00423"></a>00423 >
-<a name="l00424"></a><a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5">00424</a> <span class="keyword">inline</span> OutputIterator <a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a>(Geometry1 <span class="keyword">const</span>& geometry1,
-<a name="l00425"></a>00425             Geometry2 <span class="keyword">const</span>& geometry2,
-<a name="l00426"></a>00426             OutputIterator out)
-<a name="l00427"></a>00427 {
-<a name="l00428"></a>00428 
-<a name="l00429"></a>00429     <span class="keywordflow">return</span> boost::mpl::if_c
-<a name="l00430"></a>00430         <
-<a name="l00431"></a>00431             <a class="code" href="structggl_1_1reverse__dispatch.html">reverse_dispatch<Geometry1, Geometry2>::type::value</a>,
-<a name="l00432"></a>00432             dispatch::intersection_reversed
-<a name="l00433"></a>00433             <
-<a name="l00434"></a>00434                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<Geometry1>::type</a>,
-<a name="l00435"></a>00435                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<Geometry2>::type</a>,
-<a name="l00436"></a>00436                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<GeometryOut>::type</a>,
-<a name="l00437"></a>00437                 Geometry1,
-<a name="l00438"></a>00438                 Geometry2,
-<a name="l00439"></a>00439                 OutputIterator, GeometryOut
-<a name="l00440"></a>00440             >,
-<a name="l00441"></a>00441             <a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">dispatch::intersection</a>
-<a name="l00442"></a>00442             <
-<a name="l00443"></a>00443                 <span class="keyword">typename</span> tag<Geometry1>::type,
-<a name="l00444"></a>00444                 <span class="keyword">typename</span> tag<Geometry2>::type,
-<a name="l00445"></a>00445                 <span class="keyword">typename</span> tag<GeometryOut>::type,
-<a name="l00446"></a>00446                 Geometry1,
-<a name="l00447"></a>00447                 Geometry2,
-<a name="l00448"></a>00448                 OutputIterator, GeometryOut
-<a name="l00449"></a>00449             >
-<a name="l00450"></a>00450         >::type::apply(geometry1, geometry2, out);
-<a name="l00451"></a>00451 }
-<a name="l00452"></a>00452 
-<a name="l00453"></a>00453 } <span class="comment">// ggl</span>
-<a name="l00454"></a>00454 
-<a name="l00455"></a>00455 <span class="preprocessor">#endif //GGL_ALGORITHMS_INTERSECTION_HPP</span>
+<a name="l00266"></a>00266 
+<a name="l00267"></a>00267 
+<a name="l00268"></a>00268 
+<a name="l00269"></a>00269 <span class="preprocessor">#ifndef DOXYGEN_NO_DISPATCH</span>
+<a name="l00270"></a>00270 <span class="preprocessor"></span><span class="keyword">namespace </span>dispatch
+<a name="l00271"></a>00271 {
+<a name="l00272"></a>00272 
+<a name="l00273"></a>00273 <span class="keyword">template</span>
+<a name="l00274"></a>00274 <
+<a name="l00275"></a>00275     <span class="keyword">typename</span> Tag1, <span class="keyword">typename</span> Tag2, <span class="keyword">typename</span> Tag3,
+<a name="l00276"></a>00276     <span class="keyword">typename</span> G1, <span class="keyword">typename</span> G2,
+<a name="l00277"></a>00277     <span class="keyword">typename</span> OutputIterator,
+<a name="l00278"></a>00278     <span class="keyword">typename</span> GeometryOut
+<a name="l00279"></a>00279 >
+<a name="l00280"></a>00280 <span class="keyword">struct </span><a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a> {};
+<a name="l00281"></a>00281 
+<a name="l00282"></a>00282 
+<a name="l00283"></a>00283 <span class="keyword">template</span>
+<a name="l00284"></a>00284 <
+<a name="l00285"></a>00285     <span class="keyword">typename</span> Segment1, <span class="keyword">typename</span> Segment2,
+<a name="l00286"></a>00286     <span class="keyword">typename</span> OutputIterator, <span class="keyword">typename</span> GeometryOut
+<a name="l00287"></a>00287 >
+<a name="l00288"></a>00288 <span class="keyword">struct </span><a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a>
+<a name="l00289"></a>00289     <
+<a name="l00290"></a>00290         segment_tag, segment_tag, point_tag,
+<a name="l00291"></a>00291         Segment1, Segment2,
+<a name="l00292"></a>00292         OutputIterator, GeometryOut
+<a name="l00293"></a>00293     >
+<a name="l00294"></a>00294 {
+<a name="l00295"></a>00295     <span class="keyword">static</span> <span class="keyword">inline</span> OutputIterator apply(Segment1 <span class="keyword">const</span>& segment1,
+<a name="l00296"></a>00296             Segment2 <span class="keyword">const</span>& segment2, OutputIterator out)
+<a name="l00297"></a>00297     {
+<a name="l00298"></a>00298         <span class="keyword">typedef</span> <span class="keyword">typename</span> point_type<GeometryOut>::type point_type;
+<a name="l00299"></a>00299 
+<a name="l00300"></a>00300         <span class="comment">// Get the intersection point (or two points)</span>
+<a name="l00301"></a>00301         segment_intersection_points<point_type> is
+<a name="l00302"></a>00302             = strategy::intersection::relate_cartesian_segments
+<a name="l00303"></a>00303             <
+<a name="l00304"></a>00304                 policies::relate::segments_intersection_points
+<a name="l00305"></a>00305                     <
+<a name="l00306"></a>00306                         Segment1,
+<a name="l00307"></a>00307                         Segment2,
+<a name="l00308"></a>00308                         segment_intersection_points<point_type>
+<a name="l00309"></a>00309                     >
+<a name="l00310"></a>00310             >::relate(segment1, segment2);
+<a name="l00311"></a>00311         <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < is.count; i++)
+<a name="l00312"></a>00312         {
+<a name="l00313"></a>00313             GeometryOut p;
+<a name="l00314"></a>00314             <a class="code" href="namespaceggl.html#f8cee6dd577bebfd1dbbe4cc503304d4" title="Copies coordinates from source to destination point.">ggl::copy_coordinates</a>(is.intersections[i], p);
+<a name="l00315"></a>00315             *out = p;
+<a name="l00316"></a>00316             out++;
+<a name="l00317"></a>00317         }
+<a name="l00318"></a>00318         <span class="keywordflow">return</span> out;
+<a name="l00319"></a>00319     }
+<a name="l00320"></a>00320 };
+<a name="l00321"></a>00321 
+<a name="l00322"></a>00322 
+<a name="l00323"></a>00323 <span class="keyword">template</span>
+<a name="l00324"></a>00324 <
+<a name="l00325"></a>00325     <span class="keyword">typename</span> Linestring, <span class="keyword">typename</span> Box,
+<a name="l00326"></a>00326     <span class="keyword">typename</span> OutputIterator, <span class="keyword">typename</span> GeometryOut
+<a name="l00327"></a>00327 >
+<a name="l00328"></a>00328 <span class="keyword">struct </span><a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a>
+<a name="l00329"></a>00329     <
+<a name="l00330"></a>00330         linestring_tag, box_tag, linestring_tag,
+<a name="l00331"></a>00331         Linestring, Box,
+<a name="l00332"></a>00332         OutputIterator, GeometryOut
+<a name="l00333"></a>00333     >
+<a name="l00334"></a>00334 {
+<a name="l00335"></a>00335     <span class="keyword">static</span> <span class="keyword">inline</span> OutputIterator apply(Linestring <span class="keyword">const</span>& linestring,
+<a name="l00336"></a>00336             Box <span class="keyword">const</span>& box, OutputIterator out)
+<a name="l00337"></a>00337     {
+<a name="l00338"></a>00338         <span class="keyword">typedef</span> <span class="keyword">typename</span> point_type<GeometryOut>::type point_type;
+<a name="l00339"></a>00339         strategy::intersection::liang_barsky<Box, point_type> strategy;
+<a name="l00340"></a>00340         <span class="keywordflow">return</span> detail::intersection::clip_linestring_with_box<GeometryOut>(box, linestring, out, strategy);
+<a name="l00341"></a>00341     }
+<a name="l00342"></a>00342 };
+<a name="l00343"></a>00343 
+<a name="l00344"></a>00344 
+<a name="l00345"></a>00345 <span class="keyword">template</span>
+<a name="l00346"></a>00346 <
+<a name="l00347"></a>00347     <span class="keyword">typename</span> Polygon1, <span class="keyword">typename</span> Polygon2,
+<a name="l00348"></a>00348     <span class="keyword">typename</span> OutputIterator, <span class="keyword">typename</span> GeometryOut
+<a name="l00349"></a>00349 >
+<a name="l00350"></a>00350 <span class="keyword">struct </span><a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a>
+<a name="l00351"></a>00351     <
+<a name="l00352"></a>00352         polygon_tag, polygon_tag, polygon_tag,
+<a name="l00353"></a>00353         Polygon1, Polygon2,
+<a name="l00354"></a>00354         OutputIterator, GeometryOut
+<a name="l00355"></a>00355     >
+<a name="l00356"></a>00356     : detail::<a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a>::intersection_polygon_polygon
+<a name="l00357"></a>00357         <Polygon1, Polygon2, OutputIterator, GeometryOut>
+<a name="l00358"></a>00358 {};
+<a name="l00359"></a>00359 
+<a name="l00360"></a>00360 
+<a name="l00361"></a>00361 
+<a name="l00362"></a>00362 <span class="keyword">template</span>
+<a name="l00363"></a>00363 <
+<a name="l00364"></a>00364     <span class="keyword">typename</span> Polygon, <span class="keyword">typename</span> Box,
+<a name="l00365"></a>00365     <span class="keyword">typename</span> OutputIterator, <span class="keyword">typename</span> GeometryOut
+<a name="l00366"></a>00366 >
+<a name="l00367"></a>00367 <span class="keyword">struct </span><a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a>
+<a name="l00368"></a>00368 <
+<a name="l00369"></a>00369     polygon_tag, box_tag, polygon_tag,
+<a name="l00370"></a>00370     Polygon, Box,
+<a name="l00371"></a>00371     OutputIterator, GeometryOut
+<a name="l00372"></a>00372 >
+<a name="l00373"></a>00373     : detail::<a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a>::intersection_polygon_box
+<a name="l00374"></a>00374         <Polygon, Box, OutputIterator, GeometryOut>
+<a name="l00375"></a>00375 {};
+<a name="l00376"></a>00376 
+<a name="l00377"></a>00377 
+<a name="l00378"></a>00378 
+<a name="l00379"></a>00379 <span class="keyword">template</span>
+<a name="l00380"></a>00380 <
+<a name="l00381"></a>00381     <span class="keyword">typename</span> GeometryTag1, <span class="keyword">typename</span> GeometryTag2, <span class="keyword">typename</span> GeometryTag3,
+<a name="l00382"></a>00382     <span class="keyword">typename</span> G1, <span class="keyword">typename</span> G2,
+<a name="l00383"></a>00383     <span class="keyword">typename</span> OutputIterator, <span class="keyword">typename</span> GeometryOut
+<a name="l00384"></a>00384 >
+<a name="l00385"></a>00385 <span class="keyword">struct </span>intersection_reversed
+<a name="l00386"></a>00386 {
+<a name="l00387"></a>00387     <span class="keyword">static</span> <span class="keyword">inline</span> OutputIterator apply(G1 <span class="keyword">const</span>& g1, G2 <span class="keyword">const</span>& g2, OutputIterator out)
+<a name="l00388"></a>00388     {
+<a name="l00389"></a>00389         <span class="keywordflow">return</span> <a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a>
+<a name="l00390"></a>00390             <
+<a name="l00391"></a>00391                 GeometryTag2, GeometryTag1, GeometryTag3,
+<a name="l00392"></a>00392                 G2, G1,
+<a name="l00393"></a>00393                 OutputIterator, GeometryOut
+<a name="l00394"></a>00394             >::apply(g2, g1, out);
+<a name="l00395"></a>00395     }
+<a name="l00396"></a>00396 };
+<a name="l00397"></a>00397 
+<a name="l00398"></a>00398 
+<a name="l00399"></a>00399 
+<a name="l00400"></a>00400 } <span class="comment">// namespace dispatch</span>
+<a name="l00401"></a>00401 <span class="preprocessor">#endif // DOXYGEN_NO_DISPATCH</span>
+<a name="l00402"></a>00402 <span class="preprocessor"></span>
+<a name="l00420"></a>00420 <span class="keyword">template</span>
+<a name="l00421"></a>00421 <
+<a name="l00422"></a>00422     <span class="keyword">typename</span> GeometryOut,
+<a name="l00423"></a>00423     <span class="keyword">typename</span> Geometry1,
+<a name="l00424"></a>00424     <span class="keyword">typename</span> Geometry2,
+<a name="l00425"></a>00425     <span class="keyword">typename</span> OutputIterator
+<a name="l00426"></a>00426 >
+<a name="l00427"></a><a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5">00427</a> <span class="keyword">inline</span> OutputIterator <a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a>(Geometry1 <span class="keyword">const</span>& geometry1,
+<a name="l00428"></a>00428             Geometry2 <span class="keyword">const</span>& geometry2,
+<a name="l00429"></a>00429             OutputIterator out)
+<a name="l00430"></a>00430 {
+<a name="l00431"></a>00431 
+<a name="l00432"></a>00432     <span class="keywordflow">return</span> boost::mpl::if_c
+<a name="l00433"></a>00433         <
+<a name="l00434"></a>00434             <a class="code" href="structggl_1_1reverse__dispatch.html">reverse_dispatch<Geometry1, Geometry2>::type::value</a>,
+<a name="l00435"></a>00435             dispatch::intersection_reversed
+<a name="l00436"></a>00436             <
+<a name="l00437"></a>00437                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<Geometry1>::type</a>,
+<a name="l00438"></a>00438                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<Geometry2>::type</a>,
+<a name="l00439"></a>00439                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<GeometryOut>::type</a>,
+<a name="l00440"></a>00440                 Geometry1,
+<a name="l00441"></a>00441                 Geometry2,
+<a name="l00442"></a>00442                 OutputIterator, GeometryOut
+<a name="l00443"></a>00443             >,
+<a name="l00444"></a>00444             <a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">dispatch::intersection</a>
+<a name="l00445"></a>00445             <
+<a name="l00446"></a>00446                 <span class="keyword">typename</span> tag<Geometry1>::type,
+<a name="l00447"></a>00447                 <span class="keyword">typename</span> tag<Geometry2>::type,
+<a name="l00448"></a>00448                 <span class="keyword">typename</span> tag<GeometryOut>::type,
+<a name="l00449"></a>00449                 Geometry1,
+<a name="l00450"></a>00450                 Geometry2,
+<a name="l00451"></a>00451                 OutputIterator, GeometryOut
+<a name="l00452"></a>00452             >
+<a name="l00453"></a>00453         >::type::apply(geometry1, geometry2, out);
+<a name="l00454"></a>00454 }
+<a name="l00455"></a>00455 
+<a name="l00456"></a>00456 } <span class="comment">// ggl</span>
+<a name="l00457"></a>00457 
+<a name="l00458"></a>00458 <span class="preprocessor">#endif //GGL_ALGORITHMS_INTERSECTION_HPP</span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2length_8hpp.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2length_8hpp.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2length_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -50,14 +50,14 @@
 <tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl.html">ggl</a></td></tr>
 
 <tr><td colspan="2"><br><h2>Functions</h2></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename G , typename S > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">double </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__length.html#ge20f9cdc37ebded2be03934edb05c3dd">ggl::length</a> (G const &geometry, S const &strategy)</td></tr>
+<tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry , typename Strategy > </td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">length_result< Geometry >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__length.html#gc25f493cf56a02b9f0077e18a444bed8">ggl::length</a> (Geometry const &geometry, Strategy const &strategy)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate length of a geometry.  <br></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename G > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">double </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa">ggl::length</a> (const G &geometry)</td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate length of a geometry.  <br></td></tr>
+<tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry > </td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">length_result< Geometry >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf">ggl::length</a> (Geometry const &geometry)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate length of a geometry.  <br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate length of a geometry.  <br></td></tr>
 </table>
 </div>
 <hr size="1">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2length_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2length_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2length_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -64,120 +64,135 @@
 <a name="l00022"></a>00022 <span class="preprocessor">#include <<a class="code" href="cs_8hpp.html">ggl/core/cs.hpp</a>></span>
 <a name="l00023"></a>00023 <span class="preprocessor">#include <<a class="code" href="point__concept_8hpp.html">ggl/core/concepts/point_concept.hpp</a>></span>
 <a name="l00024"></a>00024 <span class="preprocessor">#include <<a class="code" href="strategies_8hpp.html">ggl/strategies/strategies.hpp</a>></span>
-<a name="l00025"></a>00025 
-<a name="l00039"></a>00039 <span class="keyword">namespace </span>ggl
-<a name="l00040"></a>00040 {
-<a name="l00041"></a>00041 
-<a name="l00042"></a>00042 <span class="preprocessor">#ifndef DOXYGEN_NO_DETAIL</span>
-<a name="l00043"></a>00043 <span class="preprocessor"></span><span class="keyword">namespace </span>detail { <span class="keyword">namespace </span><a class="code" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa" title="Calculate length of a geometry.">length</a> {
+<a name="l00025"></a>00025 <span class="preprocessor">#include <<a class="code" href="length__result_8hpp.html">ggl/strategies/length_result.hpp</a>></span>
+<a name="l00026"></a>00026 
+<a name="l00040"></a>00040 <span class="keyword">namespace </span>ggl
+<a name="l00041"></a>00041 {
+<a name="l00042"></a>00042 
+<a name="l00043"></a>00043 
 <a name="l00044"></a>00044 
-<a name="l00045"></a>00045 
-<a name="l00046"></a>00046 <span class="keyword">template</span><<span class="keyword">typename</span> Segment, <span class="keyword">typename</span> Strategy>
-<a name="l00047"></a>00047 <span class="keyword">struct </span>segment_length
-<a name="l00048"></a>00048 {
-<a name="l00049"></a>00049     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">double</span> apply(Segment <span class="keyword">const</span>& segment, Strategy <span class="keyword">const</span>& strategy)
-<a name="l00050"></a>00050     {
-<a name="l00051"></a>00051         <span class="comment">// BSG 10 APR 2009</span>
-<a name="l00052"></a>00052         <span class="comment">// TODO: the segment concept has to be such that it is easy to return a point from it.</span>
-<a name="l00053"></a>00053         <span class="comment">// Now it only accesses per coordinate</span>
-<a name="l00054"></a>00054         <span class="keywordflow">return</span> strategy(segment.first, segment.second);
-<a name="l00055"></a>00055     }
-<a name="l00056"></a>00056 };
-<a name="l00057"></a>00057 
-<a name="l00062"></a>00062 <span class="keyword">template</span><<span class="keyword">typename</span> Range, <span class="keyword">typename</span> Strategy>
-<a name="l00063"></a>00063 <span class="keyword">struct </span>range_length
-<a name="l00064"></a>00064 {
-<a name="l00065"></a>00065     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">double</span> apply(Range <span class="keyword">const</span>& range, Strategy <span class="keyword">const</span>& strategy)
-<a name="l00066"></a>00066     {
-<a name="l00067"></a>00067         <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">ggl::coordinate_type<Range>::type</a> coordinate_type;
-<a name="l00068"></a>00068 
-<a name="l00069"></a>00069         <span class="comment">// Because result is square-rooted, for integer, the cast should</span>
-<a name="l00070"></a>00070         <span class="comment">// go to double and NOT to T</span>
-<a name="l00071"></a>00071         <span class="keyword">typedef</span> <span class="keyword">typename</span>
-<a name="l00072"></a>00072             boost::mpl::if_c
-<a name="l00073"></a>00073             <
-<a name="l00074"></a>00074                 boost::is_integral<coordinate_type>::type::value,
-<a name="l00075"></a>00075                 double,
-<a name="l00076"></a>00076                 coordinate_type
-<a name="l00077"></a>00077             >::type calculation_type;
-<a name="l00078"></a>00078 
-<a name="l00079"></a>00079         calculation_type sum = 0.0;
-<a name="l00080"></a>00080 
-<a name="l00081"></a>00081         <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::range_const_iterator<Range>::type iterator_type;
-<a name="l00082"></a>00082         iterator_type it = boost::begin(range);
-<a name="l00083"></a>00083         <span class="keywordflow">if</span> (it != boost::end(range))
-<a name="l00084"></a>00084         {
-<a name="l00085"></a>00085             iterator_type previous = it++;
-<a name="l00086"></a>00086             <span class="keywordflow">while</span>(it != boost::end(range))
-<a name="l00087"></a>00087             {
-<a name="l00088"></a>00088                 <span class="comment">// Add point-point distance using the return type belonging to strategy</span>
-<a name="l00089"></a>00089                 sum += strategy(*previous, *it);
-<a name="l00090"></a>00090                 previous = it++;
-<a name="l00091"></a>00091             }
-<a name="l00092"></a>00092         }
-<a name="l00093"></a>00093 
-<a name="l00094"></a>00094         <span class="keywordflow">return</span> sum;
-<a name="l00095"></a>00095     }
-<a name="l00096"></a>00096 };
-<a name="l00097"></a>00097 
-<a name="l00098"></a>00098 }} <span class="comment">// namespace detail::length</span>
-<a name="l00099"></a>00099 <span class="preprocessor">#endif // DOXYGEN_NO_DETAIL</span>
-<a name="l00100"></a>00100 <span class="preprocessor"></span>
-<a name="l00101"></a>00101 <span class="preprocessor">#ifndef DOXYGEN_NO_DISPATCH</span>
-<a name="l00102"></a>00102 <span class="preprocessor"></span><span class="keyword">namespace </span>dispatch
-<a name="l00103"></a>00103 {
-<a name="l00104"></a>00104 
-<a name="l00105"></a>00105 
-<a name="l00106"></a>00106 <span class="keyword">template</span> <<span class="keyword">typename</span> Tag, <span class="keyword">typename</span> G, <span class="keyword">typename</span> S>
-<a name="l00107"></a>00107 <span class="keyword">struct </span><a class="code" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa" title="Calculate length of a geometry.">length</a> : detail::calculate_null<double, G, S>
+<a name="l00045"></a>00045 <span class="preprocessor">#ifndef DOXYGEN_NO_DETAIL</span>
+<a name="l00046"></a>00046 <span class="preprocessor"></span><span class="keyword">namespace </span>detail { <span class="keyword">namespace </span><a class="code" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf" title="Calculate length of a geometry.">length</a> {
+<a name="l00047"></a>00047 
+<a name="l00048"></a>00048 
+<a name="l00049"></a>00049 <span class="keyword">template</span><<span class="keyword">typename</span> Segment, <span class="keyword">typename</span> Strategy>
+<a name="l00050"></a>00050 <span class="keyword">struct </span>segment_length
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keyword">typename</span> length_result<Segment>::type apply(
+<a name="l00053"></a>00053             Segment <span class="keyword">const</span>& segment, Strategy <span class="keyword">const</span>& strategy)
+<a name="l00054"></a>00054     {
+<a name="l00055"></a>00055         <span class="comment">// BSG 10 APR 2009</span>
+<a name="l00056"></a>00056         <span class="comment">// TODO: the segment concept has to be such that it is easy to return a point from it.</span>
+<a name="l00057"></a>00057         <span class="comment">// Now it only accesses per coordinate</span>
+<a name="l00058"></a>00058         <span class="keywordflow">return</span> strategy(segment.first, segment.second);
+<a name="l00059"></a>00059     }
+<a name="l00060"></a>00060 };
+<a name="l00061"></a>00061 
+<a name="l00066"></a>00066 <span class="keyword">template</span><<span class="keyword">typename</span> Range, <span class="keyword">typename</span> Strategy>
+<a name="l00067"></a>00067 <span class="keyword">struct </span>range_length
+<a name="l00068"></a>00068 {
+<a name="l00069"></a>00069     <span class="keyword">typedef</span> <span class="keyword">typename</span> length_result<Range>::type return_type;
+<a name="l00070"></a>00070 
+<a name="l00071"></a>00071     <span class="keyword">static</span> <span class="keyword">inline</span> return_type apply(
+<a name="l00072"></a>00072             Range <span class="keyword">const</span>& range, Strategy <span class="keyword">const</span>& strategy)
+<a name="l00073"></a>00073     {
+<a name="l00074"></a>00074         return_type sum = return_type();
+<a name="l00075"></a>00075 
+<a name="l00076"></a>00076         <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::range_const_iterator<Range>::type iterator_type;
+<a name="l00077"></a>00077         iterator_type it = boost::begin(range);
+<a name="l00078"></a>00078         <span class="keywordflow">if</span> (it != boost::end(range))
+<a name="l00079"></a>00079         {
+<a name="l00080"></a>00080             iterator_type previous = it++;
+<a name="l00081"></a>00081             <span class="keywordflow">while</span>(it != boost::end(range))
+<a name="l00082"></a>00082             {
+<a name="l00083"></a>00083                 <span class="comment">// Add point-point distance using the return type belonging to strategy</span>
+<a name="l00084"></a>00084                 sum += strategy(*previous, *it);
+<a name="l00085"></a>00085                 previous = it++;
+<a name="l00086"></a>00086             }
+<a name="l00087"></a>00087         }
+<a name="l00088"></a>00088 
+<a name="l00089"></a>00089         <span class="keywordflow">return</span> sum;
+<a name="l00090"></a>00090     }
+<a name="l00091"></a>00091 };
+<a name="l00092"></a>00092 
+<a name="l00093"></a>00093 }} <span class="comment">// namespace detail::length</span>
+<a name="l00094"></a>00094 <span class="preprocessor">#endif // DOXYGEN_NO_DETAIL</span>
+<a name="l00095"></a>00095 <span class="preprocessor"></span>
+<a name="l00096"></a>00096 <span class="preprocessor">#ifndef DOXYGEN_NO_DISPATCH</span>
+<a name="l00097"></a>00097 <span class="preprocessor"></span><span class="keyword">namespace </span>dispatch
+<a name="l00098"></a>00098 {
+<a name="l00099"></a>00099 
+<a name="l00100"></a>00100 
+<a name="l00101"></a>00101 <span class="keyword">template</span> <<span class="keyword">typename</span> Tag, <span class="keyword">typename</span> Geometry, <span class="keyword">typename</span> Strategy>
+<a name="l00102"></a>00102 <span class="keyword">struct </span><a class="code" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf" title="Calculate length of a geometry.">length</a> : detail::calculate_null
+<a name="l00103"></a>00103     <
+<a name="l00104"></a>00104         typename length_result<Geometry>::type, 
+<a name="l00105"></a>00105         Geometry, 
+<a name="l00106"></a>00106         Strategy
+<a name="l00107"></a>00107     >
 <a name="l00108"></a>00108 {};
 <a name="l00109"></a>00109 
 <a name="l00110"></a>00110 
-<a name="l00111"></a>00111 <span class="keyword">template</span> <<span class="keyword">typename</span> G, <span class="keyword">typename</span> S>
-<a name="l00112"></a>00112 <span class="keyword">struct </span><a class="code" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa" title="Calculate length of a geometry.">length</a><linestring_tag, G, S>
-<a name="l00113"></a>00113     : detail::<a class="code" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa" title="Calculate length of a geometry.">length</a>::range_length<G, S>
+<a name="l00111"></a>00111 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry, <span class="keyword">typename</span> Strategy>
+<a name="l00112"></a>00112 <span class="keyword">struct </span><a class="code" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf" title="Calculate length of a geometry.">length</a><linestring_tag, Geometry, Strategy>
+<a name="l00113"></a>00113     : detail::<a class="code" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf" title="Calculate length of a geometry.">length</a>::range_length<Geometry, Strategy>
 <a name="l00114"></a>00114 {};
 <a name="l00115"></a>00115 
 <a name="l00116"></a>00116 
 <a name="l00117"></a>00117 <span class="comment">// RING: length is currently 0.0 but it might be argued that it is the "perimeter"</span>
-<a name="l00118"></a>00118 <span class="keyword">template</span> <<span class="keyword">typename</span> G, <span class="keyword">typename</span> S>
-<a name="l00119"></a>00119 <span class="keyword">struct </span><a class="code" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa" title="Calculate length of a geometry.">length</a><segment_tag, G, S> : detail::<a class="code" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa" title="Calculate length of a geometry.">length</a>::segment_length<G, S>
-<a name="l00120"></a>00120 {};
-<a name="l00121"></a>00121 
-<a name="l00122"></a>00122 
-<a name="l00123"></a>00123 } <span class="comment">// namespace dispatch</span>
-<a name="l00124"></a>00124 <span class="preprocessor">#endif // DOXYGEN_NO_DISPATCH</span>
-<a name="l00125"></a>00125 <span class="preprocessor"></span>
-<a name="l00138"></a>00138 <span class="keyword">template</span><<span class="keyword">typename</span> G>
-<a name="l00139"></a><a class="code" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa">00139</a> <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa" title="Calculate length of a geometry.">length</a>(<span class="keyword">const</span> G& geometry)
-<a name="l00140"></a>00140 {
-<a name="l00141"></a>00141     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type<G>::type</a> <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type</a>;
-<a name="l00142"></a>00142     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1cs__tag.html" title="Meta-function returning coordinate system tag (cs family) of any geometry.">cs_tag<point_type>::type</a> <a class="code" href="structggl_1_1cs__tag.html" title="Meta-function returning coordinate system tag (cs family) of any geometry.">cs_tag</a>;
-<a name="l00143"></a>00143     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1strategy__distance.html" title="Traits class binding a distance strategy to a (possibly two) coordinate system(s)...">strategy_distance</a>
-<a name="l00144"></a>00144         <
-<a name="l00145"></a>00145             cs_tag,
-<a name="l00146"></a>00146             cs_tag,
-<a name="l00147"></a>00147             point_type,
-<a name="l00148"></a>00148             point_type
-<a name="l00149"></a>00149         >::type strategy_type;
-<a name="l00150"></a>00150 
-<a name="l00151"></a>00151     <span class="keywordflow">return</span> <a class="code" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa" title="Calculate length of a geometry.">dispatch::length</a>
-<a name="l00152"></a>00152         <
-<a name="l00153"></a>00153             <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<G>::type</a>,
-<a name="l00154"></a>00154             G,
-<a name="l00155"></a>00155             strategy_type
-<a name="l00156"></a>00156         >::apply(geometry, strategy_type());
-<a name="l00157"></a>00157 }
-<a name="l00158"></a>00158 
-<a name="l00173"></a>00173 <span class="keyword">template</span><<span class="keyword">typename</span> G, <span class="keyword">typename</span> S>
-<a name="l00174"></a><a class="code" href="group__length.html#ge20f9cdc37ebded2be03934edb05c3dd">00174</a> <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa" title="Calculate length of a geometry.">length</a>(G <span class="keyword">const</span>& geometry, S <span class="keyword">const</span>& strategy)
-<a name="l00175"></a>00175 {
-<a name="l00176"></a>00176     <span class="keywordflow">return</span> dispatch::length<typename tag<G>::type, G, S>::apply(geometry, strategy);
-<a name="l00177"></a>00177 }
-<a name="l00178"></a>00178 
-<a name="l00179"></a>00179 } <span class="comment">// namespace ggl</span>
-<a name="l00180"></a>00180 
-<a name="l00181"></a>00181 <span class="preprocessor">#endif // GGL_ALGORITHMS_LENGTH_HPP</span>
+<a name="l00118"></a>00118 
+<a name="l00119"></a>00119 
+<a name="l00120"></a>00120 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry, <span class="keyword">typename</span> Strategy>
+<a name="l00121"></a>00121 <span class="keyword">struct </span><a class="code" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf" title="Calculate length of a geometry.">length</a><segment_tag, Geometry, Strategy> 
+<a name="l00122"></a>00122     : detail::<a class="code" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf" title="Calculate length of a geometry.">length</a>::segment_length<Geometry, Strategy>
+<a name="l00123"></a>00123 {};
+<a name="l00124"></a>00124 
+<a name="l00125"></a>00125 
+<a name="l00126"></a>00126 } <span class="comment">// namespace dispatch</span>
+<a name="l00127"></a>00127 <span class="preprocessor">#endif // DOXYGEN_NO_DISPATCH</span>
+<a name="l00128"></a>00128 <span class="preprocessor"></span>
+<a name="l00129"></a>00129 
+<a name="l00130"></a>00130 
+<a name="l00131"></a>00131 
+<a name="l00132"></a>00132 
+<a name="l00133"></a>00133 
+<a name="l00146"></a>00146 <span class="keyword">template</span><<span class="keyword">typename</span> Geometry>
+<a name="l00147"></a><a class="code" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf">00147</a> <span class="keyword">inline</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1length__result.html" title="Meta-function defining return type of length function.">length_result<Geometry>::type</a> <a class="code" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf" title="Calculate length of a geometry.">length</a>(
+<a name="l00148"></a>00148         Geometry <span class="keyword">const</span>& geometry)
+<a name="l00149"></a>00149 {
+<a name="l00150"></a>00150     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type<Geometry>::type</a> <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type</a>;
+<a name="l00151"></a>00151     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1cs__tag.html" title="Meta-function returning coordinate system tag (cs family) of any geometry.">cs_tag<point_type>::type</a> <a class="code" href="structggl_1_1cs__tag.html" title="Meta-function returning coordinate system tag (cs family) of any geometry.">cs_tag</a>;
+<a name="l00152"></a>00152     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1strategy__distance.html" title="Traits class binding a distance strategy to a (possibly two) coordinate system(s)...">strategy_distance</a>
+<a name="l00153"></a>00153         <
+<a name="l00154"></a>00154             cs_tag,
+<a name="l00155"></a>00155             cs_tag,
+<a name="l00156"></a>00156             point_type,
+<a name="l00157"></a>00157             point_type
+<a name="l00158"></a>00158         >::type strategy_type;
+<a name="l00159"></a>00159 
+<a name="l00160"></a>00160     <span class="keywordflow">return</span> <a class="code" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf" title="Calculate length of a geometry.">dispatch::length</a>
+<a name="l00161"></a>00161         <
+<a name="l00162"></a>00162             <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<Geometry>::type</a>,
+<a name="l00163"></a>00163             Geometry,
+<a name="l00164"></a>00164             strategy_type
+<a name="l00165"></a>00165         >::apply(geometry, strategy_type());
+<a name="l00166"></a>00166 }
+<a name="l00167"></a>00167 
+<a name="l00182"></a>00182 <span class="keyword">template</span><<span class="keyword">typename</span> Geometry, <span class="keyword">typename</span> Strategy>
+<a name="l00183"></a><a class="code" href="group__length.html#gc25f493cf56a02b9f0077e18a444bed8">00183</a> <span class="keyword">inline</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1length__result.html" title="Meta-function defining return type of length function.">length_result<Geometry>::type</a> <a class="code" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf" title="Calculate length of a geometry.">length</a>(
+<a name="l00184"></a>00184         Geometry <span class="keyword">const</span>& geometry, Strategy <span class="keyword">const</span>& strategy)
+<a name="l00185"></a>00185 {
+<a name="l00186"></a>00186     <span class="keywordflow">return</span> <a class="code" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf" title="Calculate length of a geometry.">dispatch::length</a>
+<a name="l00187"></a>00187         <   
+<a name="l00188"></a>00188             <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<Geometry>::type</a>, 
+<a name="l00189"></a>00189             Geometry, 
+<a name="l00190"></a>00190             Strategy
+<a name="l00191"></a>00191         >::apply(geometry, strategy);
+<a name="l00192"></a>00192 }
+<a name="l00193"></a>00193 
+<a name="l00194"></a>00194 } <span class="comment">// namespace ggl</span>
+<a name="l00195"></a>00195 
+<a name="l00196"></a>00196 <span class="preprocessor">#endif // GGL_ALGORITHMS_LENGTH_HPP</span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2perimeter_8hpp.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2perimeter_8hpp.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2perimeter_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -51,13 +51,13 @@
 
 <tr><td colspan="2"><br><h2>Functions</h2></td></tr>
 <tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry , typename Strategy > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">double </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__perimeter.html#g840995936a96075829b48a29a4a33b19">ggl::perimeter</a> (Geometry const &geometry, Strategy const &strategy)</td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">length_result< Geometry >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__perimeter.html#g78c3f8a2c3eed80533521425079cdf55">ggl::perimeter</a> (Geometry const &geometry, Strategy const &strategy)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate perimeter of a geometry.  <br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate perimeter of a geometry.  <br></td></tr>
 <tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">double </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__perimeter.html#g7d52bc6ace3c3dbc9bdac84e6f0076ba">ggl::perimeter</a> (Geometry const &geometry)</td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">length_result< Geometry >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__perimeter.html#g02588697f4c401400c3007d3ff091df9">ggl::perimeter</a> (Geometry const &geometry)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate perimeter of a geometry.  <br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate perimeter of a geometry.  <br></td></tr>
 </table>
 </div>
 <hr size="1">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2perimeter_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2perimeter_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2perimeter_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -57,110 +57,97 @@
 <a name="l00015"></a>00015 <span class="preprocessor">#include <boost/range/functions.hpp></span>
 <a name="l00016"></a>00016 <span class="preprocessor">#include <boost/range/metafunctions.hpp></span>
 <a name="l00017"></a>00017 
-<a name="l00018"></a>00018 <span class="preprocessor">#include <<a class="code" href="algorithms_2length_8hpp.html">ggl/algorithms/length.hpp</a>></span>
-<a name="l00019"></a>00019 <span class="preprocessor">#include <<a class="code" href="cs_8hpp.html">ggl/core/cs.hpp</a>></span>
-<a name="l00020"></a>00020 <span class="preprocessor">#include <<a class="code" href="point__concept_8hpp.html">ggl/core/concepts/point_concept.hpp</a>></span>
-<a name="l00021"></a>00021 <span class="preprocessor">#include <<a class="code" href="strategies_8hpp.html">ggl/strategies/strategies.hpp</a>></span>
+<a name="l00018"></a>00018 <span class="preprocessor">#include <<a class="code" href="cs_8hpp.html">ggl/core/cs.hpp</a>></span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include <<a class="code" href="point__concept_8hpp.html">ggl/core/concepts/point_concept.hpp</a>></span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include <<a class="code" href="strategies_8hpp.html">ggl/strategies/strategies.hpp</a>></span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include <<a class="code" href="length__result_8hpp.html">ggl/strategies/length_result.hpp</a>></span>
 <a name="l00022"></a>00022 
-<a name="l00028"></a>00028 <span class="keyword">namespace </span>ggl
-<a name="l00029"></a>00029 {
-<a name="l00030"></a>00030 
-<a name="l00031"></a>00031 <span class="preprocessor">#ifndef DOXYGEN_NO_DETAIL</span>
-<a name="l00032"></a>00032 <span class="preprocessor"></span><span class="keyword">namespace </span>detail { <span class="keyword">namespace </span><a class="code" href="group__perimeter.html#g7d52bc6ace3c3dbc9bdac84e6f0076ba" title="Calculate perimeter of a geometry.">perimeter</a> {
-<a name="l00033"></a>00033 
-<a name="l00034"></a>00034 <span class="keyword">template</span><<span class="keyword">typename</span> R, <span class="keyword">typename</span> S>
-<a name="l00035"></a>00035 <span class="keyword">struct </span>range_perimeter : detail::<a class="code" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa" title="Calculate length of a geometry.">length</a>::range_length<R, S>
-<a name="l00036"></a>00036 {
-<a name="l00037"></a>00037 };
-<a name="l00038"></a>00038 
-<a name="l00039"></a>00039 <span class="comment">// might be merged with "range_area" with policy to sum/subtract interior rings</span>
-<a name="l00040"></a>00040 <span class="keyword">template</span><<span class="keyword">typename</span> Polygon, <span class="keyword">typename</span> S>
-<a name="l00041"></a>00041 <span class="keyword">struct </span>polygon_perimeter
-<a name="l00042"></a>00042 {
-<a name="l00043"></a>00043     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">double</span> apply(Polygon <span class="keyword">const</span>& poly, S <span class="keyword">const</span>& strategy)
-<a name="l00044"></a>00044     {
-<a name="l00045"></a>00045         <span class="keyword">typedef</span> <span class="keyword">typename</span> ring_type<Polygon>::type ring_type;
-<a name="l00046"></a>00046         <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::range_const_iterator
-<a name="l00047"></a>00047             <
-<a name="l00048"></a>00048             <span class="keyword">typename</span> interior_type<Polygon>::type
-<a name="l00049"></a>00049             >::type iterator_type;
-<a name="l00050"></a>00050 
-<a name="l00051"></a>00051         <span class="keywordtype">double</span> sum = std::abs(range_perimeter<ring_type, S>::apply(<a class="code" href="group__access.html#gf92470d0612da7f0e118d296e7fcfe01" title="Function to get the exterior_ring ring of a polygon.">exterior_ring</a>(poly), strategy));
-<a name="l00052"></a>00052 
-<a name="l00053"></a>00053         <span class="keywordflow">for</span> (iterator_type it = boost::begin(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly));
-<a name="l00054"></a>00054              it != boost::end(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly)); it++)
-<a name="l00055"></a>00055         {
-<a name="l00056"></a>00056             sum += std::abs(range_perimeter<ring_type, S>::apply(*it, strategy));
-<a name="l00057"></a>00057         }
-<a name="l00058"></a>00058         <span class="keywordflow">return</span> sum;
-<a name="l00059"></a>00059     }
-<a name="l00060"></a>00060 };
-<a name="l00061"></a>00061 
-<a name="l00062"></a>00062 }} <span class="comment">// namespace detail:;perimeter</span>
-<a name="l00063"></a>00063 <span class="preprocessor">#endif // DOXYGEN_NO_DETAIL</span>
-<a name="l00064"></a>00064 <span class="preprocessor"></span>
-<a name="l00065"></a>00065 
-<a name="l00066"></a>00066 <span class="preprocessor">#ifndef DOXYGEN_NO_DISPATCH</span>
-<a name="l00067"></a>00067 <span class="preprocessor"></span><span class="keyword">namespace </span>dispatch
-<a name="l00068"></a>00068 {
+<a name="l00023"></a>00023 <span class="preprocessor">#include <<a class="code" href="algorithms_2length_8hpp.html">ggl/algorithms/length.hpp</a>></span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include <<a class="code" href="calculate__null_8hpp.html">ggl/algorithms/detail/calculate_null.hpp</a>></span>
+<a name="l00025"></a>00025 <span class="preprocessor">#include <<a class="code" href="calculate__sum_8hpp.html">ggl/algorithms/detail/calculate_sum.hpp</a>></span>
+<a name="l00026"></a>00026 
+<a name="l00027"></a>00027 
+<a name="l00033"></a>00033 <span class="keyword">namespace </span>ggl
+<a name="l00034"></a>00034 {
+<a name="l00035"></a>00035 
+<a name="l00036"></a>00036 <span class="preprocessor">#ifndef DOXYGEN_NO_DISPATCH</span>
+<a name="l00037"></a>00037 <span class="preprocessor"></span><span class="keyword">namespace </span>dispatch
+<a name="l00038"></a>00038 {
+<a name="l00039"></a>00039 
+<a name="l00040"></a>00040 <span class="comment">// Default perimeter is 0.0, specializations implement calculated values</span>
+<a name="l00041"></a>00041 <span class="keyword">template</span> <<span class="keyword">typename</span> Tag, <span class="keyword">typename</span> Geometry, <span class="keyword">typename</span> Strategy>
+<a name="l00042"></a>00042 <span class="keyword">struct </span><a class="code" href="group__perimeter.html#g02588697f4c401400c3007d3ff091df9" title="Calculate perimeter of a geometry.">perimeter</a> : detail::calculate_null
+<a name="l00043"></a>00043     <
+<a name="l00044"></a>00044         typename length_result<Geometry>::type, 
+<a name="l00045"></a>00045         Geometry, 
+<a name="l00046"></a>00046         Strategy
+<a name="l00047"></a>00047     >
+<a name="l00048"></a>00048 {};
+<a name="l00049"></a>00049 
+<a name="l00050"></a>00050 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry, <span class="keyword">typename</span> Strategy>
+<a name="l00051"></a>00051 <span class="keyword">struct </span><a class="code" href="group__perimeter.html#g02588697f4c401400c3007d3ff091df9" title="Calculate perimeter of a geometry.">perimeter</a><ring_tag, Geometry, Strategy>
+<a name="l00052"></a>00052     : detail::<a class="code" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf" title="Calculate length of a geometry.">length</a>::range_length<Geometry, Strategy>
+<a name="l00053"></a>00053 {};
+<a name="l00054"></a>00054 
+<a name="l00055"></a>00055 <span class="keyword">template</span> <<span class="keyword">typename</span> Polygon, <span class="keyword">typename</span> Strategy>
+<a name="l00056"></a>00056 <span class="keyword">struct </span><a class="code" href="group__perimeter.html#g02588697f4c401400c3007d3ff091df9" title="Calculate perimeter of a geometry.">perimeter</a><polygon_tag, Polygon, Strategy>
+<a name="l00057"></a>00057     : detail::calculate_polygon_sum
+<a name="l00058"></a>00058         <
+<a name="l00059"></a>00059             typename length_result<Polygon>::type,
+<a name="l00060"></a>00060             Polygon, 
+<a name="l00061"></a>00061             Strategy, 
+<a name="l00062"></a>00062             detail::length::range_length
+<a name="l00063"></a>00063                 <
+<a name="l00064"></a>00064                     typename ring_type<Polygon>::type, 
+<a name="l00065"></a>00065                     Strategy
+<a name="l00066"></a>00066                 >
+<a name="l00067"></a>00067         >
+<a name="l00068"></a>00068 {};
 <a name="l00069"></a>00069 
-<a name="l00070"></a>00070 <span class="comment">// Default perimeter is 0.0, specializations implement calculated values</span>
-<a name="l00071"></a>00071 <span class="keyword">template</span> <<span class="keyword">typename</span> Tag, <span class="keyword">typename</span> Geometry, <span class="keyword">typename</span> Strategy>
-<a name="l00072"></a>00072 <span class="keyword">struct </span><a class="code" href="group__perimeter.html#g7d52bc6ace3c3dbc9bdac84e6f0076ba" title="Calculate perimeter of a geometry.">perimeter</a> : detail::calculate_null<double, Geometry, Strategy>
-<a name="l00073"></a>00073 {};
-<a name="l00074"></a>00074 
-<a name="l00075"></a>00075 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry, <span class="keyword">typename</span> Strategy>
-<a name="l00076"></a>00076 <span class="keyword">struct </span><a class="code" href="group__perimeter.html#g7d52bc6ace3c3dbc9bdac84e6f0076ba" title="Calculate perimeter of a geometry.">perimeter</a><ring_tag, Geometry, Strategy>
-<a name="l00077"></a>00077     : detail::<a class="code" href="group__perimeter.html#g7d52bc6ace3c3dbc9bdac84e6f0076ba" title="Calculate perimeter of a geometry.">perimeter</a>::range_perimeter<Geometry, Strategy>
-<a name="l00078"></a>00078 {};
-<a name="l00079"></a>00079 
-<a name="l00080"></a>00080 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry, <span class="keyword">typename</span> Strategy>
-<a name="l00081"></a>00081 <span class="keyword">struct </span><a class="code" href="group__perimeter.html#g7d52bc6ace3c3dbc9bdac84e6f0076ba" title="Calculate perimeter of a geometry.">perimeter</a><polygon_tag, Geometry, Strategy>
-<a name="l00082"></a>00082     : detail::<a class="code" href="group__perimeter.html#g7d52bc6ace3c3dbc9bdac84e6f0076ba" title="Calculate perimeter of a geometry.">perimeter</a>::polygon_perimeter<Geometry, Strategy>
-<a name="l00083"></a>00083 {};
-<a name="l00084"></a>00084 
-<a name="l00085"></a>00085 
-<a name="l00086"></a>00086 <span class="comment">// box,n-sphere: to be implemented</span>
-<a name="l00087"></a>00087 
-<a name="l00088"></a>00088 } <span class="comment">// namespace dispatch</span>
-<a name="l00089"></a>00089 <span class="preprocessor">#endif // DOXYGEN_NO_DISPATCH</span>
-<a name="l00090"></a>00090 <span class="preprocessor"></span>
-<a name="l00091"></a>00091 
-<a name="l00099"></a>00099 <span class="keyword">template</span><<span class="keyword">typename</span> Geometry>
-<a name="l00100"></a><a class="code" href="group__perimeter.html#g7d52bc6ace3c3dbc9bdac84e6f0076ba">00100</a> <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="group__perimeter.html#g7d52bc6ace3c3dbc9bdac84e6f0076ba" title="Calculate perimeter of a geometry.">perimeter</a>(Geometry <span class="keyword">const</span>& geometry)
-<a name="l00101"></a>00101 {
-<a name="l00102"></a>00102     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type<Geometry>::type</a> <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type</a>;
-<a name="l00103"></a>00103     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1cs__tag.html" title="Meta-function returning coordinate system tag (cs family) of any geometry.">cs_tag<point_type>::type</a> <a class="code" href="structggl_1_1cs__tag.html" title="Meta-function returning coordinate system tag (cs family) of any geometry.">cs_tag</a>;
-<a name="l00104"></a>00104     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1strategy__distance.html" title="Traits class binding a distance strategy to a (possibly two) coordinate system(s)...">strategy_distance</a>
-<a name="l00105"></a>00105         <
-<a name="l00106"></a>00106             cs_tag,
-<a name="l00107"></a>00107             cs_tag,
-<a name="l00108"></a>00108             point_type,
-<a name="l00109"></a>00109             point_type
-<a name="l00110"></a>00110         >::type strategy_type;
-<a name="l00111"></a>00111 
-<a name="l00112"></a>00112     <span class="keywordflow">return</span> <a class="code" href="group__perimeter.html#g7d52bc6ace3c3dbc9bdac84e6f0076ba" title="Calculate perimeter of a geometry.">dispatch::perimeter</a>
-<a name="l00113"></a>00113         <
-<a name="l00114"></a>00114             <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<Geometry>::type</a>,
-<a name="l00115"></a>00115             Geometry,
-<a name="l00116"></a>00116             strategy_type
-<a name="l00117"></a>00117         >::apply(geometry, strategy_type());
-<a name="l00118"></a>00118 }
-<a name="l00119"></a>00119 
-<a name="l00128"></a>00128 <span class="keyword">template</span><<span class="keyword">typename</span> Geometry, <span class="keyword">typename</span> Strategy>
-<a name="l00129"></a><a class="code" href="group__perimeter.html#g840995936a96075829b48a29a4a33b19">00129</a> <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="group__perimeter.html#g7d52bc6ace3c3dbc9bdac84e6f0076ba" title="Calculate perimeter of a geometry.">perimeter</a>(Geometry <span class="keyword">const</span>& geometry, Strategy <span class="keyword">const</span>& strategy)
-<a name="l00130"></a>00130 {
-<a name="l00131"></a>00131     <span class="keywordflow">return</span> <a class="code" href="group__perimeter.html#g7d52bc6ace3c3dbc9bdac84e6f0076ba" title="Calculate perimeter of a geometry.">dispatch::perimeter</a>
-<a name="l00132"></a>00132         <
-<a name="l00133"></a>00133             <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<Geometry>::type</a>,
-<a name="l00134"></a>00134             Geometry,
-<a name="l00135"></a>00135             Strategy
-<a name="l00136"></a>00136         >::apply(geometry, strategy);
-<a name="l00137"></a>00137 }
-<a name="l00138"></a>00138 
-<a name="l00139"></a>00139 } <span class="comment">// namespace ggl</span>
-<a name="l00140"></a>00140 
-<a name="l00141"></a>00141 <span class="preprocessor">#endif // GGL_ALGORITHMS_PERIMETER_HPP</span>
+<a name="l00070"></a>00070 
+<a name="l00071"></a>00071 <span class="comment">// box,n-sphere: to be implemented</span>
+<a name="l00072"></a>00072 
+<a name="l00073"></a>00073 } <span class="comment">// namespace dispatch</span>
+<a name="l00074"></a>00074 <span class="preprocessor">#endif // DOXYGEN_NO_DISPATCH</span>
+<a name="l00075"></a>00075 <span class="preprocessor"></span>
+<a name="l00076"></a>00076 
+<a name="l00084"></a>00084 <span class="keyword">template</span><<span class="keyword">typename</span> Geometry>
+<a name="l00085"></a><a class="code" href="group__perimeter.html#g02588697f4c401400c3007d3ff091df9">00085</a> <span class="keyword">inline</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1length__result.html" title="Meta-function defining return type of length function.">length_result<Geometry>::type</a> <a class="code" href="group__perimeter.html#g02588697f4c401400c3007d3ff091df9" title="Calculate perimeter of a geometry.">perimeter</a>(
+<a name="l00086"></a>00086         Geometry <span class="keyword">const</span>& geometry)
+<a name="l00087"></a>00087 {
+<a name="l00088"></a>00088     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type<Geometry>::type</a> <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type</a>;
+<a name="l00089"></a>00089     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1cs__tag.html" title="Meta-function returning coordinate system tag (cs family) of any geometry.">cs_tag<point_type>::type</a> <a class="code" href="structggl_1_1cs__tag.html" title="Meta-function returning coordinate system tag (cs family) of any geometry.">cs_tag</a>;
+<a name="l00090"></a>00090     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1strategy__distance.html" title="Traits class binding a distance strategy to a (possibly two) coordinate system(s)...">strategy_distance</a>
+<a name="l00091"></a>00091         <
+<a name="l00092"></a>00092             cs_tag,
+<a name="l00093"></a>00093             cs_tag,
+<a name="l00094"></a>00094             point_type,
+<a name="l00095"></a>00095             point_type
+<a name="l00096"></a>00096         >::type strategy_type;
+<a name="l00097"></a>00097 
+<a name="l00098"></a>00098     <span class="keywordflow">return</span> <a class="code" href="group__perimeter.html#g02588697f4c401400c3007d3ff091df9" title="Calculate perimeter of a geometry.">dispatch::perimeter</a>
+<a name="l00099"></a>00099         <
+<a name="l00100"></a>00100             <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<Geometry>::type</a>,
+<a name="l00101"></a>00101             Geometry,
+<a name="l00102"></a>00102             strategy_type
+<a name="l00103"></a>00103         >::apply(geometry, strategy_type());
+<a name="l00104"></a>00104 }
+<a name="l00105"></a>00105 
+<a name="l00114"></a>00114 <span class="keyword">template</span><<span class="keyword">typename</span> Geometry, <span class="keyword">typename</span> Strategy>
+<a name="l00115"></a><a class="code" href="group__perimeter.html#g78c3f8a2c3eed80533521425079cdf55">00115</a> <span class="keyword">inline</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1length__result.html" title="Meta-function defining return type of length function.">length_result<Geometry>::type</a> <a class="code" href="group__perimeter.html#g02588697f4c401400c3007d3ff091df9" title="Calculate perimeter of a geometry.">perimeter</a>(
+<a name="l00116"></a>00116         Geometry <span class="keyword">const</span>& geometry, Strategy <span class="keyword">const</span>& strategy)
+<a name="l00117"></a>00117 {
+<a name="l00118"></a>00118     <span class="keywordflow">return</span> <a class="code" href="group__perimeter.html#g02588697f4c401400c3007d3ff091df9" title="Calculate perimeter of a geometry.">dispatch::perimeter</a>
+<a name="l00119"></a>00119         <
+<a name="l00120"></a>00120             <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<Geometry>::type</a>,
+<a name="l00121"></a>00121             Geometry,
+<a name="l00122"></a>00122             Strategy
+<a name="l00123"></a>00123         >::apply(geometry, strategy);
+<a name="l00124"></a>00124 }
+<a name="l00125"></a>00125 
+<a name="l00126"></a>00126 } <span class="comment">// namespace ggl</span>
+<a name="l00127"></a>00127 
+<a name="l00128"></a>00128 <span class="preprocessor">#endif // GGL_ALGORITHMS_PERIMETER_HPP</span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2sectionalize_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2sectionalize_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2sectionalize_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -269,7 +269,7 @@
 <a name="l00255"></a>00255     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> apply(Range <span class="keyword">const</span>& range, Sections& <a class="code" href="structggl_1_1sections.html" title="Structure containing a collection of sections.">sections</a>,
 <a name="l00256"></a>00256                 <span class="keywordtype">int</span> ring_index = -1, <span class="keywordtype">int</span> multi_index = -1)
 <a name="l00257"></a>00257     {
-<a name="l00258"></a>00258         <span class="keyword">typedef</span> <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment<const Point></a> segment_type;
+<a name="l00258"></a>00258         <span class="keyword">typedef</span> <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment<const Point></a> segment_type;
 <a name="l00259"></a>00259 
 <a name="l00260"></a>00260         std::size_t <span class="keyword">const</span> n = boost::size(range);
 <a name="l00261"></a>00261         <span class="keywordflow">if</span> (n == 0)
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2simplify_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2simplify_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/algorithms_2simplify_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -291,7 +291,7 @@
 <a name="l00291"></a>00291             cs_tag,
 <a name="l00292"></a>00292             cs_tag,
 <a name="l00293"></a>00293             point_type,
-<a name="l00294"></a>00294             <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">ggl::segment<const point_type></a>
+<a name="l00294"></a>00294             <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">ggl::segment<const point_type></a>
 <a name="l00295"></a>00295         >::type ds_strategy_type;
 <a name="l00296"></a>00296 
 <a name="l00297"></a>00297     <span class="keyword">typedef</span> <a class="code" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html" title="Implements the simplify algorithm.">strategy::simplify::douglas_peucker</a>
@@ -328,7 +328,7 @@
 <a name="l00359"></a>00359             cs_tag,
 <a name="l00360"></a>00360             cs_tag,
 <a name="l00361"></a>00361             point_type,
-<a name="l00362"></a>00362             <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">ggl::segment<const point_type></a>
+<a name="l00362"></a>00362             <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">ggl::segment<const point_type></a>
 <a name="l00363"></a>00363         >::type ds_strategy_type;
 <a name="l00364"></a>00364 
 <a name="l00365"></a>00365     <span class="comment">//typedef typename ggl::as_range_type<Geometry>::type range_type;</span>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/annotated.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/annotated.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/annotated.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -45,9 +45,9 @@
 <div class="contents">
 <h1>Class List</h1>Here are the classes, structs, unions and interfaces with brief descriptions:<table>
   <tr><td class="indexkey"><a class="el" href="classcore__dispatch_1_1dimension.html">dimension</a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><a class="el" href="structggl_1_1area__result.html">ggl::area_result< Geometry ></a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="structggl_1_1area__result.html">ggl::area_result< Geometry ></a></td><td class="indexvalue">Meta-function defining return type of area function </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1as__range__type.html">ggl::as_range_type< Geometry ></a></td><td class="indexvalue">Meta-function utility returning either type itself, or outer ring </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classggl_1_1box.html">ggl::box< P ></a></td><td class="indexvalue">Class <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a>: defines a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> made of two describing points </td></tr>
+  <tr><td class="indexkey"><a class="el" href="classggl_1_1box.html">ggl::box< Point ></a></td><td class="indexvalue">Class <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a>: defines a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> made of two describing points </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1box__tag.html">ggl::box_tag</a></td><td class="indexvalue">Convenience 2D or 3D <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> (mbr) identifying <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a> </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1cartesian__distance.html">ggl::cartesian_distance< T ></a></td><td class="indexvalue">Encapsulate the results of distance calculation </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1cartesian__tag.html">ggl::cartesian_tag</a></td><td class="indexvalue">Tag indicating Cartesian coordinate system family (cartesian,epsg) </td></tr>
@@ -68,7 +68,7 @@
   <tr><td class="indexkey"><a class="el" href="structggl_1_1concept_1_1_point_segment_distance_strategy.html">ggl::concept::PointSegmentDistanceStrategy< Strategy ></a></td><td class="indexvalue">Checks <a class="el" href="namespaceggl_1_1strategy.html">strategy</a> for point-segment-distance </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1concept_1_1_polygon.html">ggl::concept::Polygon< P ></a></td><td class="indexvalue">Checks <a class="el" href="classggl_1_1polygon.html" title="The polygon contains an outer ring and zero or more inner rings.">polygon</a> <a class="el" href="namespaceggl_1_1concept.html">concept</a>, using Boost Concept Check Library and metafunctions </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1concept_1_1_ring.html">ggl::concept::Ring< R ></a></td><td class="indexvalue">Checks (linear) <a class="el" href="structggl_1_1concept_1_1_ring.html" title="Checks (linear) Ring concept, using Boost Concept Check Library and metafunctions...">Ring</a> <a class="el" href="namespaceggl_1_1concept.html">concept</a>, using Boost Concept Check Library and metafunctions </td></tr>
-  <tr><td class="indexkey"><a class="el" href="structggl_1_1concept_1_1_segment.html">ggl::concept::Segment< S ></a></td><td class="indexvalue">Checks <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> <a class="el" href="namespaceggl_1_1concept.html">concept</a>, using Boost Concept Check Library and metafunctions </td></tr>
+  <tr><td class="indexkey"><a class="el" href="structggl_1_1concept_1_1_segment.html">ggl::concept::Segment< S ></a></td><td class="indexvalue">Checks <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> <a class="el" href="namespaceggl_1_1concept.html">concept</a>, using Boost Concept Check Library and metafunctions </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1concept_1_1_simplify_strategy.html">ggl::concept::SimplifyStrategy< Strategy ></a></td><td class="indexvalue">Checks <a class="el" href="namespaceggl_1_1strategy.html">strategy</a> for simplify </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1coordinate__system.html">ggl::coordinate_system< G ></a></td><td class="indexvalue">Meta-function which defines coordinate system for any geometry </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1coordinate__type.html">ggl::coordinate_type< G ></a></td><td class="indexvalue">Meta-function which defines coordinate type (int, float, double, etc) of any geometry </td></tr>
@@ -93,6 +93,7 @@
   <tr><td class="indexkey"><a class="el" href="structggl_1_1is__linear.html">ggl::is_linear< Geometry ></a></td><td class="indexvalue">Meta-function defining "true" for linear types (<a class="el" href="classggl_1_1linestring.html" title="A linestring (named so by OGC) is a collection (default a vector) of points.">linestring</a>,ring), "false" for non-linear typse </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1is__multi.html">ggl::is_multi< Geometry ></a></td><td class="indexvalue">Meta-function defining "true" for multi geometries (<a class="el" href="structggl_1_1multi__point.html">multi_point</a>, etc) </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1is__radian.html">ggl::is_radian< CoordinateSystem ></a></td><td class="indexvalue">Meta-function to verify if a coordinate system is <a class="el" href="classggl_1_1radian.html" title="Unit of plan angles: radians.">radian</a> </td></tr>
+  <tr><td class="indexkey"><a class="el" href="structggl_1_1length__result.html">ggl::length_result< Geometry ></a></td><td class="indexvalue">Meta-function defining return type of length function </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1less.html">ggl::less< P ></a></td><td class="indexvalue">Less predicate for usage in e.g. std::map </td></tr>
   <tr><td class="indexkey"><a class="el" href="classggl_1_1linear__ring.html">ggl::linear_ring< P, V, ClockWise, A ></a></td><td class="indexvalue">A <a class="el" href="classggl_1_1linear__ring.html" title="A linear_ring (linear linear_ring) is a closed line which should not be selfintersecting...">linear_ring</a> (linear <a class="el" href="classggl_1_1linear__ring.html" title="A linear_ring (linear linear_ring) is a closed line which should not be selfintersecting...">linear_ring</a>) is a closed line which should not be selfintersecting </td></tr>
   <tr><td class="indexkey"><a class="el" href="classggl_1_1linestring.html">ggl::linestring< P, V, A ></a></td><td class="indexvalue">A <a class="el" href="classggl_1_1linestring.html" title="A linestring (named so by OGC) is a collection (default a vector) of points.">linestring</a> (named so by OGC) is a collection (default a vector) of points </td></tr>
@@ -125,13 +126,14 @@
   <tr><td class="indexkey"><a class="el" href="structggl_1_1ring__type.html">ggl::ring_type< Geometry ></a></td><td class="indexvalue">Meta-function which defines ring type of (multi)<a class="el" href="classggl_1_1polygon.html" title="The polygon contains an outer ring and zero or more inner rings.">polygon</a> geometry </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1section.html">ggl::section< Box, DimensionCount ></a></td><td class="indexvalue">Structure containing <a class="el" href="structggl_1_1section.html" title="Structure containing section information.">section</a> information </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1sections.html">ggl::sections< Box, DimensionCount ></a></td><td class="indexvalue">Structure containing a collection of <a class="el" href="structggl_1_1sections.html" title="Structure containing a collection of sections.">sections</a> </td></tr>
-  <tr><td class="indexkey"><a class="el" href="structggl_1_1segment.html">ggl::segment< P ></a></td><td class="indexvalue">Class <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>: small containing two (templatized) <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> references </td></tr>
+  <tr><td class="indexkey"><a class="el" href="classggl_1_1segment.html">ggl::segment< ConstOrNonConstPoint ></a></td><td class="indexvalue">Class <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>: small class containing two (templatized) <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> references </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1segment__identifier.html">ggl::segment_identifier</a></td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1segment__intersection__points.html">ggl::segment_intersection_points< P ></a></td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1segment__iterator.html">ggl::segment_iterator< Base, Point ></a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><a class="el" href="structggl_1_1segment__tag.html">ggl::segment_tag</a></td><td class="indexvalue">Convenience <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> (2-points) identifying <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a> </td></tr>
+  <tr><td class="indexkey"><a class="el" href="structggl_1_1segment__tag.html">ggl::segment_tag</a></td><td class="indexvalue">Convenience <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> (2-points) identifying <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a> </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1select__coordinate__type.html">ggl::select_coordinate_type< T1, T2 ></a></td><td class="indexvalue">Utility selecting the most precise coordinate type of two geometries </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1select__most__precise.html">ggl::select_most_precise< T1, T2 ></a></td><td class="indexvalue">Traits class to select, of two types, the most accurate type for calculations </td></tr>
+  <tr><td class="indexkey"><a class="el" href="structggl_1_1single__tag.html">ggl::single_tag< Tag ></a></td><td class="indexvalue">Meta-function to get for a <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a> of a multi-geometry the <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a> of the corresponding single-geometry </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1spherical__tag.html">ggl::spherical_tag</a></td><td class="indexvalue">Tag indicating Spherical coordinate system family (spherical,celestial,...) </td></tr>
   <tr><td class="indexkey"><a class="el" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html">ggl::strategy::area::by_spherical_excess< P ></a></td><td class="indexvalue">Area calculation by spherical excess </td></tr>
   <tr><td class="indexkey"><a class="el" href="classggl_1_1strategy_1_1area_1_1by__triangles.html">ggl::strategy::area::by_triangles< PS, CalculationType ></a></td><td class="indexvalue">Strategy functor for <a class="el" href="namespaceggl_1_1strategy_1_1area.html">area</a> calculation on <a class="el" href="classggl_1_1point__xy.html" title="2D point in Cartesian coordinate system">point_xy</a> points </td></tr>
@@ -139,11 +141,10 @@
   <tr><td class="indexkey"><a class="el" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html">ggl::strategy::centroid::geolib1995< PC, PS ></a></td><td class="indexvalue">Centroid calculation </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1strategy_1_1compare_1_1euclidian.html">ggl::strategy::compare::euclidian< P, D ></a></td><td class="indexvalue">Compare (in one direction) <a class="el" href="namespaceggl_1_1strategy.html">strategy</a> for cartesian coordinates </td></tr>
   <tr><td class="indexkey"><a class="el" href="classggl_1_1strategy_1_1convex__hull_1_1graham.html">ggl::strategy::convex_hull::graham< P ></a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><a class="el" href="classggl_1_1strategy_1_1distance_1_1cross__track.html">ggl::strategy::distance::cross_track< P, S ></a></td><td class="indexvalue">Strategy functor for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> calculation </td></tr>
+  <tr><td class="indexkey"><a class="el" href="classggl_1_1strategy_1_1distance_1_1cross__track.html">ggl::strategy::distance::cross_track< P, S ></a></td><td class="indexvalue">Strategy functor for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> calculation </td></tr>
   <tr><td class="indexkey"><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html">ggl::strategy::distance::haversine< P1, P2 ></a></td><td class="indexvalue">Distance calculation for spherical coordinates on a perfect sphere using <a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html" title="Distance calculation for spherical coordinates on a perfect sphere using haversine...">haversine</a> </td></tr>
-  <tr><td class="indexkey"><a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html">ggl::strategy::distance::ll_point_segment< P, S ></a></td><td class="indexvalue">Strategy functor for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> calculation </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1strategy_1_1distance_1_1pythagoras.html">ggl::strategy::distance::pythagoras< P1, P2, CalculationType ></a></td><td class="indexvalue">Strategy for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a>: <a class="el" href="structggl_1_1strategy_1_1distance_1_1pythagoras.html" title="Strategy for distance point to point: pythagoras.">pythagoras</a> </td></tr>
-  <tr><td class="indexkey"><a class="el" href="structggl_1_1strategy_1_1distance_1_1xy__point__segment.html">ggl::strategy::distance::xy_point_segment< P, Segment, Strategy ></a></td><td class="indexvalue">Strategy for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> </td></tr>
+  <tr><td class="indexkey"><a class="el" href="structggl_1_1strategy_1_1distance_1_1xy__point__segment.html">ggl::strategy::distance::xy_point_segment< P, Segment, Strategy ></a></td><td class="indexvalue">Strategy for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1strategy_1_1envelope_1_1combine__xy.html">ggl::strategy::envelope::combine_xy< P, B ></a></td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1strategy_1_1envelope_1_1combine__xy_1_1state.html">ggl::strategy::envelope::combine_xy< P, B >::state</a></td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1strategy_1_1envelope_1_1grow__ll.html">ggl::strategy::envelope::grow_ll< P, B ></a></td><td class="indexvalue"></td></tr>
@@ -154,7 +155,7 @@
   <tr><td class="indexkey"><a class="el" href="classggl_1_1strategy_1_1intersection_1_1liang__barsky.html">ggl::strategy::intersection::liang_barsky< B, P ></a></td><td class="indexvalue">Strategy: line clipping algorithm after Liang Barsky </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1strategy_1_1not__implemented.html">ggl::strategy::not_implemented</a></td><td class="indexvalue">Indicate compiler/library user that <a class="el" href="namespaceggl_1_1strategy.html">strategy</a> is not implemented </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1strategy_1_1side_1_1xy__side.html">ggl::strategy::side::xy_side< P, PS ></a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker< R, O_IT, PSDS ></a></td><td class="indexvalue">Implements the <a class="el" href="namespaceggl_1_1strategy_1_1simplify.html">simplify</a> algorithm </td></tr>
+  <tr><td class="indexkey"><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker< Point, PointDistanceStrategy ></a></td><td class="indexvalue">Implements the <a class="el" href="namespaceggl_1_1strategy_1_1simplify.html">simplify</a> algorithm </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1strategy_1_1transform_1_1copy__direct.html">ggl::strategy::transform::copy_direct< P ></a></td><td class="indexvalue">Transformation <a class="el" href="namespaceggl_1_1strategy.html">strategy</a> to copy one <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to another using assignment operator </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1strategy_1_1transform_1_1copy__per__coordinate.html">ggl::strategy::transform::copy_per_coordinate< P1, P2 ></a></td><td class="indexvalue">Transformation <a class="el" href="namespaceggl_1_1strategy.html">strategy</a> to do copy a <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a>, copying per coordinate </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1strategy_1_1transform_1_1degree__radian__vv.html">ggl::strategy::transform::degree_radian_vv< P1, P2, F ></a></td><td class="indexvalue">Transformation <a class="el" href="namespaceggl_1_1strategy.html">strategy</a> to go from <a class="el" href="classggl_1_1degree.html" title="Unit of plan angles: degrees.">degree</a> to <a class="el" href="classggl_1_1radian.html" title="Unit of plan angles: radians.">radian</a> and back </td></tr>
@@ -198,8 +199,8 @@
   <tr><td class="indexkey"><a class="el" href="classggl_1_1svg__manipulator.html">ggl::svg_manipulator< G ></a></td><td class="indexvalue">Generic geometry template manipulator class, takes corresponding output class from <a class="el" href="namespaceggl_1_1traits.html">traits</a> class </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1tag.html">ggl::tag< Geometry ></a></td><td class="indexvalue">Meta-function to get the <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a> of any geometry type </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1topological__dimension.html">ggl::topological_dimension< Geometry ></a></td><td class="indexvalue">Meta-function returning the topological <a class="el" href="structggl_1_1dimension.html" title="Meta-function which defines coordinate dimensions, i.e. the number of axes of any...">dimension</a> of a geometry </td></tr>
-  <tr><td class="indexkey"><a class="el" href="structggl_1_1traits_1_1access.html">ggl::traits::access< G ></a></td><td class="indexvalue">Traits class which gives <a class="el" href="structggl_1_1traits_1_1access.html" title="Traits class which gives access (get,set) to points.">access</a> (get,set) to points </td></tr>
-  <tr><td class="indexkey"><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html">ggl::traits::access< ggl::detail::intersection::intersection_point< P > ></a></td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey"><a class="el" href="structggl_1_1traits_1_1access.html">ggl::traits::access< Geometry, Dimension ></a></td><td class="indexvalue">Traits class which gives <a class="el" href="structggl_1_1traits_1_1access.html" title="Traits class which gives access (get,set) to points.">access</a> (get,set) to points </td></tr>
+  <tr><td class="indexkey"><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html">ggl::traits::access< ggl::detail::intersection::intersection_point< P >, Dimension ></a></td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1traits_1_1append__point.html">ggl::traits::append_point< G, P ></a></td><td class="indexvalue">Traits class, optional, might be implemented to append a <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1traits_1_1clear.html">ggl::traits::clear< G ></a></td><td class="indexvalue">Traits class, optional, might be implemented to <a class="el" href="structggl_1_1traits_1_1clear.html" title="Traits class, optional, might be implemented to clear a geometry.">clear</a> a geometry </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1traits_1_1coordinate__system.html">ggl::traits::coordinate_system< P ></a></td><td class="indexvalue">Traits class defining the coordinate system of a <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a>, important for <a class="el" href="namespaceggl_1_1strategy.html">strategy</a> selection </td></tr>
@@ -210,7 +211,7 @@
   <tr><td class="indexkey"><a class="el" href="structggl_1_1traits_1_1dimension.html">ggl::traits::dimension< P ></a></td><td class="indexvalue">Traits class indicating the number of dimensions of a <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1traits_1_1dimension_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html">ggl::traits::dimension< ggl::detail::intersection::intersection_point< P > ></a></td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1traits_1_1exterior__ring.html">ggl::traits::exterior_ring< P ></a></td><td class="indexvalue">Traits class defining <a class="el" href="structggl_1_1traits_1_1access.html" title="Traits class which gives access (get,set) to points.">access</a> to <a class="el" href="structggl_1_1traits_1_1exterior__ring.html" title="Traits class defining access to exterior_ring of a polygon.">exterior_ring</a> of a <a class="el" href="classggl_1_1polygon.html" title="The polygon contains an outer ring and zero or more inner rings.">polygon</a> </td></tr>
-  <tr><td class="indexkey"><a class="el" href="structggl_1_1traits_1_1indexed__access.html">ggl::traits::indexed_access< G, I, D ></a></td><td class="indexvalue">Traits class defining "get" and "set" to get and set <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> coordinate values </td></tr>
+  <tr><td class="indexkey"><a class="el" href="structggl_1_1traits_1_1indexed__access.html">ggl::traits::indexed_access< Geometry, Index, Dimension ></a></td><td class="indexvalue">Traits class defining "get" and "set" to get and set <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> coordinate values </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1traits_1_1interior__rings.html">ggl::traits::interior_rings< G ></a></td><td class="indexvalue">Traits class defining <a class="el" href="structggl_1_1traits_1_1access.html" title="Traits class which gives access (get,set) to points.">access</a> to <a class="el" href="structggl_1_1traits_1_1interior__rings.html" title="Traits class defining access to interior_rings of a polygon.">interior_rings</a> of a <a class="el" href="classggl_1_1polygon.html" title="The polygon contains an outer ring and zero or more inner rings.">polygon</a> </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1traits_1_1interior__type.html">ggl::traits::interior_type< G ></a></td><td class="indexvalue">Traits class indicating interior container type of a <a class="el" href="classggl_1_1polygon.html" title="The polygon contains an outer ring and zero or more inner rings.">polygon</a> </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1traits_1_1point__order.html">ggl::traits::point_order< G ></a></td><td class="indexvalue">Traits class indicating the order of contained points within a ring or (multi)<a class="el" href="classggl_1_1polygon.html" title="The polygon contains an outer ring and zero or more inner rings.">polygon</a>, clockwise, counter clockwise or not known </td></tr>
@@ -220,7 +221,7 @@
   <tr><td class="indexkey"><a class="el" href="structggl_1_1traits_1_1ring__type.html">ggl::traits::ring_type< G ></a></td><td class="indexvalue">Traits class to indicate ring-type of a polygon's exterior ring/interior rings </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1traits_1_1tag.html">ggl::traits::tag< Geometry ></a></td><td class="indexvalue">Traits class to attach a <a class="el" href="structggl_1_1traits_1_1tag.html" title="Traits class to attach a tag to a geometry.">tag</a> to a geometry </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1traits_1_1tag_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html">ggl::traits::tag< ggl::detail::intersection::intersection_point< P > ></a></td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey"><a class="el" href="structggl_1_1traits_1_1use__std.html">ggl::traits::use_std< G ></a></td><td class="indexvalue">Traits class, optional, indicating that the std-library should be used </td></tr>
+  <tr><td class="indexkey"><a class="el" href="structggl_1_1traits_1_1use__std.html">ggl::traits::use_std< Geometry ></a></td><td class="indexvalue">Traits class, optional, indicating that the std-library should be used </td></tr>
   <tr><td class="indexkey"><a class="el" href="structggl_1_1vertex__iterator.html">ggl::vertex_iterator< Geometry, IsConst ></a></td><td class="indexvalue">Meta-function which defines <a class="el" href="structggl_1_1vertex__iterator.html" title="Meta-function which defines vertex_iterator type.">vertex_iterator</a> type </td></tr>
   <tr><td class="indexkey"><a class="el" href="class_point_list.html">PointList</a></td><td class="indexvalue"></td></tr>
 </table>
Added: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/area__result_8hpp.html
==============================================================================
--- (empty file)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/area__result_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -0,0 +1,79 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Generic Geometry Library</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head>
+<body style="background-image: url(images/draft.png);">
+
+<table cellpadding="2" width="100%">
+<tbody>
+<tr>
+<td valign="top">
+<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
+  
+</td>
+<td valign="top" align="right">
+<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
+</td>
+</tr>
+</tbody>
+</table>
+<!-- Generated by Doxygen 1.5.9 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li>Main Page</li>
+      <li>Related Pages</li>
+      <li>Modules</li>
+      <li>Namespaces</li>
+      <li>Classes</li>
+      <li class="current">Files</li>
+      <li>Examples</li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li>File List</li>
+      <li>File Members</li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+<h1>ggl/strategies/area_result.hpp File Reference</h1>
+<p>
+Go to the source code of this file.<table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1area__result.html">ggl::area_result< Geometry ></a></td></tr>
+
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Meta-function defining return type of area function.  More...<br></td></tr>
+<tr><td colspan="2"><br><h2>Namespaces</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl.html">ggl</a></td></tr>
+
+</table>
+</div>
+<hr size="1">
+<table width="100%">
+<tbody>
+<tr>
+<td align="left"><small>
+<p>October 13, 2009</p>
+</small></td>
+<td align="right">
+<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
+Copyright © 2008-2009 Bruno Lalande, Paris<br>
+Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
+</small>
+</td>
+</tr>
+</tbody>
+</table>
+
+<address style="text-align: right;"><small>
+Documentation is generated by Doxygen
+</small></address>
+</body>
+</html>
Added: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/area__result_8hpp_source.html
==============================================================================
--- (empty file)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/area__result_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -0,0 +1,102 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Generic Geometry Library</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head>
+<body style="background-image: url(images/draft.png);">
+
+<table cellpadding="2" width="100%">
+<tbody>
+<tr>
+<td valign="top">
+<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
+  
+</td>
+<td valign="top" align="right">
+<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
+</td>
+</tr>
+</tbody>
+</table>
+<!-- Generated by Doxygen 1.5.9 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li>Main Page</li>
+      <li>Related Pages</li>
+      <li>Modules</li>
+      <li>Namespaces</li>
+      <li>Classes</li>
+      <li class="current">Files</li>
+      <li>Examples</li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li>File List</li>
+      <li>File Members</li>
+    </ul>
+  </div>
+<h1>ggl/strategies/area_result.hpp</h1>Go to the documentation of this file.<div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">// Generic Geometry Library</span>
+<a name="l00002"></a>00002 <span class="comment">//</span>
+<a name="l00003"></a>00003 <span class="comment">// Copyright Barend Gehrels 1995-2009, Geodan Holding B.V. Amsterdam, the Netherlands.</span>
+<a name="l00004"></a>00004 <span class="comment">// Use, modification and distribution is subject to the Boost Software License,</span>
+<a name="l00005"></a>00005 <span class="comment">// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at</span>
+<a name="l00006"></a>00006 <span class="comment">// http://www.boost.org/LICENSE_1_0.txt)</span>
+<a name="l00007"></a>00007 
+<a name="l00008"></a>00008 <span class="preprocessor">#ifndef GGL_AREA_RESULT_HPP</span>
+<a name="l00009"></a>00009 <span class="preprocessor"></span><span class="preprocessor">#define GGL_AREA_RESULT_HPP</span>
+<a name="l00010"></a>00010 <span class="preprocessor"></span>
+<a name="l00011"></a>00011 
+<a name="l00012"></a>00012 <span class="preprocessor">#include <<a class="code" href="coordinate__type_8hpp.html">ggl/core/coordinate_type.hpp</a>></span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include <<a class="code" href="select__most__precise_8hpp.html">ggl/util/select_most_precise.hpp</a>></span>
+<a name="l00014"></a>00014 <span class="preprocessor">#include <<a class="code" href="strategies_8hpp.html">ggl/strategies/strategies.hpp</a>></span>
+<a name="l00015"></a>00015 
+<a name="l00016"></a>00016 
+<a name="l00017"></a>00017 <span class="keyword">namespace </span>ggl
+<a name="l00018"></a>00018 {
+<a name="l00019"></a>00019 
+<a name="l00027"></a>00027 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry>
+<a name="l00028"></a><a class="code" href="structggl_1_1area__result.html">00028</a> <span class="keyword">struct </span><a class="code" href="structggl_1_1area__result.html" title="Meta-function defining return type of area function.">area_result</a>
+<a name="l00029"></a>00029 {
+<a name="l00030"></a><a class="code" href="structggl_1_1area__result.html#d6428313802f153cd99b803ecde23872">00030</a>     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type<Geometry>::type</a> <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type</a>;
+<a name="l00031"></a>00031     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1strategy__area.html" title="Traits class binding an area strategy to a coordinate system.">strategy_area</a>
+<a name="l00032"></a>00032         <
+<a name="l00033"></a>00033             <span class="keyword">typename</span> <a class="code" href="structggl_1_1cs__tag.html" title="Meta-function returning coordinate system tag (cs family) of any geometry.">cs_tag<point_type>::type</a>,
+<a name="l00034"></a>00034             <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type</a>
+<a name="l00035"></a><a class="code" href="structggl_1_1area__result.html#ccb03cf635c157788a99c33d8f3c3a1e">00035</a>         ><a class="code" href="structggl_1_1area__result.html#6f843780140b8fa0ac0a4a36c4c00d81">::type</a> <a class="code" href="structggl_1_1strategy_1_1not__implemented.html" title="Indicate compiler/library user that strategy is not implemented.">strategy_type</a>;
+<a name="l00036"></a>00036 
+<a name="l00037"></a><a class="code" href="structggl_1_1area__result.html#6f843780140b8fa0ac0a4a36c4c00d81">00037</a>     <span class="keyword">typedef</span> <span class="keyword">typename</span> strategy_type::return_type <a class="code" href="structggl_1_1area__result.html#6f843780140b8fa0ac0a4a36c4c00d81">type</a>;
+<a name="l00038"></a>00038 };
+<a name="l00039"></a>00039 
+<a name="l00040"></a>00040 
+<a name="l00041"></a>00041 } <span class="comment">// namespace ggl</span>
+<a name="l00042"></a>00042 
+<a name="l00043"></a>00043 
+<a name="l00044"></a>00044 <span class="preprocessor">#endif // GGL_AREA_RESULT_HPP</span>
+</pre></div></div>
+<hr size="1">
+<table width="100%">
+<tbody>
+<tr>
+<td align="left"><small>
+<p>October 13, 2009</p>
+</small></td>
+<td align="right">
+<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
+Copyright © 2008-2009 Bruno Lalande, Paris<br>
+Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
+</small>
+</td>
+</tr>
+</tbody>
+</table>
+
+<address style="text-align: right;"><small>
+Documentation is generated by Doxygen
+</small></address>
+</body>
+</html>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/base_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/base_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/base_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -54,50 +54,51 @@
 <a name="l00012"></a>00012 <span class="preprocessor">#include <boost/iterator.hpp></span>
 <a name="l00013"></a>00013 <span class="preprocessor">#include <boost/iterator/iterator_adaptor.hpp></span>
 <a name="l00014"></a>00014 <span class="preprocessor">#include <boost/iterator/iterator_categories.hpp></span>
-<a name="l00015"></a>00015 
-<a name="l00016"></a>00016 <span class="preprocessor">#ifndef DOXYGEN_NO_DETAIL</span>
-<a name="l00017"></a>00017 <span class="preprocessor"></span><span class="keyword">namespace </span>ggl { <span class="keyword">namespace </span>detail { <span class="keyword">namespace </span>iterators {
-<a name="l00018"></a>00018 
-<a name="l00019"></a>00019 <span class="keyword">template</span> <<span class="keyword">typename</span> T, <span class="keyword">typename</span> Iterator>
-<a name="l00020"></a>00020 <span class="keyword">struct </span>iterator_base :
-<a name="l00021"></a>00021     <span class="keyword">public</span>  boost::iterator_adaptor
-<a name="l00022"></a>00022     <
-<a name="l00023"></a>00023         T,
-<a name="l00024"></a>00024         Iterator,
-<a name="l00025"></a>00025         boost::use_default,
-<a name="l00026"></a>00026         typename boost::mpl::if_
-<a name="l00027"></a>00027         <
-<a name="l00028"></a>00028             boost::is_convertible
-<a name="l00029"></a>00029             <
-<a name="l00030"></a>00030                 typename boost::iterator_traversal<Iterator>::type,
-<a name="l00031"></a>00031                 boost::random_access_traversal_tag
-<a name="l00032"></a>00032             >,
-<a name="l00033"></a>00033             boost::bidirectional_traversal_tag,
-<a name="l00034"></a>00034             boost::use_default
-<a name="l00035"></a>00035         >::type
-<a name="l00036"></a>00036     >
-<a name="l00037"></a>00037 {
-<a name="l00038"></a>00038     <span class="comment">// Define operator cast to Iterator to be able to write things like Iterator it = myit++</span>
-<a name="l00039"></a>00039     <span class="keyword">inline</span> operator Iterator()<span class="keyword"> const</span>
-<a name="l00040"></a>00040 <span class="keyword">    </span>{
-<a name="l00041"></a>00041         <span class="keywordflow">return</span> this->base();
-<a name="l00042"></a>00042     }
-<a name="l00043"></a>00043 
-<a name="l00044"></a>00044     <span class="comment">/*inline bool operator==(const Iterator& other) const</span>
-<a name="l00045"></a>00045 <span class="comment">    {</span>
-<a name="l00046"></a>00046 <span class="comment">        return this->base() == other;</span>
-<a name="l00047"></a>00047 <span class="comment">    }</span>
-<a name="l00048"></a>00048 <span class="comment">    inline bool operator!=(const Iterator& other) const</span>
-<a name="l00049"></a>00049 <span class="comment">    {</span>
-<a name="l00050"></a>00050 <span class="comment">        return ! operator==(other);</span>
-<a name="l00051"></a>00051 <span class="comment">    }*/</span>
-<a name="l00052"></a>00052 };
-<a name="l00053"></a>00053 
-<a name="l00054"></a>00054 }}} <span class="comment">// namespace ggl::detail::iterators</span>
-<a name="l00055"></a>00055 <span class="preprocessor">#endif</span>
-<a name="l00056"></a>00056 <span class="preprocessor"></span>
-<a name="l00057"></a>00057 
-<a name="l00058"></a>00058 <span class="preprocessor">#endif // GGL_ITERATORS_BASE_HPP</span>
+<a name="l00015"></a>00015 <span class="preprocessor">#include <boost/mpl/if.hpp></span>
+<a name="l00016"></a>00016 
+<a name="l00017"></a>00017 <span class="preprocessor">#ifndef DOXYGEN_NO_DETAIL</span>
+<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="keyword">namespace </span>ggl { <span class="keyword">namespace </span>detail { <span class="keyword">namespace </span>iterators {
+<a name="l00019"></a>00019 
+<a name="l00020"></a>00020 <span class="keyword">template</span> <<span class="keyword">typename</span> T, <span class="keyword">typename</span> Iterator>
+<a name="l00021"></a>00021 <span class="keyword">struct </span>iterator_base :
+<a name="l00022"></a>00022     <span class="keyword">public</span>  boost::iterator_adaptor
+<a name="l00023"></a>00023     <
+<a name="l00024"></a>00024         T,
+<a name="l00025"></a>00025         Iterator,
+<a name="l00026"></a>00026         boost::use_default,
+<a name="l00027"></a>00027         typename boost::mpl::if_
+<a name="l00028"></a>00028         <
+<a name="l00029"></a>00029             boost::is_convertible
+<a name="l00030"></a>00030             <
+<a name="l00031"></a>00031                 typename boost::iterator_traversal<Iterator>::type,
+<a name="l00032"></a>00032                 boost::random_access_traversal_tag
+<a name="l00033"></a>00033             >,
+<a name="l00034"></a>00034             boost::bidirectional_traversal_tag,
+<a name="l00035"></a>00035             boost::use_default
+<a name="l00036"></a>00036         >::type
+<a name="l00037"></a>00037     >
+<a name="l00038"></a>00038 {
+<a name="l00039"></a>00039     <span class="comment">// Define operator cast to Iterator to be able to write things like Iterator it = myit++</span>
+<a name="l00040"></a>00040     <span class="keyword">inline</span> operator Iterator()<span class="keyword"> const</span>
+<a name="l00041"></a>00041 <span class="keyword">    </span>{
+<a name="l00042"></a>00042         <span class="keywordflow">return</span> this->base();
+<a name="l00043"></a>00043     }
+<a name="l00044"></a>00044 
+<a name="l00045"></a>00045     <span class="comment">/*inline bool operator==(const Iterator& other) const</span>
+<a name="l00046"></a>00046 <span class="comment">    {</span>
+<a name="l00047"></a>00047 <span class="comment">        return this->base() == other;</span>
+<a name="l00048"></a>00048 <span class="comment">    }</span>
+<a name="l00049"></a>00049 <span class="comment">    inline bool operator!=(const Iterator& other) const</span>
+<a name="l00050"></a>00050 <span class="comment">    {</span>
+<a name="l00051"></a>00051 <span class="comment">        return ! operator==(other);</span>
+<a name="l00052"></a>00052 <span class="comment">    }*/</span>
+<a name="l00053"></a>00053 };
+<a name="l00054"></a>00054 
+<a name="l00055"></a>00055 }}} <span class="comment">// namespace ggl::detail::iterators</span>
+<a name="l00056"></a>00056 <span class="preprocessor">#endif</span>
+<a name="l00057"></a>00057 <span class="preprocessor"></span>
+<a name="l00058"></a>00058 
+<a name="l00059"></a>00059 <span class="preprocessor">#endif // GGL_ITERATORS_BASE_HPP</span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/box_8hpp.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/box_8hpp.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/box_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -47,7 +47,7 @@
 <a href="box_8hpp_source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
 <tr><td></td></tr>
 <tr><td colspan="2"><br><h2>Classes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1box.html">ggl::box< P ></a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1box.html">ggl::box< Point ></a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Class <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a>: defines a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> made of two describing points.  More...<br></td></tr>
 <tr><td colspan="2"><br><h2>Namespaces</h2></td></tr>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/box_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/box_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/box_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -60,31 +60,31 @@
 <a name="l00018"></a>00018 <span class="keyword">namespace </span>ggl
 <a name="l00019"></a>00019 {
 <a name="l00020"></a>00020 
-<a name="l00034"></a>00034 <span class="keyword">template</span><<span class="keyword">typename</span> P>
+<a name="l00034"></a>00034 <span class="keyword">template</span><<span class="keyword">typename</span> Po<span class="keywordtype">int</span>>
 <a name="l00035"></a><a class="code" href="classggl_1_1box.html">00035</a> <span class="keyword">class </span><a class="code" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a>
 <a name="l00036"></a>00036 {
-<a name="l00037"></a>00037     BOOST_CONCEPT_ASSERT( (<a class="code" href="structggl_1_1concept_1_1_point.html" title="Checks point concept, using Boost Concept Check Library and metafunctions.">concept::Point<P></a>) );
+<a name="l00037"></a>00037     BOOST_CONCEPT_ASSERT( (<a class="code" href="structggl_1_1concept_1_1_point.html" title="Checks point concept, using Boost Concept Check Library and metafunctions.">concept::Point<Point></a>) );
 <a name="l00038"></a>00038 
 <a name="l00039"></a>00039 <span class="keyword">public</span>:
 <a name="l00040"></a>00040 
-<a name="l00041"></a><a class="code" href="classggl_1_1box.html#40a32b03ef937f268b28716cd3a19ff4">00041</a>     <span class="keyword">inline</span> <a class="code" href="classggl_1_1box.html#40a32b03ef937f268b28716cd3a19ff4">box</a>() {}
+<a name="l00041"></a><a class="code" href="classggl_1_1box.html#27556d65c45886911a450e707b8cd633">00041</a>     <span class="keyword">inline</span> <a class="code" href="classggl_1_1box.html#27556d65c45886911a450e707b8cd633">box</a>() {}
 <a name="l00042"></a>00042 
-<a name="l00046"></a><a class="code" href="classggl_1_1box.html#c7888e7869f90177bbc524467fa9e6c4">00046</a>     <span class="keyword">inline</span> <a class="code" href="classggl_1_1box.html#40a32b03ef937f268b28716cd3a19ff4">box</a>(P <span class="keyword">const</span>& <a class="code" href="classggl_1_1box.html#47f607c06a2a5432eac75d8bd5cf4a61">min_corner</a>, P <span class="keyword">const</span>& <a class="code" href="classggl_1_1box.html#ad3ec53ea62b0bfa3cb897cea62ea0f0">max_corner</a>)
+<a name="l00046"></a><a class="code" href="classggl_1_1box.html#33c77af2d104a1faec5e98603d5ded17">00046</a>     <span class="keyword">inline</span> <a class="code" href="classggl_1_1box.html#27556d65c45886911a450e707b8cd633">box</a>(Point <span class="keyword">const</span>& <a class="code" href="classggl_1_1box.html#ebc2dece8cd77a23f73ffae3a957f093">min_corner</a>, Point <span class="keyword">const</span>& <a class="code" href="classggl_1_1box.html#63a9905a364d6b5bef828cc04b9970f7">max_corner</a>)
 <a name="l00047"></a>00047     {
 <a name="l00048"></a>00048         <a class="code" href="namespaceggl.html#f8cee6dd577bebfd1dbbe4cc503304d4" title="Copies coordinates from source to destination point.">copy_coordinates</a>(min_corner, m_min_corner);
 <a name="l00049"></a>00049         <a class="code" href="namespaceggl.html#f8cee6dd577bebfd1dbbe4cc503304d4" title="Copies coordinates from source to destination point.">copy_coordinates</a>(max_corner, m_max_corner);
 <a name="l00050"></a>00050     }
 <a name="l00051"></a>00051 
-<a name="l00052"></a><a class="code" href="classggl_1_1box.html#47f607c06a2a5432eac75d8bd5cf4a61">00052</a>     <span class="keyword">inline</span> P <span class="keyword">const</span>& <a class="code" href="classggl_1_1box.html#47f607c06a2a5432eac75d8bd5cf4a61">min_corner</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_min_corner; }
-<a name="l00053"></a><a class="code" href="classggl_1_1box.html#ad3ec53ea62b0bfa3cb897cea62ea0f0">00053</a>     <span class="keyword">inline</span> P <span class="keyword">const</span>& <a class="code" href="classggl_1_1box.html#ad3ec53ea62b0bfa3cb897cea62ea0f0">max_corner</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_max_corner; }
+<a name="l00052"></a><a class="code" href="classggl_1_1box.html#ebc2dece8cd77a23f73ffae3a957f093">00052</a>     <span class="keyword">inline</span> Point <span class="keyword">const</span>& <a class="code" href="classggl_1_1box.html#ebc2dece8cd77a23f73ffae3a957f093">min_corner</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_min_corner; }
+<a name="l00053"></a><a class="code" href="classggl_1_1box.html#63a9905a364d6b5bef828cc04b9970f7">00053</a>     <span class="keyword">inline</span> Point <span class="keyword">const</span>& <a class="code" href="classggl_1_1box.html#63a9905a364d6b5bef828cc04b9970f7">max_corner</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_max_corner; }
 <a name="l00054"></a>00054 
-<a name="l00055"></a><a class="code" href="classggl_1_1box.html#437ec3e1792291376892b682d3406af9">00055</a>     <span class="keyword">inline</span> P& <a class="code" href="classggl_1_1box.html#437ec3e1792291376892b682d3406af9">min_corner</a>() { <span class="keywordflow">return</span> m_min_corner; }
-<a name="l00056"></a><a class="code" href="classggl_1_1box.html#1c19e1959ea3c4e02dd80d4ee4fca2af">00056</a>     <span class="keyword">inline</span> P& <a class="code" href="classggl_1_1box.html#1c19e1959ea3c4e02dd80d4ee4fca2af">max_corner</a>() { <span class="keywordflow">return</span> m_max_corner; }
+<a name="l00055"></a><a class="code" href="classggl_1_1box.html#9d91801e6fc859f6e4258800fd9e3c94">00055</a>     <span class="keyword">inline</span> Point& <a class="code" href="classggl_1_1box.html#9d91801e6fc859f6e4258800fd9e3c94">min_corner</a>() { <span class="keywordflow">return</span> m_min_corner; }
+<a name="l00056"></a><a class="code" href="classggl_1_1box.html#dc5baf1c27a841e04907d274fd9b6c39">00056</a>     <span class="keyword">inline</span> Point& <a class="code" href="classggl_1_1box.html#dc5baf1c27a841e04907d274fd9b6c39">max_corner</a>() { <span class="keywordflow">return</span> m_max_corner; }
 <a name="l00057"></a>00057 
 <a name="l00058"></a>00058 <span class="keyword">private</span>:
 <a name="l00059"></a>00059 
-<a name="l00060"></a>00060     P m_min_corner;
-<a name="l00061"></a>00061     P m_max_corner;
+<a name="l00060"></a>00060     Point m_min_corner;
+<a name="l00061"></a>00061     Point m_max_corner;
 <a name="l00062"></a>00062 };
 <a name="l00063"></a>00063 
 <a name="l00064"></a>00064 
@@ -93,47 +93,56 @@
 <a name="l00067"></a>00067 <span class="preprocessor"></span><span class="keyword">namespace </span>traits
 <a name="l00068"></a>00068 {
 <a name="l00069"></a>00069 
-<a name="l00070"></a>00070 <span class="keyword">template</span> <<span class="keyword">typename</span> P>
-<a name="l00071"></a>00071 <span class="keyword">struct </span>tag< box<P> >
+<a name="l00070"></a>00070 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>>
+<a name="l00071"></a>00071 <span class="keyword">struct </span>tag<box<Point> >
 <a name="l00072"></a>00072 {
 <a name="l00073"></a>00073     <span class="keyword">typedef</span> box_tag <a class="code" href="structggl_1_1traits_1_1tag.html#6a33811e99e92e16ae2529e6ecd8a1b6">type</a>;
 <a name="l00074"></a>00074 };
 <a name="l00075"></a>00075 
-<a name="l00076"></a>00076 <span class="keyword">template</span> <<span class="keyword">typename</span> P>
-<a name="l00077"></a>00077 <span class="keyword">struct </span>point_type<box<P> >
+<a name="l00076"></a>00076 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>>
+<a name="l00077"></a>00077 <span class="keyword">struct </span>point_type<box<Point> >
 <a name="l00078"></a>00078 {
-<a name="l00079"></a>00079     <span class="keyword">typedef</span> P type;
+<a name="l00079"></a>00079     <span class="keyword">typedef</span> Point type;
 <a name="l00080"></a>00080 };
 <a name="l00081"></a>00081 
-<a name="l00082"></a>00082 <span class="keyword">template</span> <<span class="keyword">typename</span> P, std::<span class="keywordtype">size_t</span> C, std::<span class="keywordtype">size_t</span> D>
-<a name="l00083"></a>00083 <span class="keyword">struct </span>indexed_access<box<P>, C, D>
+<a name="l00082"></a>00082 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>, std::<span class="keywordtype">size_t</span> Dimension>
+<a name="l00083"></a>00083 <span class="keyword">struct </span>indexed_access<box<Point>, <a class="code" href="namespaceggl.html#1ce1f1fae9b689b692d623ee76d20857">min_corner</a>, Dimension>
 <a name="l00084"></a>00084 {
-<a name="l00085"></a>00085     <span class="keyword">typedef</span> box<P> box_type;
+<a name="l00085"></a>00085     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">ggl::coordinate_type<Point>::type</a> coordinate_type;
 <a name="l00086"></a>00086 
-<a name="l00087"></a>00087     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">ggl::coordinate_type<box_type>::type</a> <span class="keyword">get</span>(box_type <span class="keyword">const</span>& b)
+<a name="l00087"></a>00087     <span class="keyword">static</span> <span class="keyword">inline</span> coordinate_type <span class="keyword">get</span>(box<Point> <span class="keyword">const</span>& b)
 <a name="l00088"></a>00088     {
-<a name="l00089"></a>00089         <span class="keywordflow">return</span> (C == <a class="code" href="namespaceggl.html#1ce1f1fae9b689b692d623ee76d20857">min_corner</a> ? ggl::get<D>(b.min_corner()) : ggl::get<D>(b.max_corner()));
+<a name="l00089"></a>00089         <span class="keywordflow">return</span> ggl::get<Dimension>(b.min_corner());
 <a name="l00090"></a>00090     }
 <a name="l00091"></a>00091 
-<a name="l00092"></a>00092     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(box_type& b, <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">ggl::coordinate_type<box_type>::type</a> <span class="keyword">const</span>& value)
+<a name="l00092"></a>00092     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(box<Point>& b, coordinate_type <span class="keyword">const</span>& value)
 <a name="l00093"></a>00093     {
-<a name="l00094"></a>00094         <span class="keywordflow">if</span> (C == <a class="code" href="namespaceggl.html#1ce1f1fae9b689b692d623ee76d20857">min_corner</a>)
-<a name="l00095"></a>00095         {
-<a name="l00096"></a>00096             ggl::set<D>(b.min_corner(), value);
-<a name="l00097"></a>00097         }
-<a name="l00098"></a>00098         <span class="keywordflow">else</span>
-<a name="l00099"></a>00099         {
-<a name="l00100"></a>00100             ggl::set<D>(b.max_corner(), value);
-<a name="l00101"></a>00101         }
-<a name="l00102"></a>00102     }
-<a name="l00103"></a>00103 };
-<a name="l00104"></a>00104 
-<a name="l00105"></a>00105 } <span class="comment">// namespace traits</span>
-<a name="l00106"></a>00106 <span class="preprocessor">#endif // DOXYGEN_NO_TRAITS_SPECIALIZATIONS</span>
-<a name="l00107"></a>00107 <span class="preprocessor"></span>
-<a name="l00108"></a>00108 } <span class="comment">// namespace ggl</span>
-<a name="l00109"></a>00109 
-<a name="l00110"></a>00110 <span class="preprocessor">#endif // GGL_GEOMETRIES_BOX_HPP</span>
+<a name="l00094"></a>00094         ggl::set<Dimension>(b.min_corner(), value);
+<a name="l00095"></a>00095     }
+<a name="l00096"></a>00096 };
+<a name="l00097"></a>00097 
+<a name="l00098"></a>00098 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>, std::<span class="keywordtype">size_t</span> Dimension>
+<a name="l00099"></a>00099 <span class="keyword">struct </span>indexed_access<box<Point>, <a class="code" href="namespaceggl.html#0df0bc9b23e7d20e4596c25071039f0a">max_corner</a>, Dimension>
+<a name="l00100"></a>00100 {
+<a name="l00101"></a>00101     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">ggl::coordinate_type<Point>::type</a> coordinate_type;
+<a name="l00102"></a>00102 
+<a name="l00103"></a>00103     <span class="keyword">static</span> <span class="keyword">inline</span> coordinate_type <span class="keyword">get</span>(box<Point> <span class="keyword">const</span>& b)
+<a name="l00104"></a>00104     {
+<a name="l00105"></a>00105         <span class="keywordflow">return</span> ggl::get<Dimension>(b.max_corner());
+<a name="l00106"></a>00106     }
+<a name="l00107"></a>00107 
+<a name="l00108"></a>00108     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(box<Point>& b, coordinate_type <span class="keyword">const</span>& value)
+<a name="l00109"></a>00109     {
+<a name="l00110"></a>00110         ggl::set<Dimension>(b.max_corner(), value);
+<a name="l00111"></a>00111     }
+<a name="l00112"></a>00112 };
+<a name="l00113"></a>00113 
+<a name="l00114"></a>00114 } <span class="comment">// namespace traits</span>
+<a name="l00115"></a>00115 <span class="preprocessor">#endif // DOXYGEN_NO_TRAITS_SPECIALIZATIONS</span>
+<a name="l00116"></a>00116 <span class="preprocessor"></span>
+<a name="l00117"></a>00117 } <span class="comment">// namespace ggl</span>
+<a name="l00118"></a>00118 
+<a name="l00119"></a>00119 <span class="preprocessor">#endif // GGL_GEOMETRIES_BOX_HPP</span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/c04__a__custom__triangle__example_8cpp-example.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/c04__a__custom__triangle__example_8cpp-example.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/c04__a__custom__triangle__example_8cpp-example.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -109,7 +109,7 @@
     t.close();
 
     std::cout << <span class="stringliteral">"Triangle: "</span> << <a name="a1"></a><a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">ggl::dsv</a>(t) << std::endl;
-    std::cout << <span class="stringliteral">"Area: "</span> << <a name="a2"></a><a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">ggl::area</a>(t) << std::endl;
+    std::cout << <span class="stringliteral">"Area: "</span> << <a name="a2"></a><a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">ggl::area</a>(t) << std::endl;
 
     <a name="_a3"></a><a class="code" href="classggl_1_1point__xy.html" title="2D point in Cartesian coordinate system">ggl::point_xy<double></a> c;
     <a name="a4"></a><a class="code" href="group__centroid.html#g2b743cdd7177313b561780ba87c633cd" title="Calculate centroid.">ggl::centroid</a>(t, c);
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/c04__b__custom__triangle__example_8cpp-example.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/c04__b__custom__triangle__example_8cpp-example.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/c04__b__custom__triangle__example_8cpp-example.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -75,7 +75,7 @@
 
 <span class="comment">// Specializations of area dispatch structure, implement algorithm</span>
 <span class="keyword">template</span><<span class="keyword">typename</span> P, <span class="keyword">typename</span> S>
-<span class="keyword">struct </span><a name="a1"></a><a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">area</a><ring_tag, triangle<P>, <a name="a2"></a><a class="code" href="namespaceggl.html#9a0f9a02ea40ca3ceab32afc4b08bf4d55fe53c1821ca13eb0eacb9084cb1d1c">clockwise</a>, S>
+<span class="keyword">struct </span><a name="a1"></a><a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">area</a><ring_tag, triangle<P>, <a name="a2"></a><a class="code" href="namespaceggl.html#9a0f9a02ea40ca3ceab32afc4b08bf4d55fe53c1821ca13eb0eacb9084cb1d1c">clockwise</a>, S>
 {
     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">double</span> apply(triangle<P> <span class="keyword">const</span>& t, S <span class="keyword">const</span>&)
     {
@@ -96,7 +96,7 @@
     t[2] = boost::make_tuple(2.5, 2.5);
 
     std::cout << <span class="stringliteral">"Triangle: "</span> << <a name="a3"></a><a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">ggl::dsv</a>(t) << std::endl;
-    std::cout << <span class="stringliteral">"Area: "</span> << <a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">ggl::area</a>(t) << std::endl;
+    std::cout << <span class="stringliteral">"Area: "</span> << <a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">ggl::area</a>(t) << std::endl;
 
     <span class="comment">//ggl::point_xy<double> c;</span>
     boost::tuple<double, double> c;
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/c05__custom__point__pointer__example_8cpp-example.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/c05__custom__point__pointer__example_8cpp-example.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/c05__custom__point__pointer__example_8cpp-example.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -63,7 +63,7 @@
 <span class="comment">// Sample point, having x/y</span>
 <span class="keyword">struct </span>my_point
 {
-    <span class="keywordtype">float</span> x,y;
+    <span class="keywordtype">double</span> x,y;
 };
 
 
@@ -81,23 +81,31 @@
 <span class="keyword">template</span><> <span class="keyword">struct </span><a name="_a0"></a><a class="code" href="classcore__dispatch_1_1dimension.html">dimension</a><my_point*> : boost::mpl::int_<2> {};
 
 <span class="keyword">template</span><>
-<span class="keyword">struct </span>access<my_point*>
+<span class="keyword">struct </span>access<my_point*, 0>
 {
-    <span class="keyword">template</span> <std::<span class="keywordtype">size_t</span> I>
-    <span class="keyword">static</span> <span class="keywordtype">double</span> <span class="keyword">get</span>(<span class="keyword">const</span> my_point* p)
+    <span class="keyword">static</span> <span class="keywordtype">double</span> <span class="keyword">get</span>(my_point <span class="keyword">const</span>* p)
     {
-        <span class="keywordflow">return</span> I == 0 ? p->x : p->y;
-        <span class="comment">// Or implement an accessor with specializations</span>
+        <span class="keywordflow">return</span> p->x;
     }
 
-    <span class="keyword">template</span> <<span class="keywordtype">int</span> I>
-    <span class="keyword">static</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(my_point* p, <span class="keyword">const</span> <span class="keywordtype">double</span>& value)
+    <span class="keyword">static</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(my_point* p, <span class="keywordtype">double</span> <span class="keyword">const</span>& value)
     {
-        <span class="comment">// Or (better) implement an accessor with specializations</span>
-        <span class="keywordflow">if</span> (I == 0) p->x = value;
-        <span class="keywordflow">else</span> <span class="keywordflow">if</span> (I == 1) p->y = value;
+        p->x = value;
+    }
+};
+
+<span class="keyword">template</span><>
+<span class="keyword">struct </span>access<my_point*, 1>
+{
+    <span class="keyword">static</span> <span class="keywordtype">double</span> <span class="keyword">get</span>(my_point <span class="keyword">const</span>* p)
+    {
+        <span class="keywordflow">return</span> p->y;
     }
 
+    <span class="keyword">static</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(my_point* p, <span class="keywordtype">double</span> <span class="keyword">const</span>& value)
+    {
+        p->y = value;
+    }
 };
 
 }} <span class="comment">// namespace ggl::traits</span>
@@ -116,7 +124,7 @@
         myline.push_back(p);
     }
 
-    std::cout << <a name="a1"></a><a class="code" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa" title="Calculate length of a geometry.">ggl::length</a>(myline) << std::endl;
+    std::cout << <a name="a1"></a><a class="code" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf" title="Calculate length of a geometry.">ggl::length</a>(myline) << std::endl;
 
     <a name="_a2"></a><a class="code" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">ggl::box_2d</a> cb(<a name="_a3"></a><a class="code" href="classggl_1_1point__xy.html" title="2D point in Cartesian coordinate system">ggl::point_2d</a>(1.5, 1.5), <a class="code" href="classggl_1_1point__xy.html" title="2D point in Cartesian coordinate system">ggl::point_2d</a>(4.5, 4.5));
 
@@ -131,7 +139,7 @@
                     myline, std::back_inserter(clipped), strategy);
 
 
-    std::cout << <a class="code" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa" title="Calculate length of a geometry.">ggl::length</a>(clipped.front()) << std::endl;
+    std::cout << <a class="code" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf" title="Calculate length of a geometry.">ggl::length</a>(clipped.front()) << std::endl;
 
     <span class="comment">// free</span>
     <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i < myline.size(); i++)
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/c__array_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/c__array_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/c__array_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -90,31 +90,31 @@
 <a name="l00048"></a>00048 <span class="preprocessor">#endif // DOXYGEN_NO_DETAIL</span>
 <a name="l00049"></a>00049 <span class="preprocessor"></span>
 <a name="l00050"></a>00050 <span class="comment">// Assign the point-tag, preventing arrays of points getting a point-tag</span>
-<a name="l00051"></a>00051 <span class="keyword">template</span> <<span class="keyword">typename</span> T, std::<span class="keywordtype">size_t</span> N>
-<a name="l00052"></a>00052 <span class="keyword">struct </span>tag<T[N]> : detail::c_array_tag<boost::is_arithmetic<T>::value> {};
-<a name="l00053"></a>00053 
-<a name="l00054"></a>00054 <span class="keyword">template</span> <<span class="keyword">typename</span> T, std::<span class="keywordtype">size_t</span> N>
-<a name="l00055"></a>00055 <span class="keyword">struct </span>coordinate_type<T[N]>
-<a name="l00056"></a>00056 {
-<a name="l00057"></a>00057     <span class="keyword">typedef</span> T type;
-<a name="l00058"></a>00058 };
-<a name="l00059"></a>00059 
-<a name="l00060"></a>00060 <span class="keyword">template</span> <<span class="keyword">typename</span> T, std::<span class="keywordtype">size_t</span> N>
-<a name="l00061"></a>00061 <span class="keyword">struct </span><a class="code" href="classcore__dispatch_1_1dimension.html">dimension</a><T[N]>: boost::mpl::int_<N> {};
-<a name="l00062"></a>00062 
-<a name="l00063"></a>00063 <span class="keyword">template</span> <<span class="keyword">typename</span> T, std::<span class="keywordtype">size_t</span> N>
-<a name="l00064"></a>00064 <span class="keyword">struct </span>access<T[N]>
-<a name="l00065"></a>00065 {
-<a name="l00066"></a>00066     <span class="keyword">template</span> <std::<span class="keywordtype">size_t</span> I>
-<a name="l00067"></a>00067     <span class="keyword">static</span> <span class="keyword">inline</span> T <span class="keyword">get</span>(<span class="keyword">const</span> T p[N])
+<a name="l00051"></a>00051 <span class="keyword">template</span> <<span class="keyword">typename</span> CoordinateType, std::<span class="keywordtype">size_t</span> DimensionCount>
+<a name="l00052"></a>00052 <span class="keyword">struct </span>tag<CoordinateType[DimensionCount]> 
+<a name="l00053"></a>00053     : detail::c_array_tag<boost::is_arithmetic<CoordinateType>::value> {};
+<a name="l00054"></a>00054 
+<a name="l00055"></a>00055 <span class="keyword">template</span> <<span class="keyword">typename</span> CoordinateType, std::<span class="keywordtype">size_t</span> DimensionCount>
+<a name="l00056"></a>00056 <span class="keyword">struct </span>coordinate_type<CoordinateType[DimensionCount]>
+<a name="l00057"></a>00057 {
+<a name="l00058"></a>00058     <span class="keyword">typedef</span> CoordinateType type;
+<a name="l00059"></a>00059 };
+<a name="l00060"></a>00060 
+<a name="l00061"></a>00061 <span class="keyword">template</span> <<span class="keyword">typename</span> CoordinateType, std::<span class="keywordtype">size_t</span> DimensionCount>
+<a name="l00062"></a>00062 <span class="keyword">struct </span><a class="code" href="classcore__dispatch_1_1dimension.html">dimension</a><CoordinateType[DimensionCount]>: boost::mpl::int_<DimensionCount> {};
+<a name="l00063"></a>00063 
+<a name="l00064"></a>00064 <span class="keyword">template</span> <<span class="keyword">typename</span> CoordinateType, std::<span class="keywordtype">size_t</span> DimensionCount, std::<span class="keywordtype">size_t</span> Dimension>
+<a name="l00065"></a>00065 <span class="keyword">struct </span>access<CoordinateType[DimensionCount], Dimension>
+<a name="l00066"></a>00066 {
+<a name="l00067"></a>00067     <span class="keyword">static</span> <span class="keyword">inline</span> CoordinateType <span class="keyword">get</span>(<span class="keyword">const</span> CoordinateType p[DimensionCount])
 <a name="l00068"></a>00068     {
-<a name="l00069"></a>00069         <span class="keywordflow">return</span> p[I];
+<a name="l00069"></a>00069         <span class="keywordflow">return</span> p[Dimension];
 <a name="l00070"></a>00070     }
 <a name="l00071"></a>00071 
-<a name="l00072"></a>00072     <span class="keyword">template</span> <std::<span class="keywordtype">size_t</span> I>
-<a name="l00073"></a>00073     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(T p[N], <span class="keyword">const</span> T& value)
+<a name="l00072"></a>00072     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(CoordinateType p[DimensionCount], 
+<a name="l00073"></a>00073         CoordinateType <span class="keyword">const</span>& value)
 <a name="l00074"></a>00074     {
-<a name="l00075"></a>00075         p[I] = value;
+<a name="l00075"></a>00075         p[Dimension] = value;
 <a name="l00076"></a>00076     }
 <a name="l00077"></a>00077 };
 <a name="l00078"></a>00078 
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/calculate__null_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/calculate__null_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/calculate__null_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -58,12 +58,12 @@
 <a name="l00016"></a>00016 <span class="preprocessor"></span><span class="keyword">namespace </span>detail
 <a name="l00017"></a>00017 {
 <a name="l00018"></a>00018 
-<a name="l00019"></a>00019 <span class="keyword">template</span><<span class="keyword">typename</span> ReturnValue, <span class="keyword">typename</span> Geometry, <span class="keyword">typename</span> Strategy>
+<a name="l00019"></a>00019 <span class="keyword">template</span><<span class="keyword">typename</span> ReturnType, <span class="keyword">typename</span> Geometry, <span class="keyword">typename</span> Strategy>
 <a name="l00020"></a>00020 <span class="keyword">struct </span>calculate_null
 <a name="l00021"></a>00021 {
-<a name="l00022"></a>00022     <span class="keyword">static</span> <span class="keyword">inline</span> ReturnValue apply(Geometry <span class="keyword">const</span>& , Strategy <span class="keyword">const</span>&)
+<a name="l00022"></a>00022     <span class="keyword">static</span> <span class="keyword">inline</span> ReturnType apply(Geometry <span class="keyword">const</span>& , Strategy <span class="keyword">const</span>&)
 <a name="l00023"></a>00023     {
-<a name="l00024"></a>00024         <span class="keywordflow">return</span> ReturnValue();
+<a name="l00024"></a>00024         <span class="keywordflow">return</span> ReturnType();
 <a name="l00025"></a>00025     }
 <a name="l00026"></a>00026 };
 <a name="l00027"></a>00027 
Added: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/calculate__sum_8hpp.html
==============================================================================
--- (empty file)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/calculate__sum_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -0,0 +1,75 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Generic Geometry Library</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head>
+<body style="background-image: url(images/draft.png);">
+
+<table cellpadding="2" width="100%">
+<tbody>
+<tr>
+<td valign="top">
+<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
+  
+</td>
+<td valign="top" align="right">
+<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
+</td>
+</tr>
+</tbody>
+</table>
+<!-- Generated by Doxygen 1.5.9 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li>Main Page</li>
+      <li>Related Pages</li>
+      <li>Modules</li>
+      <li>Namespaces</li>
+      <li>Classes</li>
+      <li class="current">Files</li>
+      <li>Examples</li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li>File List</li>
+      <li>File Members</li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+<h1>ggl/algorithms/detail/calculate_sum.hpp File Reference</h1>
+<p>
+Go to the source code of this file.<table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Namespaces</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl.html">ggl</a></td></tr>
+
+</table>
+</div>
+<hr size="1">
+<table width="100%">
+<tbody>
+<tr>
+<td align="left"><small>
+<p>October 13, 2009</p>
+</small></td>
+<td align="right">
+<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
+Copyright © 2008-2009 Bruno Lalande, Paris<br>
+Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
+</small>
+</td>
+</tr>
+</tbody>
+</table>
+
+<address style="text-align: right;"><small>
+Documentation is generated by Doxygen
+</small></address>
+</body>
+</html>
Added: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/calculate__sum_8hpp_source.html
==============================================================================
--- (empty file)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/calculate__sum_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -0,0 +1,116 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Generic Geometry Library</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head>
+<body style="background-image: url(images/draft.png);">
+
+<table cellpadding="2" width="100%">
+<tbody>
+<tr>
+<td valign="top">
+<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
+  
+</td>
+<td valign="top" align="right">
+<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
+</td>
+</tr>
+</tbody>
+</table>
+<!-- Generated by Doxygen 1.5.9 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li>Main Page</li>
+      <li>Related Pages</li>
+      <li>Modules</li>
+      <li>Namespaces</li>
+      <li>Classes</li>
+      <li class="current">Files</li>
+      <li>Examples</li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li>File List</li>
+      <li>File Members</li>
+    </ul>
+  </div>
+<h1>ggl/algorithms/detail/calculate_sum.hpp</h1>Go to the documentation of this file.<div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">// Generic Geometry Library</span>
+<a name="l00002"></a>00002 <span class="comment">//</span>
+<a name="l00003"></a>00003 <span class="comment">// Copyright Barend Gehrels 1995-2009, Geodan Holding B.V. Amsterdam, the Netherlands.</span>
+<a name="l00004"></a>00004 <span class="comment">// Use, modification and distribution is subject to the Boost Software License,</span>
+<a name="l00005"></a>00005 <span class="comment">// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at</span>
+<a name="l00006"></a>00006 <span class="comment">// http://www.boost.org/LICENSE_1_0.txt)</span>
+<a name="l00007"></a>00007 
+<a name="l00008"></a>00008 <span class="preprocessor">#ifndef GGL_ALGORITHMS_DETAIL_CALCULATE_SUM_HPP</span>
+<a name="l00009"></a>00009 <span class="preprocessor"></span><span class="preprocessor">#define GGL_ALGORITHMS_DETAIL_CALCULATE_SUM_HPP</span>
+<a name="l00010"></a>00010 <span class="preprocessor"></span>
+<a name="l00011"></a>00011 <span class="keyword">namespace </span>ggl
+<a name="l00012"></a>00012 {
+<a name="l00013"></a>00013 
+<a name="l00014"></a>00014 <span class="preprocessor">#ifndef DOXYGEN_NO_DETAIL</span>
+<a name="l00015"></a>00015 <span class="preprocessor"></span><span class="keyword">namespace </span>detail
+<a name="l00016"></a>00016 {
+<a name="l00017"></a>00017 
+<a name="l00018"></a>00018 
+<a name="l00019"></a>00019 <span class="keyword">template</span>
+<a name="l00020"></a>00020 <
+<a name="l00021"></a>00021     <span class="keyword">typename</span> ReturnType,
+<a name="l00022"></a>00022     <span class="keyword">typename</span> Polygon,
+<a name="l00023"></a>00023     <span class="keyword">typename</span> Strategy,
+<a name="l00024"></a>00024     <span class="keyword">typename</span> Policy
+<a name="l00025"></a>00025 >
+<a name="l00026"></a>00026 <span class="keyword">struct </span>calculate_polygon_sum
+<a name="l00027"></a>00027 {
+<a name="l00028"></a>00028     <span class="keyword">static</span> <span class="keyword">inline</span> ReturnType apply(Polygon <span class="keyword">const</span>& poly, Strategy <span class="keyword">const</span>& strategy)
+<a name="l00029"></a>00029     {
+<a name="l00030"></a>00030         ReturnType sum = Policy::apply(<a class="code" href="group__access.html#gf92470d0612da7f0e118d296e7fcfe01" title="Function to get the exterior_ring ring of a polygon.">exterior_ring</a>(poly), strategy);
+<a name="l00031"></a>00031 
+<a name="l00032"></a>00032         <span class="keywordflow">for</span> (<span class="keyword">typename</span> boost::range_const_iterator
+<a name="l00033"></a>00033                 <
+<a name="l00034"></a>00034                     <span class="keyword">typename</span> interior_type<Polygon>::type
+<a name="l00035"></a>00035                 >::type it = boost::begin(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly));
+<a name="l00036"></a>00036              it != boost::end(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly));
+<a name="l00037"></a>00037              ++it)
+<a name="l00038"></a>00038         {
+<a name="l00039"></a>00039             sum += Policy::apply(*it, strategy);
+<a name="l00040"></a>00040         }
+<a name="l00041"></a>00041         <span class="keywordflow">return</span> sum;
+<a name="l00042"></a>00042     }
+<a name="l00043"></a>00043 };
+<a name="l00044"></a>00044 
+<a name="l00045"></a>00045 
+<a name="l00046"></a>00046 } <span class="comment">// namespace detail</span>
+<a name="l00047"></a>00047 <span class="preprocessor">#endif // DOXYGEN_NO_DETAIL</span>
+<a name="l00048"></a>00048 <span class="preprocessor"></span>
+<a name="l00049"></a>00049 } <span class="comment">// namespace ggl</span>
+<a name="l00050"></a>00050 
+<a name="l00051"></a>00051 <span class="preprocessor">#endif // GGL_ALGORITHMS_DETAIL_CALCULATE_SUM_HPP</span>
+</pre></div></div>
+<hr size="1">
+<table width="100%">
+<tbody>
+<tr>
+<td align="left"><small>
+<p>October 13, 2009</p>
+</small></td>
+<td align="right">
+<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
+Copyright © 2008-2009 Bruno Lalande, Paris<br>
+Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
+</small>
+</td>
+</tr>
+</tbody>
+</table>
+
+<address style="text-align: right;"><small>
+Documentation is generated by Doxygen
+</small></address>
+</body>
+</html>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cart__area_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cart__area_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cart__area_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -63,7 +63,7 @@
 <a name="l00021"></a>00021 {
 <a name="l00022"></a>00022 <span class="keyword">namespace </span>strategy
 <a name="l00023"></a>00023 {
-<a name="l00024"></a><a class="code" href="namespaceggl_1_1strategy_1_1area.html">00024</a>     <span class="keyword">namespace </span><a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">area</a>
+<a name="l00024"></a><a class="code" href="namespaceggl_1_1strategy_1_1area.html">00024</a>     <span class="keyword">namespace </span><a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">area</a>
 <a name="l00025"></a>00025     {
 <a name="l00026"></a>00026 
 <a name="l00034"></a>00034         <span class="keyword">template</span><<span class="keyword">typename</span> PS, <span class="keyword">typename</span> CalculationType = <span class="keywordtype">void</span>>
@@ -97,7 +97,7 @@
 <a name="l00062"></a>00062                         <span class="comment">// Currently only 2D areas are supported</span>
 <a name="l00063"></a>00063                         assert_dimension<PS, 2>();
 <a name="l00064"></a>00064                     }
-<a name="l00065"></a>00065                     <span class="keyword">inline</span> <a class="code" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#f2ef55e9d5310d400a6e43a25f6c989d">return_type</a> <a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">area</a>()<span class="keyword"> const</span>
+<a name="l00065"></a>00065                     <span class="keyword">inline</span> <a class="code" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#f2ef55e9d5310d400a6e43a25f6c989d">return_type</a> <a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">area</a>()<span class="keyword"> const</span>
 <a name="l00066"></a>00066 <span class="keyword">                    </span>{
 <a name="l00067"></a>00067                         <a class="code" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#f2ef55e9d5310d400a6e43a25f6c989d">return_type</a> result = sum;
 <a name="l00068"></a>00068                         result *= 0.5;
@@ -108,7 +108,7 @@
 <a name="l00073"></a>00073             <span class="keyword">public</span> :
 <a name="l00074"></a><a class="code" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#b8c68b50c6f0909ab64c6c97f4dd8ea4">00074</a>                 <span class="keyword">typedef</span> summation <a class="code" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#b8c68b50c6f0909ab64c6c97f4dd8ea4">state_type</a>;
 <a name="l00075"></a>00075 
-<a name="l00076"></a><a class="code" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#44a2feaa28620a60ce740cfad2374894">00076</a>                 <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#44a2feaa28620a60ce740cfad2374894">operator()</a>(<a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment<const PS></a> <span class="keyword">const</span>& s,
+<a name="l00076"></a><a class="code" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#44a2feaa28620a60ce740cfad2374894">00076</a>                 <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#44a2feaa28620a60ce740cfad2374894">operator()</a>(<a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment<const PS></a> <span class="keyword">const</span>& s,
 <a name="l00077"></a>00077                             <a class="code" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#b8c68b50c6f0909ab64c6c97f4dd8ea4">state_type</a>& state)<span class="keyword"> const</span>
 <a name="l00078"></a>00078 <span class="keyword">                </span>{
 <a name="l00079"></a>00079                     <span class="comment">// SUM += x2 * y1 - x1 * y2;</span>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cart__centroid_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cart__centroid_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cart__centroid_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -109,7 +109,7 @@
 <a name="l00077"></a>00077 
 <a name="l00078"></a>00078             <span class="keyword">public</span> :
 <a name="l00079"></a><a class="code" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html#1dd6664e9b804f79ad472e51501568c8">00079</a>                 <span class="keyword">typedef</span> sums <a class="code" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html#1dd6664e9b804f79ad472e51501568c8">state_type</a>;
-<a name="l00080"></a><a class="code" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html#2b418413c02d508b0f570efff0102ff6">00080</a>                 <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html#2b418413c02d508b0f570efff0102ff6">operator()</a>(<span class="keyword">const</span> <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment<const PS></a>& s, <a class="code" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html#1dd6664e9b804f79ad472e51501568c8">state_type</a>& state)<span class="keyword"> const</span>
+<a name="l00080"></a><a class="code" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html#2b418413c02d508b0f570efff0102ff6">00080</a>                 <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html#2b418413c02d508b0f570efff0102ff6">operator()</a>(<span class="keyword">const</span> <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment<const PS></a>& s, <a class="code" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html#1dd6664e9b804f79ad472e51501568c8">state_type</a>& state)<span class="keyword"> const</span>
 <a name="l00081"></a>00081 <span class="keyword">                </span>{
 <a name="l00082"></a>00082                     <span class="comment">/* Algorithm:</span>
 <a name="l00083"></a>00083 <span class="comment">                    For each segment:</span>
@@ -129,9 +129,9 @@
 <a name="l00097"></a>00097 <span class="comment">                    return POINT(0.5 * sum_msx / sum_mx, 0.5 * sum_msy / sum_my);</span>
 <a name="l00098"></a>00098 <span class="comment">                    */</span>
 <a name="l00099"></a>00099 
-<a name="l00100"></a>00100                     PS diff = s.<a class="code" href="structggl_1_1segment.html#e5aea8fdfbd0e0dece9b227a8a5cec33">second</a>, sum = s.<a class="code" href="structggl_1_1segment.html#e5aea8fdfbd0e0dece9b227a8a5cec33">second</a>;
-<a name="l00101"></a>00101                     <a class="code" href="group__arithmetic.html#g7c04cab8a69747a37549b75aefc227f9" title="Subtracts a point to another.">subtract_point</a>(diff, s.<a class="code" href="structggl_1_1segment.html#3f8aa8a3542ebf499e4987ef3ccfd5b1">first</a>);
-<a name="l00102"></a>00102                     <a class="code" href="group__arithmetic.html#g3be737bb0f230fe9349df97e4c7ff09f" title="Adds a point to another.">add_point</a>(sum, s.<a class="code" href="structggl_1_1segment.html#3f8aa8a3542ebf499e4987ef3ccfd5b1">first</a>);
+<a name="l00100"></a>00100                     PS diff = s.<a class="code" href="classggl_1_1segment.html#543b3806df8d74067157587323917a71">second</a>, sum = s.<a class="code" href="classggl_1_1segment.html#543b3806df8d74067157587323917a71">second</a>;
+<a name="l00101"></a>00101                     <a class="code" href="group__arithmetic.html#g7c04cab8a69747a37549b75aefc227f9" title="Subtracts a point to another.">subtract_point</a>(diff, s.<a class="code" href="classggl_1_1segment.html#76c7f18dd19699ccb7353137b8981c65">first</a>);
+<a name="l00102"></a>00102                     <a class="code" href="group__arithmetic.html#g3be737bb0f230fe9349df97e4c7ff09f" title="Adds a point to another.">add_point</a>(sum, s.<a class="code" href="classggl_1_1segment.html#76c7f18dd19699ccb7353137b8981c65">first</a>);
 <a name="l00103"></a>00103 
 <a name="l00104"></a>00104                     <span class="comment">// We might create an arithmatic operation for this.</span>
 <a name="l00105"></a>00105                     PS m;
@@ -222,7 +222,7 @@
 <a name="l00246"></a>00246             <span class="keyword">public</span> :
 <a name="l00247"></a><a class="code" href="classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html#c9134908bec29b94168f6d733a6b2c89">00247</a>                 <span class="keyword">typedef</span> sums <a class="code" href="classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html#c9134908bec29b94168f6d733a6b2c89">state_type</a>;
 <a name="l00248"></a>00248 
-<a name="l00249"></a><a class="code" href="classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html#328f86d7cd18dbaa435df19c924f98fe">00249</a>                 <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html#328f86d7cd18dbaa435df19c924f98fe">operator()</a>(<a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment<const SegmentPointType></a> <span class="keyword">const</span>& s, <a class="code" href="classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html#c9134908bec29b94168f6d733a6b2c89">state_type</a>& state)<span class="keyword"> const</span>
+<a name="l00249"></a><a class="code" href="classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html#328f86d7cd18dbaa435df19c924f98fe">00249</a>                 <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html#328f86d7cd18dbaa435df19c924f98fe">operator()</a>(<a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment<const SegmentPointType></a> <span class="keyword">const</span>& s, <a class="code" href="classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html#c9134908bec29b94168f6d733a6b2c89">state_type</a>& state)<span class="keyword"> const</span>
 <a name="l00250"></a>00250 <span class="keyword">                </span>{
 <a name="l00251"></a>00251                     <span class="comment">/* Algorithm:</span>
 <a name="l00252"></a>00252 <span class="comment">                    For each segment:</span>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cart__distance_8hpp.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cart__distance_8hpp.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cart__distance_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -52,7 +52,7 @@
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Strategy for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a>: <a class="el" href="structggl_1_1strategy_1_1distance_1_1pythagoras.html" title="Strategy for distance point to point: pythagoras.">pythagoras</a>.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1strategy_1_1distance_1_1xy__point__segment.html">ggl::strategy::distance::xy_point_segment< P, Segment, Strategy ></a></td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Strategy for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>.  More...<br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Strategy for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1strategy__tag_3_01strategy_1_1distance_1_1pythagoras_3_01_p1_00_01_p2_01_4_01_4.html">ggl::strategy_tag< strategy::distance::pythagoras< P1, P2 > ></a></td></tr>
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1strategy__tag_3_01strategy_1_1distance_1_1xy__point__segment_3_01_point_00_01_segment_00_01_p_p_strategy_01_4_01_4.html">ggl::strategy_tag< strategy::distance::xy_point_segment< Point, Segment, PPStrategy > ></a></td></tr>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cart__side_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cart__side_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cart__side_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -75,7 +75,7 @@
 <a name="l00033"></a>00033             <span class="comment">// left of segment (> 0), right of segment (< 0), on segment (0)</span>
 <a name="l00034"></a>00034             <span class="comment">// In fact this is twice the area of a triangle</span>
 <a name="l00035"></a>00035             <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1select__coordinate__type.html" title="Utility selecting the most precise coordinate type of two geometries.">select_coordinate_type<P, PS>::type</a>
-<a name="l00036"></a><a class="code" href="structggl_1_1strategy_1_1side_1_1xy__side.html#b35869205a5eefee505f491bc1a53f4a">00036</a>                 <a class="code" href="structggl_1_1strategy_1_1side_1_1xy__side.html#b35869205a5eefee505f491bc1a53f4a">side</a>(<span class="keyword">const</span> <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment<const PS></a>& s, <span class="keyword">const</span> P& p)
+<a name="l00036"></a><a class="code" href="structggl_1_1strategy_1_1side_1_1xy__side.html#b35869205a5eefee505f491bc1a53f4a">00036</a>                 <a class="code" href="structggl_1_1strategy_1_1side_1_1xy__side.html#b35869205a5eefee505f491bc1a53f4a">side</a>(<span class="keyword">const</span> <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment<const PS></a>& s, <span class="keyword">const</span> P& p)
 <a name="l00037"></a>00037             {
 <a name="l00038"></a>00038                 <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1select__coordinate__type.html" title="Utility selecting the most precise coordinate type of two geometries.">select_coordinate_type<P, PS>::type</a> T;
 <a name="l00039"></a>00039 
@@ -90,7 +90,7 @@
 <a name="l00048"></a>00048 
 <a name="l00049"></a><a class="code" href="structggl_1_1strategy_1_1side_1_1xy__side.html#ef3dcea77c310bdd72a534539ef72edd">00049</a>             <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code" href="structggl_1_1strategy_1_1side_1_1xy__side.html#b35869205a5eefee505f491bc1a53f4a">side</a>(<span class="keyword">const</span> P& p0, <span class="keyword">const</span> P& p1, <span class="keyword">const</span> P& p2)
 <a name="l00050"></a>00050             {
-<a name="l00051"></a>00051                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<P>::type</a> s = <a class="code" href="structggl_1_1strategy_1_1side_1_1xy__side.html#b35869205a5eefee505f491bc1a53f4a">side</a>(<a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment<const P></a>(p0, p1), p2);
+<a name="l00051"></a>00051                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<P>::type</a> s = <a class="code" href="structggl_1_1strategy_1_1side_1_1xy__side.html#b35869205a5eefee505f491bc1a53f4a">side</a>(<a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment<const P></a>(p0, p1), p2);
 <a name="l00052"></a>00052                 <span class="keywordflow">return</span> s > 0 ? 1 : s < 0 ? -1 : 0;
 <a name="l00053"></a>00053             }
 <a name="l00054"></a>00054         };
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cart__within_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cart__within_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cart__within_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -85,7 +85,7 @@
 <a name="l00054"></a>00054 
 <a name="l00055"></a><a class="code" href="structggl_1_1strategy_1_1within_1_1franklin.html#ae1dd9c468a086bdaaa4b1235fc26bce">00055</a>                 <span class="keyword">typedef</span> crossings <a class="code" href="structggl_1_1strategy_1_1within_1_1franklin.html#ae1dd9c468a086bdaaa4b1235fc26bce">state_type</a>;
 <a name="l00056"></a>00056 
-<a name="l00057"></a><a class="code" href="structggl_1_1strategy_1_1within_1_1franklin.html#bc36ab444ff56273a4536af3f3d4a281">00057</a>                 <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="structggl_1_1strategy_1_1within_1_1franklin.html#bc36ab444ff56273a4536af3f3d4a281">operator()</a>(<span class="keyword">const</span> <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment<const PS></a>& s, <a class="code" href="structggl_1_1strategy_1_1within_1_1franklin.html#ae1dd9c468a086bdaaa4b1235fc26bce">state_type</a>& state)<span class="keyword"> const</span>
+<a name="l00057"></a><a class="code" href="structggl_1_1strategy_1_1within_1_1franklin.html#bc36ab444ff56273a4536af3f3d4a281">00057</a>                 <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="structggl_1_1strategy_1_1within_1_1franklin.html#bc36ab444ff56273a4536af3f3d4a281">operator()</a>(<span class="keyword">const</span> <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment<const PS></a>& s, <a class="code" href="structggl_1_1strategy_1_1within_1_1franklin.html#ae1dd9c468a086bdaaa4b1235fc26bce">state_type</a>& state)<span class="keyword"> const</span>
 <a name="l00058"></a>00058 <span class="keyword">                </span>{
 <a name="l00059"></a>00059                     <span class="comment">/* Algorithm:</span>
 <a name="l00060"></a>00060 <span class="comment">                    if (</span>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cartesian2d_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cartesian2d_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/cartesian2d_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -63,7 +63,7 @@
 <a name="l00021"></a><a class="code" href="namespaceggl.html#c40046fcbfc818fa12cc1e73e26e260b">00021</a> <span class="keyword">typedef</span> <a class="code" href="classggl_1_1linear__ring.html" title="A linear_ring (linear linear_ring) is a closed line which should not be selfintersecting...">linear_ring<point_2d></a> <a class="code" href="classggl_1_1linear__ring.html" title="A linear_ring (linear linear_ring) is a closed line which should not be selfintersecting...">ring_2d</a>;
 <a name="l00022"></a><a class="code" href="namespaceggl.html#9b5c5324bc541d70c4ba3451be8a3365">00022</a> <span class="keyword">typedef</span> <a class="code" href="classggl_1_1polygon.html" title="The polygon contains an outer ring and zero or more inner rings.">polygon<point_2d></a> <a class="code" href="classggl_1_1polygon.html" title="The polygon contains an outer ring and zero or more inner rings.">polygon_2d</a>;
 <a name="l00023"></a><a class="code" href="namespaceggl.html#0d9610ad977d0764a37b8e9f6ca94b30">00023</a> <span class="keyword">typedef</span> <a class="code" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box<point_2d></a> <a class="code" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box_2d</a>;
-<a name="l00024"></a><a class="code" href="namespaceggl.html#51ce3d75ac1988b5ed73cb3598da522b">00024</a> <span class="keyword">typedef</span> <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment<point_2d></a> <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment_2d</a>;
+<a name="l00024"></a><a class="code" href="namespaceggl.html#51ce3d75ac1988b5ed73cb3598da522b">00024</a> <span class="keyword">typedef</span> <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment<point_2d></a> <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment_2d</a>;
 <a name="l00025"></a><a class="code" href="namespaceggl.html#311770c599e6440d3890b7ff4c651af6">00025</a> <span class="keyword">typedef</span> <a class="code" href="classggl_1_1nsphere.html" title="Class nsphere: defines a circle or a sphere: a point with radius.">nsphere<point_2d, double></a> <a class="code" href="classggl_1_1nsphere.html" title="Class nsphere: defines a circle or a sphere: a point with radius.">circle</a>;
 <a name="l00026"></a>00026 
 <a name="l00027"></a>00027 } <span class="comment">// namespace ggl</span>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classes.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classes.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classes.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -46,13 +46,13 @@
 <h1>Class Index</h1><p><div class="qindex"><a class="qindex" href="#letter_A">A</a> | <a class="qindex" href="#letter_B">B</a> | <a class="qindex" href="#letter_C">C</a> | <a class="qindex" href="#letter_D">D</a> | <a class="qindex" href="#letter_E">E</a> | <a class="qindex" href="#letter_F">F</a> | <a class="qindex" href="#letter_G">G</a> | <a class="qindex" href="#letter_H">H</a> | <a class="qindex" href="#letter_I">I</a> | <a class="qindex" href="#letter_L">L</a> | <a class="qindex" href="#letter_M">M</a> | <a class="qindex" href="#letter_N">N</a> | <a class="qindex" href="#letter_P">P</a> | <a class="qindex" href="#letter_R">R</a> | <a class="qindex" href="#letter_S">S</a> | <a class="qindex" href="#letter_T">T</a> | <a class="qindex" href="#letter_U">U</a> | <a class="qindex" href="#letter_V">V</a> | <a class="qindex" href="#
letter_W">W</a> | <a class="qindex" href="#letter_X">X</a></div><p>
 <table align="center" width="95%" border="0" cellspacing="0" cellpadding="0">
 <tr><td><a name="letter_A"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">  A  </div></td></tr></table>
-</td><td><a class="el" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html">geolib1995</a> (<a class="el" href="namespaceggl_1_1strategy_1_1centroid.html">ggl::strategy::centroid</a>)   </td><td><a class="el" href="structggl_1_1strategy_1_1transform_1_1rotate__transformer.html">rotate_transformer</a> (<a class="el" href="namespaceggl_1_1strategy_1_1transform.html">ggl::strategy::transform</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1traits_1_1access.html">access</a> (<a class="el" href="namespaceggl_1_1traits.html">ggl::traits</a>)   </td><td><a class="el" href="structggl_1_1geometry__collection__tag.html">geometry_collection_tag</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a name="letter_S"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">  S  </div></td></tr></table>
-</td></tr><tr><td><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html">access< ggl::detail::intersection::intersection_point< P > ></a> (<a class="el" href="namespaceggl_1_1traits.html">ggl::traits</a>)   </td><td><a class="el" href="structggl_1_1geometry__id.html">geometry_id</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1strategy_1_1transform_1_1scale__transformer.html">scale_transformer</a> (<a class="el" href="namespaceggl_1_1strategy_1_1transform.html">ggl::strategy::transform</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1traits_1_1append__point.html">append_point</a> (<a class="el" href="namespaceggl_1_1traits.html">ggl::traits</a>)   </td><td><a class="el" href="structggl_1_1geometry__not__recognized__tag.html">geometry_not_recognized_tag</a> (<a class="el" href="namespaceggl.html">ggl</a>)&nb
sp;  </td><td><a class="el" href="structggl_1_1strategy_1_1transform_1_1scale__transformer_3_01_p1_00_01_p2_00_012_00_012_01_4.html">scale_transformer< P1, P2, 2, 2 ></a> (<a class="el" href="namespaceggl_1_1strategy_1_1transform.html">ggl::strategy::transform</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1area__result.html">area_result</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="classggl_1_1strategy_1_1convex__hull_1_1graham.html">graham</a> (<a class="el" href="namespaceggl_1_1strategy_1_1convex__hull.html">ggl::strategy::convex_hull</a>)   </td><td><a class="el" href="structggl_1_1strategy_1_1transform_1_1scale__transformer_3_01_p1_00_01_p2_00_013_00_013_01_4.html">scale_transformer< P1, P2, 3, 3 ></a> (<a class="el" href="namespaceggl_1_1strategy_1_1transform.html">ggl::strategy::transform</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1as__range__type.html">as_ra
nge_type</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1strategy_1_1envelope_1_1grow__ll.html">grow_ll</a> (<a class="el" href="namespaceggl_1_1strategy_1_1envelope.html">ggl::strategy::envelope</a>)   </td><td><a class="el" href="structggl_1_1section.html">section</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a name="letter_B"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">  B  </div></td></tr></table>
+</td><td><a class="el" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html">geolib1995</a> (<a class="el" href="namespaceggl_1_1strategy_1_1centroid.html">ggl::strategy::centroid</a>)   </td><td><a name="letter_S"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">  S  </div></td></tr></table>
+</td></tr><tr><td><a class="el" href="structggl_1_1traits_1_1access.html">access</a> (<a class="el" href="namespaceggl_1_1traits.html">ggl::traits</a>)   </td><td><a class="el" href="structggl_1_1geometry__collection__tag.html">geometry_collection_tag</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1strategy_1_1transform_1_1scale__transformer.html">scale_transformer</a> (<a class="el" href="namespaceggl_1_1strategy_1_1transform.html">ggl::strategy::transform</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html">access< ggl::detail::intersection::intersection_point< P >, Dimension ></a> (<a class="el" href="namespaceggl_1_1traits.html">ggl::traits</a>)   </td><td><a class="el" href="structggl_1_1geometry__id.html">geometry_id</a> (<a class="el" href="namespaceggl.html">ggl</a
>)   </td><td><a class="el" href="structggl_1_1strategy_1_1transform_1_1scale__transformer_3_01_p1_00_01_p2_00_012_00_012_01_4.html">scale_transformer< P1, P2, 2, 2 ></a> (<a class="el" href="namespaceggl_1_1strategy_1_1transform.html">ggl::strategy::transform</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1traits_1_1append__point.html">append_point</a> (<a class="el" href="namespaceggl_1_1traits.html">ggl::traits</a>)   </td><td><a class="el" href="structggl_1_1geometry__not__recognized__tag.html">geometry_not_recognized_tag</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1strategy_1_1transform_1_1scale__transformer_3_01_p1_00_01_p2_00_013_00_013_01_4.html">scale_transformer< P1, P2, 3, 3 ></a> (<a class="el" href="namespaceggl_1_1strategy_1_1transform.html">ggl::strategy::transform</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1area__result.html">area_r
esult</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="classggl_1_1strategy_1_1convex__hull_1_1graham.html">graham</a> (<a class="el" href="namespaceggl_1_1strategy_1_1convex__hull.html">ggl::strategy::convex_hull</a>)   </td><td><a class="el" href="structggl_1_1section.html">section</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1as__range__type.html">as_range_type</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1strategy_1_1envelope_1_1grow__ll.html">grow_ll</a> (<a class="el" href="namespaceggl_1_1strategy_1_1envelope.html">ggl::strategy::envelope</a>)   </td><td><a class="el" href="structggl_1_1sections.html">sections</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a name="letter_B"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div cla
ss="ah">  B  </div></td></tr></table>
 </td><td><a name="letter_H"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">  H  </div></td></tr></table>
-</td><td><a class="el" href="structggl_1_1sections.html">sections</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html">bashein_detmer</a> (<a class="el" href="namespaceggl_1_1strategy_1_1centroid.html">ggl::strategy::centroid</a>)   </td><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html">haversine</a> (<a class="el" href="namespaceggl_1_1strategy_1_1distance.html">ggl::strategy::distance</a>)   </td><td><a class="el" href="structggl_1_1segment.html">segment</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1concept_1_1_box.html">Box</a> (<a class="el" href="namespaceggl_1_1concept.html">ggl::concept</a>)   </td><td><a name="letter_I"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">  I  </div></td></tr></table>
-</td><td><a class="el" href="structggl_1_1concept_1_1_segment.html">Segment</a> (<a class="el" href="namespaceggl_1_1concept.html">ggl::concept</a>)   </td></tr><tr><td><a class="el" href="classggl_1_1box.html">box</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1traits_1_1indexed__access.html">indexed_access</a> (<a class="el" href="namespaceggl_1_1traits.html">ggl::traits</a>)   </td><td><a class="el" href="structggl_1_1segment__identifier.html">segment_identifier</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1box__tag.html">box_tag</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1traits_1_1interior__rings.html">interior_rings</a> (<a class="el" href="namespaceggl_1_1traits.html">ggl::traits</a>)   </td><td><a class="el" href="structggl_1_1segment__intersection__po
ints.html">segment_intersection_points</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html">by_spherical_excess</a> (<a class="el" href="namespaceggl_1_1strategy_1_1area.html">ggl::strategy::area</a>)   </td><td><a class="el" href="structggl_1_1traits_1_1interior__type.html">interior_type</a> (<a class="el" href="namespaceggl_1_1traits.html">ggl::traits</a>)   </td><td><a class="el" href="structggl_1_1segment__iterator.html">segment_iterator</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="classggl_1_1strategy_1_1area_1_1by__triangles.html">by_triangles</a> (<a class="el" href="namespaceggl_1_1strategy_1_1area.html">ggl::strategy::area</a>)   </td><td><a class="el" href="structggl_1_1interior__type.html">interior_type</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><
td><a class="el" href="structggl_1_1segment__tag.html">segment_tag</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a name="letter_C"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">  C  </div></td></tr></table>
-</td><td><a class="el" href="structggl_1_1strategy_1_1transform_1_1inverse__transformer.html">inverse_transformer</a> (<a class="el" href="namespaceggl_1_1strategy_1_1transform.html">ggl::strategy::transform</a>)   </td><td><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html">segments_de9im</a> (<a class="el" href="namespaceggl_1_1policies_1_1relate.html">ggl::policies::relate</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1cs_1_1cartesian.html">cartesian</a> (<a class="el" href="namespaceggl_1_1cs.html">ggl::cs</a>)   </td><td><a class="el" href="structggl_1_1is__linear.html">is_linear</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html">segments_direction</a> (<a class="el" href="namespaceggl_1_1policies_1_1relate.html">ggl::policies::relate</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1cartesian
__distance.html">cartesian_distance</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1is__multi.html">is_multi</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html">segments_intersection_points</a> (<a class="el" href="namespaceggl_1_1policies_1_1relate.html">ggl::policies::relate</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1cartesian__tag.html">cartesian_tag</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1is__radian.html">is_radian</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html">segments_tupled</a> (<a class="el" href="namespaceggl_1_1policies_1_1relate.html">ggl::policies::relate</a>)   </td></tr><tr><td><a class="el" 
href="classggl_1_1centroid__exception.html">centroid_exception</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a name="letter_L"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">  L  </div></td></tr></table>
-</td><td><a class="el" href="structggl_1_1select__coordinate__type.html">select_coordinate_type</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1circular__iterator.html">circular_iterator</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1less.html">less</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1select__most__precise.html">select_most_precise</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1traits_1_1clear.html">clear</a> (<a class="el" href="namespaceggl_1_1traits.html">ggl::traits</a>)   </td><td><a class="el" href="classggl_1_1strategy_1_1intersection_1_1liang__barsky.html">liang_barsky</a> (<a class="el" href="namespaceggl_1_1strategy_1_1intersection.html">ggl::strategy::intersection</a>)   </td><td><a c
lass="el" href="structggl_1_1strategy_1_1envelope_1_1shift_1_1shifted.html">shifted</a> (<a class="el" href="namespaceggl_1_1strategy_1_1envelope_1_1shift.html">ggl::strategy::envelope::shift</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1strategy_1_1envelope_1_1combine__xy.html">combine_xy</a> (<a class="el" href="namespaceggl_1_1strategy_1_1envelope.html">ggl::strategy::envelope</a>)   </td><td><a class="el" href="classggl_1_1linear__ring.html">linear_ring</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1strategy_1_1envelope_1_1shift_1_1shifted_3_01degree_01_4.html">shifted< degree ></a> (<a class="el" href="namespaceggl_1_1strategy_1_1envelope_1_1shift.html">ggl::strategy::envelope::shift</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1concept_1_1_const_box.html">ConstBox</a> (<a class="el" href="namespaceggl_1_1concept.html">ggl::concept</a>)   </td><td><a 
class="el" href="classggl_1_1linestring.html">linestring</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1strategy_1_1envelope_1_1shift_1_1shifted_3_01radian_01_4.html">shifted< radian ></a> (<a class="el" href="namespaceggl_1_1strategy_1_1envelope_1_1shift.html">ggl::strategy::envelope::shift</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1concept_1_1_const_linestring.html">ConstLinestring</a> (<a class="el" href="namespaceggl_1_1concept.html">ggl::concept</a>)   </td><td><a class="el" href="structggl_1_1concept_1_1_linestring.html">Linestring</a> (<a class="el" href="namespaceggl_1_1concept.html">ggl::concept</a>)   </td><td><a class="el" href="structggl_1_1concept_1_1_simplify_strategy.html">SimplifyStrategy</a> (<a class="el" href="namespaceggl_1_1concept.html">ggl::concept</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1concept_1_1_const_nsphere.html">Const
Nsphere</a> (<a class="el" href="namespaceggl_1_1concept.html">ggl::concept</a>)   </td><td><a class="el" href="structggl_1_1linestring__tag.html">linestring_tag</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1cs_1_1spherical.html">spherical</a> (<a class="el" href="namespaceggl_1_1cs.html">ggl::cs</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1concept_1_1_const_point.html">ConstPoint</a> (<a class="el" href="namespaceggl_1_1concept.html">ggl::concept</a>)   </td><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html">ll_point_segment</a> (<a class="el" href="namespaceggl_1_1strategy_1_1distance.html">ggl::strategy::distance</a>)   </td><td><a class="el" href="structggl_1_1spherical__tag.html">spherical_tag</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1concept_1_1_const_pol
ygon.html">ConstPolygon</a> (<a class="el" href="namespaceggl_1_1concept.html">ggl::concept</a>)   </td><td><a name="letter_M"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">  M  </div></td></tr></table>
+</td><td><a class="el" href="classggl_1_1segment.html">segment</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html">bashein_detmer</a> (<a class="el" href="namespaceggl_1_1strategy_1_1centroid.html">ggl::strategy::centroid</a>)   </td><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html">haversine</a> (<a class="el" href="namespaceggl_1_1strategy_1_1distance.html">ggl::strategy::distance</a>)   </td><td><a class="el" href="structggl_1_1concept_1_1_segment.html">Segment</a> (<a class="el" href="namespaceggl_1_1concept.html">ggl::concept</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1concept_1_1_box.html">Box</a> (<a class="el" href="namespaceggl_1_1concept.html">ggl::concept</a>)   </td><td><a name="letter_I"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">  I &
nbsp;</div></td></tr></table>
+</td><td><a class="el" href="structggl_1_1segment__identifier.html">segment_identifier</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="classggl_1_1box.html">box</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1traits_1_1indexed__access.html">indexed_access</a> (<a class="el" href="namespaceggl_1_1traits.html">ggl::traits</a>)   </td><td><a class="el" href="structggl_1_1segment__intersection__points.html">segment_intersection_points</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1box__tag.html">box_tag</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1traits_1_1interior__rings.html">interior_rings</a> (<a class="el" href="namespaceggl_1_1traits.html">ggl::traits</a>)   </td><td><a class="el" href="structggl_1_1segment__iterat
or.html">segment_iterator</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html">by_spherical_excess</a> (<a class="el" href="namespaceggl_1_1strategy_1_1area.html">ggl::strategy::area</a>)   </td><td><a class="el" href="structggl_1_1traits_1_1interior__type.html">interior_type</a> (<a class="el" href="namespaceggl_1_1traits.html">ggl::traits</a>)   </td><td><a class="el" href="structggl_1_1segment__tag.html">segment_tag</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="classggl_1_1strategy_1_1area_1_1by__triangles.html">by_triangles</a> (<a class="el" href="namespaceggl_1_1strategy_1_1area.html">ggl::strategy::area</a>)   </td><td><a class="el" href="structggl_1_1interior__type.html">interior_type</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="
structggl_1_1policies_1_1relate_1_1segments__de9im.html">segments_de9im</a> (<a class="el" href="namespaceggl_1_1policies_1_1relate.html">ggl::policies::relate</a>)   </td></tr><tr><td><a name="letter_C"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">  C  </div></td></tr></table>
+</td><td><a class="el" href="structggl_1_1strategy_1_1transform_1_1inverse__transformer.html">inverse_transformer</a> (<a class="el" href="namespaceggl_1_1strategy_1_1transform.html">ggl::strategy::transform</a>)   </td><td><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html">segments_direction</a> (<a class="el" href="namespaceggl_1_1policies_1_1relate.html">ggl::policies::relate</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1cs_1_1cartesian.html">cartesian</a> (<a class="el" href="namespaceggl_1_1cs.html">ggl::cs</a>)   </td><td><a class="el" href="structggl_1_1is__linear.html">is_linear</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html">segments_intersection_points</a> (<a class="el" href="namespaceggl_1_1policies_1_1relate.html">ggl::policies::relate</a>)   </td></tr><tr><td><a class="el"
 href="structggl_1_1cartesian__distance.html">cartesian_distance</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1is__multi.html">is_multi</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html">segments_tupled</a> (<a class="el" href="namespaceggl_1_1policies_1_1relate.html">ggl::policies::relate</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1cartesian__tag.html">cartesian_tag</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1is__radian.html">is_radian</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1select__coordinate__type.html">select_coordinate_type</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="classggl_1_1centroid__exception.html">c
entroid_exception</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a name="letter_L"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">  L  </div></td></tr></table>
+</td><td><a class="el" href="structggl_1_1select__most__precise.html">select_most_precise</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1circular__iterator.html">circular_iterator</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1length__result.html">length_result</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1strategy_1_1envelope_1_1shift_1_1shifted.html">shifted</a> (<a class="el" href="namespaceggl_1_1strategy_1_1envelope_1_1shift.html">ggl::strategy::envelope::shift</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1traits_1_1clear.html">clear</a> (<a class="el" href="namespaceggl_1_1traits.html">ggl::traits</a>)   </td><td><a class="el" href="structggl_1_1less.html">less</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="
structggl_1_1strategy_1_1envelope_1_1shift_1_1shifted_3_01degree_01_4.html">shifted< degree ></a> (<a class="el" href="namespaceggl_1_1strategy_1_1envelope_1_1shift.html">ggl::strategy::envelope::shift</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1strategy_1_1envelope_1_1combine__xy.html">combine_xy</a> (<a class="el" href="namespaceggl_1_1strategy_1_1envelope.html">ggl::strategy::envelope</a>)   </td><td><a class="el" href="classggl_1_1strategy_1_1intersection_1_1liang__barsky.html">liang_barsky</a> (<a class="el" href="namespaceggl_1_1strategy_1_1intersection.html">ggl::strategy::intersection</a>)   </td><td><a class="el" href="structggl_1_1strategy_1_1envelope_1_1shift_1_1shifted_3_01radian_01_4.html">shifted< radian ></a> (<a class="el" href="namespaceggl_1_1strategy_1_1envelope_1_1shift.html">ggl::strategy::envelope::shift</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1concept_1_1_const_box.html">ConstBox</a> 
(<a class="el" href="namespaceggl_1_1concept.html">ggl::concept</a>)   </td><td><a class="el" href="classggl_1_1linear__ring.html">linear_ring</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1concept_1_1_simplify_strategy.html">SimplifyStrategy</a> (<a class="el" href="namespaceggl_1_1concept.html">ggl::concept</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1concept_1_1_const_linestring.html">ConstLinestring</a> (<a class="el" href="namespaceggl_1_1concept.html">ggl::concept</a>)   </td><td><a class="el" href="classggl_1_1linestring.html">linestring</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1single__tag.html">single_tag</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1concept_1_1_const_nsphere.html">ConstNsphere</a> (<a class="el" href="namespaceggl_1_1c
oncept.html">ggl::concept</a>)   </td><td><a class="el" href="structggl_1_1concept_1_1_linestring.html">Linestring</a> (<a class="el" href="namespaceggl_1_1concept.html">ggl::concept</a>)   </td><td><a class="el" href="structggl_1_1cs_1_1spherical.html">spherical</a> (<a class="el" href="namespaceggl_1_1cs.html">ggl::cs</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1concept_1_1_const_point.html">ConstPoint</a> (<a class="el" href="namespaceggl_1_1concept.html">ggl::concept</a>)   </td><td><a class="el" href="structggl_1_1linestring__tag.html">linestring_tag</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1spherical__tag.html">spherical_tag</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1concept_1_1_const_polygon.html">ConstPolygon</a> (<a class="el" href="namespaceggl_1_1concept.html">ggl::concept</a>)&nb
sp;  </td><td><a name="letter_M"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">  M  </div></td></tr></table>
 </td><td><a class="el" href="structggl_1_1strategy_1_1envelope_1_1grow__ll_1_1state.html">grow_ll::state</a> (<a class="el" href="namespaceggl_1_1strategy_1_1envelope.html">ggl::strategy::envelope</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1concept_1_1_const_ring.html">ConstRing</a> (<a class="el" href="namespaceggl_1_1concept.html">ggl::concept</a>)   </td><td><a class="el" href="structggl_1_1strategy_1_1transform_1_1map__transformer.html">map_transformer</a> (<a class="el" href="namespaceggl_1_1strategy_1_1transform.html">ggl::strategy::transform</a>)   </td><td><a class="el" href="structggl_1_1strategy_1_1envelope_1_1combine__xy_1_1state.html">combine_xy::state</a> (<a class="el" href="namespaceggl_1_1strategy_1_1envelope.html">ggl::strategy::envelope</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1concept_1_1_const_segment.html">ConstSegment</a> (<a class="el" href="namespaceggl_1_1concept.html">ggl::concept</a>) &n
bsp; </td><td><a class="el" href="structggl_1_1multi__linestring.html">multi_linestring</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1strategy__area.html">strategy_area</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1traits_1_1coordinate__system.html">coordinate_system</a> (<a class="el" href="namespaceggl_1_1traits.html">ggl::traits</a>)   </td><td><a class="el" href="structggl_1_1multi__linestring__tag.html">multi_linestring_tag</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1strategy__centroid.html">strategy_centroid</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1coordinate__system.html">coordinate_system</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1
_1multi__point.html">multi_point</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1strategy__compare.html">strategy_compare</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1traits_1_1coordinate__system_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html">coordinate_system< ggl::detail::intersection::intersection_point< P > ></a> (<a class="el" href="namespaceggl_1_1traits.html">ggl::traits</a>)   </td><td><a class="el" href="structggl_1_1multi__point__tag.html">multi_point_tag</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1strategy__convex__hull.html">strategy_convex_hull</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1traits_1_1coordinate__type.html">coordinate_type</a> (<a class="el" hr
ef="namespaceggl_1_1traits.html">ggl::traits</a>)   </td><td><a class="el" href="structggl_1_1multi__polygon.html">multi_polygon</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1strategy__distance.html">strategy_distance</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1coordinate__type.html">coordinate_type</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1multi__polygon__tag.html">multi_polygon_tag</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1strategy__distance__segment.html">strategy_distance_segment</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1traits_1_1coordinate__type_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html">coordina
te_type< ggl::detail::intersection::intersection_point< P > ></a> (<a class="el" href="namespaceggl_1_1traits.html">ggl::traits</a>)   </td><td><a name="letter_N"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">  N  </div></td></tr></table>
 </td><td><a class="el" href="structggl_1_1strategy__envelope.html">strategy_envelope</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1strategy_1_1transform_1_1copy__direct.html">copy_direct</a> (<a class="el" href="namespaceggl_1_1strategy_1_1transform.html">ggl::strategy::transform</a>)   </td><td><a class="el" href="structggl_1_1strategy_1_1not__implemented.html">not_implemented</a> (<a class="el" href="namespaceggl_1_1strategy.html">ggl::strategy</a>)   </td><td><a class="el" href="structggl_1_1strategy__parse.html">strategy_parse</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1strategy_1_1transform_1_1copy__per__coordinate.html">copy_per_coordinate</a> (<a class="el" href="namespaceggl_1_1strategy_1_1transform.html">ggl::strategy::transform</a>)   </td><td><a class="el" href="classggl_1_1nsphere.html">nsphere</a> (<a
 class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1strategy__side.html">strategy_side</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1cross__track.html">cross_track</a> (<a class="el" href="namespaceggl_1_1strategy_1_1distance.html">ggl::strategy::distance</a>)   </td><td><a class="el" href="structggl_1_1concept_1_1_nsphere.html">Nsphere</a> (<a class="el" href="namespaceggl_1_1concept.html">ggl::concept</a>)   </td><td><a class="el" href="structggl_1_1strategy__tag.html">strategy_tag</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1traits_1_1cs__tag.html">cs_tag</a> (<a class="el" href="namespaceggl_1_1traits.html">ggl::traits</a>)   </td><td><a class="el" href="structggl_1_1nsphere__tag.html">nsphere_tag</a> (<a class="el" href="namespaceggl.ht
ml">ggl</a>)   </td><td><a class="el" href="structggl_1_1strategy__tag_3_01strategy_1_1distance_1_1pythagoras_3_01_p1_00_01_p2_01_4_01_4.html">strategy_tag< strategy::distance::pythagoras< P1, P2 > ></a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1cs__tag.html">cs_tag</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a name="letter_P"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">  P  </div></td></tr></table>
 </td><td><a class="el" href="structggl_1_1strategy__tag_3_01strategy_1_1distance_1_1xy__point__segment_3_01_point_00_01_segment_00_01_p_p_strategy_01_4_01_4.html">strategy_tag< strategy::distance::xy_point_segment< Point, Segment, PPStrategy > ></a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a name="letter_D"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">  D  </div></td></tr></table>
@@ -65,7 +65,7 @@
 </td></tr><tr><td><a class="el" href="structggl_1_1strategy_1_1transform_1_1from__cartesian__3__to__spherical__2.html">from_cartesian_3_to_spherical_2</a> (<a class="el" href="namespaceggl_1_1strategy_1_1transform.html">ggl::strategy::transform</a>)   </td><td><a class="el" href="structggl_1_1replace__point__type.html">replace_point_type</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1vertex__iterator.html">vertex_iterator</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1strategy_1_1transform_1_1from__cartesian__3__to__spherical__3.html">from_cartesian_3_to_spherical_3</a> (<a class="el" href="namespaceggl_1_1strategy_1_1transform.html">ggl::strategy::transform</a>)   </td><td><a class="el" href="structggl_1_1reverse__dispatch.html">reverse_dispatch</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a name="letter_W
"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">  W  </div></td></tr></table>
 </td></tr><tr><td><a class="el" href="structggl_1_1strategy_1_1transform_1_1from__spherical__2__to__cartesian__3.html">from_spherical_2_to_cartesian_3</a> (<a class="el" href="namespaceggl_1_1strategy_1_1transform.html">ggl::strategy::transform</a>)   </td><td><a class="el" href="structggl_1_1concept_1_1_ring.html">Ring</a> (<a class="el" href="namespaceggl_1_1concept.html">ggl::concept</a>)   </td><td><a class="el" href="classggl_1_1strategy_1_1within_1_1winding.html">winding</a> (<a class="el" href="namespaceggl_1_1strategy_1_1within.html">ggl::strategy::within</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1strategy_1_1transform_1_1from__spherical__3__to__cartesian__3.html">from_spherical_3_to_cartesian_3</a> (<a class="el" href="namespaceggl_1_1strategy_1_1transform.html">ggl::strategy::transform</a>)   </td><td><a class="el" href="structggl_1_1ring__tag.html">ring_tag</a> (<a class="el" href="namespaceggl.html">ggl</a>)  &n
bsp;</td><td><a name="letter_X"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">  X  </div></td></tr></table>
 </td></tr><tr><td><a name="letter_G"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">  G  </div></td></tr></table>
-</td><td><a class="el" href="structggl_1_1traits_1_1ring__type.html">ring_type</a> (<a class="el" href="namespaceggl_1_1traits.html">ggl::traits</a>)   </td><td><a class="el" href="structggl_1_1strategy_1_1distance_1_1xy__point__segment.html">xy_point_segment</a> (<a class="el" href="namespaceggl_1_1strategy_1_1distance.html">ggl::strategy::distance</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1cs_1_1geographic.html">geographic</a> (<a class="el" href="namespaceggl_1_1cs.html">ggl::cs</a>)   </td><td><a class="el" href="structggl_1_1ring__type.html">ring_type</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1strategy_1_1side_1_1xy__side.html">xy_side</a> (<a class="el" href="namespaceggl_1_1strategy_1_1side.html">ggl::strategy::side</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1geographic__tag.html">geographic_tag</a> (<a class="el" href="namespaceggl.html">ggl</a
>)   </td></tr></table><p><div class="qindex"><a class="qindex" href="#letter_A">A</a> | <a class="qindex" href="#letter_B">B</a> | <a class="qindex" href="#letter_C">C</a> | <a class="qindex" href="#letter_D">D</a> | <a class="qindex" href="#letter_E">E</a> | <a class="qindex" href="#letter_F">F</a> | <a class="qindex" href="#letter_G">G</a> | <a class="qindex" href="#letter_H">H</a> | <a class="qindex" href="#letter_I">I</a> | <a class="qindex" href="#letter_L">L</a> | <a class="qindex" href="#letter_M">M</a> | <a class="qindex" href="#letter_N">N</a> | <a class="qindex" href="#letter_P">P</a> | <a class="qindex" href="#letter_R">R</a> | <a class="qindex" href="#letter_S">S</a> | <a class="qindex" href="#letter_T">T</a> | <a class="qindex" href="#letter_U">U</a> | <a class="qindex" href="#letter_V">V</a> | <a class
="qindex" href="#letter_W">W</a> | <a class="qindex" href="#letter_X">X</a></div><p>
+</td><td><a class="el" href="structggl_1_1traits_1_1ring__type.html">ring_type</a> (<a class="el" href="namespaceggl_1_1traits.html">ggl::traits</a>)   </td><td><a class="el" href="structggl_1_1strategy_1_1distance_1_1xy__point__segment.html">xy_point_segment</a> (<a class="el" href="namespaceggl_1_1strategy_1_1distance.html">ggl::strategy::distance</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1cs_1_1geographic.html">geographic</a> (<a class="el" href="namespaceggl_1_1cs.html">ggl::cs</a>)   </td><td><a class="el" href="structggl_1_1ring__type.html">ring_type</a> (<a class="el" href="namespaceggl.html">ggl</a>)   </td><td><a class="el" href="structggl_1_1strategy_1_1side_1_1xy__side.html">xy_side</a> (<a class="el" href="namespaceggl_1_1strategy_1_1side.html">ggl::strategy::side</a>)   </td></tr><tr><td><a class="el" href="structggl_1_1geographic__tag.html">geographic_tag</a> (<a class="el" href="namespaceggl.html">ggl</a
>)   </td><td><a class="el" href="structggl_1_1strategy_1_1transform_1_1rotate__transformer.html">rotate_transformer</a> (<a class="el" href="namespaceggl_1_1strategy_1_1transform.html">ggl::strategy::transform</a>)   </td></tr></table><p><div class="qindex"><a class="qindex" href="#letter_A">A</a> | <a class="qindex" href="#letter_B">B</a> | <a class="qindex" href="#letter_C">C</a> | <a class="qindex" href="#letter_D">D</a> | <a class="qindex" href="#letter_E">E</a> | <a class="qindex" href="#letter_F">F</a> | <a class="qindex" href="#letter_G">G</a> | <a class="qindex" href="#letter_H">H</a> | <a class="qindex" href="#letter_I">I</a> | <a class="qindex" href="#letter_L">L</a> | <a class="qindex" href="#letter_M">M</a> | <a class="qindex" href="#letter_N">N</a> | <a class="qindex" href="#letter_P">P</a> | <a class="qindex" href="#letter_R">R</a> 
;| <a class="qindex" href="#letter_S">S</a> | <a class="qindex" href="#letter_T">T</a> | <a class="qindex" href="#letter_U">U</a> | <a class="qindex" href="#letter_V">V</a> | <a class="qindex" href="#letter_W">W</a> | <a class="qindex" href="#letter_X">X</a></div><p>
 </div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1box-members.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1box-members.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1box-members.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -43,13 +43,13 @@
   </div>
 </div>
 <div class="contents">
-<h1>ggl::box< P > Member List</h1>This is the complete list of members for <a class="el" href="classggl_1_1box.html">ggl::box< P ></a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classggl_1_1box.html#40a32b03ef937f268b28716cd3a19ff4">box</a>()</td><td><a class="el" href="classggl_1_1box.html">ggl::box< P ></a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classggl_1_1box.html#c7888e7869f90177bbc524467fa9e6c4">box</a>(P const &min_corner, P const &max_corner)</td><td><a class="el" href="classggl_1_1box.html">ggl::box< P ></a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classggl_1_1box.html#ad3ec53ea62b0bfa3cb897cea62ea0f0">max_corner</a>() const </td><td><a class="el" href="classggl_1_1box.html">ggl::box< P ></a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classggl_1_1box.html#1c19e1959ea3c4e02dd80d4ee4fca2af">max_corner</a>()</td><td><a class="el" href="classggl_1_1box.html">ggl::box< P ></a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classggl_1_1box.html#47f607c06a2a5432eac75d8bd5cf4a61">min_corner</a>() const </td><td><a class="el" href="classggl_1_1box.html">ggl::box< P ></a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classggl_1_1box.html#437ec3e1792291376892b682d3406af9">min_corner</a>()</td><td><a class="el" href="classggl_1_1box.html">ggl::box< P ></a></td><td></td></tr>
+<h1>ggl::box< Point > Member List</h1>This is the complete list of members for <a class="el" href="classggl_1_1box.html">ggl::box< Point ></a>, including all inherited members.<p><table>
+  <tr class="memlist"><td><a class="el" href="classggl_1_1box.html#27556d65c45886911a450e707b8cd633">box</a>()</td><td><a class="el" href="classggl_1_1box.html">ggl::box< Point ></a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classggl_1_1box.html#33c77af2d104a1faec5e98603d5ded17">box</a>(Point const &min_corner, Point const &max_corner)</td><td><a class="el" href="classggl_1_1box.html">ggl::box< Point ></a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classggl_1_1box.html#63a9905a364d6b5bef828cc04b9970f7">max_corner</a>() const </td><td><a class="el" href="classggl_1_1box.html">ggl::box< Point ></a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classggl_1_1box.html#dc5baf1c27a841e04907d274fd9b6c39">max_corner</a>()</td><td><a class="el" href="classggl_1_1box.html">ggl::box< Point ></a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classggl_1_1box.html#ebc2dece8cd77a23f73ffae3a957f093">min_corner</a>() const </td><td><a class="el" href="classggl_1_1box.html">ggl::box< Point ></a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classggl_1_1box.html#9d91801e6fc859f6e4258800fd9e3c94">min_corner</a>()</td><td><a class="el" href="classggl_1_1box.html">ggl::box< Point ></a></td><td></td></tr>
 </table></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1box.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1box.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1box.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -45,7 +45,7 @@
   </div>
 </div>
 <div class="contents">
-<h1>ggl::box< P > Class Template Reference</h1><!-- doxytag: class="ggl::box" -->Class <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a>: defines a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> made of two describing points.  
+<h1>ggl::box< Point > Class Template Reference</h1><!-- doxytag: class="ggl::box" -->Class <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a>: defines a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> made of two describing points.  
 <a href="#_details">More...</a>
 <p>
 
@@ -53,30 +53,30 @@
 <a href="classggl_1_1box-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
 <tr><td></td></tr>
 <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1box.html#c7888e7869f90177bbc524467fa9e6c4">box</a> (P const &min_corner, P const &max_corner)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1box.html#33c77af2d104a1faec5e98603d5ded17">box</a> (Point const &min_corner, Point const &max_corner)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor taking the minimum corner <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> and the maximum corner <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a>.  <br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1box.html#40a32b03ef937f268b28716cd3a19ff4">box</a> ()</td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor taking the minimum corner <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> and the maximum corner <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a>.  <br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1box.html#27556d65c45886911a450e707b8cd633">box</a> ()</td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top">P & </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1box.html#1c19e1959ea3c4e02dd80d4ee4fca2af">max_corner</a> ()</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">Point & </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1box.html#dc5baf1c27a841e04907d274fd9b6c39">max_corner</a> ()</td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top">P const & </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1box.html#ad3ec53ea62b0bfa3cb897cea62ea0f0">max_corner</a> () const </td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">Point const & </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1box.html#63a9905a364d6b5bef828cc04b9970f7">max_corner</a> () const </td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top">P & </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1box.html#437ec3e1792291376892b682d3406af9">min_corner</a> ()</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">Point & </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1box.html#9d91801e6fc859f6e4258800fd9e3c94">min_corner</a> ()</td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top">P const & </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1box.html#47f607c06a2a5432eac75d8bd5cf4a61">min_corner</a> () const </td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">Point const & </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1box.html#ebc2dece8cd77a23f73ffae3a957f093">min_corner</a> () const </td></tr>
 
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
-<h3>template<typename P><br>
- class ggl::box< P ></h3>
+<h3>template<typename Point><br>
+ class ggl::box< Point ></h3>
 
 Class <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a>: defines a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> made of two describing points. 
 <p>
-Box is always described by a <a class="el" href="classggl_1_1box.html#437ec3e1792291376892b682d3406af9">min_corner()</a> and a <a class="el" href="classggl_1_1box.html#1c19e1959ea3c4e02dd80d4ee4fca2af">max_corner()</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a>. If another rectangle is used, use <a class="el" href="classggl_1_1linear__ring.html" title="A linear_ring (linear linear_ring) is a closed line which should not be selfintersecting...">linear_ring</a> or <a class="el" href="classggl_1_1polygon.html" title="The polygon contains an outer ring and zero or more inner rings.">polygon</a>. <dl class="note" compact><dt><b>Note:</b></dt><dd>Boxes are for selections and for calculating the envelope of geometries. Not all algorithms are implemented for <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a>. Boxes are also used in Spatial Indexes. </dd></dl>
+Box is always described by a <a class="el" href="classggl_1_1box.html#9d91801e6fc859f6e4258800fd9e3c94">min_corner()</a> and a <a class="el" href="classggl_1_1box.html#dc5baf1c27a841e04907d274fd9b6c39">max_corner()</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a>. If another rectangle is used, use <a class="el" href="classggl_1_1linear__ring.html" title="A linear_ring (linear linear_ring) is a closed line which should not be selfintersecting...">linear_ring</a> or <a class="el" href="classggl_1_1polygon.html" title="The polygon contains an outer ring and zero or more inner rings.">polygon</a>. <dl class="note" compact><dt><b>Note:</b></dt><dd>Boxes are for selections and for calculating the envelope of geometries. Not all algorithms are implemented for <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a>. Boxes are also used in Spatial Indexes. </dd></dl>
 <dl compact><dt><b>Template Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>P</em> </td><td><a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> type. The <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> takes a <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> type as template parameter. The <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> type can be any <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> type. It can be 2D but can also be 3D or more dimensional. The <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> can also take a latlong <a class="el" href="classggl_1_1point.html" title="Basic point cl
ass, having coordinates defined in a neutral way.">point</a> type as template parameter. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>Point</em> </td><td><a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> type. The <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> takes a <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> type as template parameter. The <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> type can be any <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> type. It can be 2D but can also be 3D or more dimensional. The <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> can also take a latlong <a class="el" href="classggl_1_1point.html" title="Basic poin
t class, having coordinates defined in a neutral way.">point</a> type as template parameter. </td></tr>
   </table>
 </dl>
 <dl compact><dt><b>Examples: </b></dt><dd>
@@ -85,14 +85,14 @@
 <a class="el" href="02__linestring__example_8cpp-example.html#_a6">02_linestring_example.cpp</a>, <a class="el" href="03__polygon__example_8cpp-example.html#_a4">03_polygon_example.cpp</a>, <a class="el" href="07__graph__route__example_8cpp-example.html#_a10">07_graph_route_example.cpp</a>, and <a class="el" href="c05__custom__point__pointer__example_8cpp-example.html#_a2">c05_custom_point_pointer_example.cpp</a>.</dl>
 <p>Definition at line <a class="el" href="box_8hpp_source.html#l00035">35</a> of file <a class="el" href="box_8hpp_source.html">box.hpp</a>.</p>
 <hr><h2>Constructor & Destructor Documentation</h2>
-<a class="anchor" name="40a32b03ef937f268b28716cd3a19ff4"></a><!-- doxytag: member="ggl::box::box" ref="40a32b03ef937f268b28716cd3a19ff4" args="()" -->
+<a class="anchor" name="27556d65c45886911a450e707b8cd633"></a><!-- doxytag: member="ggl::box::box" ref="27556d65c45886911a450e707b8cd633" args="()" -->
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
-template<typename P> </div>
+template<typename Point> </div>
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="classggl_1_1box.html">ggl::box</a>< P >::<a class="el" href="classggl_1_1box.html">box</a>           </td>
+          <td class="memname"><a class="el" href="classggl_1_1box.html">ggl::box</a>< Point >::<a class="el" href="classggl_1_1box.html">box</a>           </td>
           <td>(</td>
           <td class="paramname">          </td>
           <td> ) </td>
@@ -108,22 +108,22 @@
 
 </div>
 </div><p>
-<a class="anchor" name="c7888e7869f90177bbc524467fa9e6c4"></a><!-- doxytag: member="ggl::box::box" ref="c7888e7869f90177bbc524467fa9e6c4" args="(P const &min_corner, P const &max_corner)" -->
+<a class="anchor" name="33c77af2d104a1faec5e98603d5ded17"></a><!-- doxytag: member="ggl::box::box" ref="33c77af2d104a1faec5e98603d5ded17" args="(Point const &min_corner, Point const &max_corner)" -->
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
-template<typename P> </div>
+template<typename Point> </div>
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="classggl_1_1box.html">ggl::box</a>< P >::<a class="el" href="classggl_1_1box.html">box</a>           </td>
+          <td class="memname"><a class="el" href="classggl_1_1box.html">ggl::box</a>< Point >::<a class="el" href="classggl_1_1box.html">box</a>           </td>
           <td>(</td>
-          <td class="paramtype">P const & </td>
+          <td class="paramtype">Point const & </td>
           <td class="paramname"> <em>min_corner</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">P const & </td>
+          <td class="paramtype">Point const & </td>
           <td class="paramname"> <em>max_corner</em></td><td> </td>
         </tr>
         <tr>
@@ -144,14 +144,14 @@
 </div>
 </div><p>
 <hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="47f607c06a2a5432eac75d8bd5cf4a61"></a><!-- doxytag: member="ggl::box::min_corner" ref="47f607c06a2a5432eac75d8bd5cf4a61" args="() const " -->
+<a class="anchor" name="ebc2dece8cd77a23f73ffae3a957f093"></a><!-- doxytag: member="ggl::box::min_corner" ref="ebc2dece8cd77a23f73ffae3a957f093" args="() const " -->
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
-template<typename P> </div>
+template<typename Point> </div>
       <table class="memname">
         <tr>
-          <td class="memname">P const& <a class="el" href="classggl_1_1box.html">ggl::box</a>< P >::min_corner           </td>
+          <td class="memname">Point const& <a class="el" href="classggl_1_1box.html">ggl::box</a>< Point >::min_corner           </td>
           <td>(</td>
           <td class="paramname">          </td>
           <td> ) </td>
@@ -167,14 +167,14 @@
 
 </div>
 </div><p>
-<a class="anchor" name="ad3ec53ea62b0bfa3cb897cea62ea0f0"></a><!-- doxytag: member="ggl::box::max_corner" ref="ad3ec53ea62b0bfa3cb897cea62ea0f0" args="() const " -->
+<a class="anchor" name="63a9905a364d6b5bef828cc04b9970f7"></a><!-- doxytag: member="ggl::box::max_corner" ref="63a9905a364d6b5bef828cc04b9970f7" args="() const " -->
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
-template<typename P> </div>
+template<typename Point> </div>
       <table class="memname">
         <tr>
-          <td class="memname">P const& <a class="el" href="classggl_1_1box.html">ggl::box</a>< P >::max_corner           </td>
+          <td class="memname">Point const& <a class="el" href="classggl_1_1box.html">ggl::box</a>< Point >::max_corner           </td>
           <td>(</td>
           <td class="paramname">          </td>
           <td> ) </td>
@@ -190,14 +190,14 @@
 
 </div>
 </div><p>
-<a class="anchor" name="437ec3e1792291376892b682d3406af9"></a><!-- doxytag: member="ggl::box::min_corner" ref="437ec3e1792291376892b682d3406af9" args="()" -->
+<a class="anchor" name="9d91801e6fc859f6e4258800fd9e3c94"></a><!-- doxytag: member="ggl::box::min_corner" ref="9d91801e6fc859f6e4258800fd9e3c94" args="()" -->
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
-template<typename P> </div>
+template<typename Point> </div>
       <table class="memname">
         <tr>
-          <td class="memname">P& <a class="el" href="classggl_1_1box.html">ggl::box</a>< P >::min_corner           </td>
+          <td class="memname">Point& <a class="el" href="classggl_1_1box.html">ggl::box</a>< Point >::min_corner           </td>
           <td>(</td>
           <td class="paramname">          </td>
           <td> ) </td>
@@ -213,14 +213,14 @@
 
 </div>
 </div><p>
-<a class="anchor" name="1c19e1959ea3c4e02dd80d4ee4fca2af"></a><!-- doxytag: member="ggl::box::max_corner" ref="1c19e1959ea3c4e02dd80d4ee4fca2af" args="()" -->
+<a class="anchor" name="dc5baf1c27a841e04907d274fd9b6c39"></a><!-- doxytag: member="ggl::box::max_corner" ref="dc5baf1c27a841e04907d274fd9b6c39" args="()" -->
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
-template<typename P> </div>
+template<typename Point> </div>
       <table class="memname">
         <tr>
-          <td class="memname">P& <a class="el" href="classggl_1_1box.html">ggl::box</a>< P >::max_corner           </td>
+          <td class="memname">Point& <a class="el" href="classggl_1_1box.html">ggl::box</a>< Point >::max_corner           </td>
           <td>(</td>
           <td class="paramname">          </td>
           <td> ) </td>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1dsv__manipulator.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1dsv__manipulator.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1dsv__manipulator.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -70,7 +70,7 @@
 Stream manipulator, streams geometry classes as <a class="el" href="dsv.html">DSV</a> streams <dl class="user" compact><dt><b>Example:</b></dt><dd>Small example showing how to use the dsv class  <div class="fragment"><pre class="fragment"></pre></div> </dd></dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>the template parameter must be specified. If that is inconvient, users might use streamdsv which streams geometries as manipulators, or the object generator make_dsv </dd></dl>
 
-<p>Definition at line <a class="el" href="write__dsv_8hpp_source.html#l00320">320</a> of file <a class="el" href="write__dsv_8hpp_source.html">write_dsv.hpp</a>.</p>
+<p>Definition at line <a class="el" href="write__dsv_8hpp_source.html#l00340">340</a> of file <a class="el" href="write__dsv_8hpp_source.html">write_dsv.hpp</a>.</p>
 <hr><h2>Constructor & Destructor Documentation</h2>
 <a class="anchor" name="5bbe82845f3e20b44d2b75cc8faebf43"></a><!-- doxytag: member="ggl::dsv_manipulator::dsv_manipulator" ref="5bbe82845f3e20b44d2b75cc8faebf43" args="(Geometry const &g, detail::dsv::dsv_settings const &settings)" -->
 <div class="memitem">
@@ -101,7 +101,7 @@
 
 <p>
 
-<p>Definition at line <a class="el" href="write__dsv_8hpp_source.html#l00324">324</a> of file <a class="el" href="write__dsv_8hpp_source.html">write_dsv.hpp</a>.</p>
+<p>Definition at line <a class="el" href="write__dsv_8hpp_source.html#l00344">344</a> of file <a class="el" href="write__dsv_8hpp_source.html">write_dsv.hpp</a>.</p>
 
 </div>
 </div><p>
@@ -137,7 +137,7 @@
 
 <p>
 
-<p>Definition at line <a class="el" href="write__dsv_8hpp_source.html#l00331">331</a> of file <a class="el" href="write__dsv_8hpp_source.html">write_dsv.hpp</a>.</p>
+<p>Definition at line <a class="el" href="write__dsv_8hpp_source.html#l00351">351</a> of file <a class="el" href="write__dsv_8hpp_source.html">write_dsv.hpp</a>.</p>
 
 </div>
 </div><p>
Added: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1segment-members.html
==============================================================================
--- (empty file)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1segment-members.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -0,0 +1,72 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Generic Geometry Library</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head>
+<body style="background-image: url(images/draft.png);">
+
+<table cellpadding="2" width="100%">
+<tbody>
+<tr>
+<td valign="top">
+<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
+  
+</td>
+<td valign="top" align="right">
+<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
+</td>
+</tr>
+</tbody>
+</table>
+<!-- Generated by Doxygen 1.5.9 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li>Main Page</li>
+      <li>Related Pages</li>
+      <li>Modules</li>
+      <li>Namespaces</li>
+      <li class="current">Classes</li>
+      <li>Files</li>
+      <li>Examples</li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li>Class List</li>
+      <li>Class Hierarchy</li>
+      <li>Class Members</li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+<h1>ggl::segment< ConstOrNonConstPoint > Member List</h1>This is the complete list of members for <a class="el" href="classggl_1_1segment.html">ggl::segment< ConstOrNonConstPoint ></a>, including all inherited members.<p><table>
+  <tr class="memlist"><td><a class="el" href="classggl_1_1segment.html#76c7f18dd19699ccb7353137b8981c65">first</a></td><td><a class="el" href="classggl_1_1segment.html">ggl::segment< ConstOrNonConstPoint ></a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classggl_1_1segment.html#543b3806df8d74067157587323917a71">second</a></td><td><a class="el" href="classggl_1_1segment.html">ggl::segment< ConstOrNonConstPoint ></a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="classggl_1_1segment.html#186525605856fad4270057e760d6c020">segment</a>(point_type &p1, point_type &p2)</td><td><a class="el" href="classggl_1_1segment.html">ggl::segment< ConstOrNonConstPoint ></a></td><td></td></tr>
+</table></div>
+<hr size="1">
+<table width="100%">
+<tbody>
+<tr>
+<td align="left"><small>
+<p>October 13, 2009</p>
+</small></td>
+<td align="right">
+<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
+Copyright © 2008-2009 Bruno Lalande, Paris<br>
+Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
+</small>
+</td>
+</tr>
+</tbody>
+</table>
+
+<address style="text-align: right;"><small>
+Documentation is generated by Doxygen
+</small></address>
+</body>
+</html>
Added: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1segment.html
==============================================================================
--- (empty file)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1segment.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -0,0 +1,179 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Generic Geometry Library</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head>
+<body style="background-image: url(images/draft.png);">
+
+<table cellpadding="2" width="100%">
+<tbody>
+<tr>
+<td valign="top">
+<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
+  
+</td>
+<td valign="top" align="right">
+<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
+</td>
+</tr>
+</tbody>
+</table>
+<!-- Generated by Doxygen 1.5.9 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li>Main Page</li>
+      <li>Related Pages</li>
+      <li>Modules</li>
+      <li>Namespaces</li>
+      <li class="current">Classes</li>
+      <li>Files</li>
+      <li>Examples</li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li>Class List</li>
+      <li>Class Hierarchy</li>
+      <li>Class Members</li>
+    </ul>
+  </div>
+  <div class="navpath"><a class="el" href="namespaceggl.html">ggl</a>::<a class="el" href="classggl_1_1segment.html">segment</a>
+  </div>
+</div>
+<div class="contents">
+<h1>ggl::segment< ConstOrNonConstPoint > Class Template Reference</h1><!-- doxytag: class="ggl::segment" -->Class <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>: small class containing two (templatized) <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> references.  
+More...
+<p>
+
+<p>
+List of all members.<table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1segment.html#186525605856fad4270057e760d6c020">segment</a> (<a class="el" href="structggl_1_1point__type.html">point_type</a> &p1, <a class="el" href="structggl_1_1point__type.html">point_type</a> &p2)</td></tr>
+
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structggl_1_1point__type.html">point_type</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1segment.html#76c7f18dd19699ccb7353137b8981c65">first</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structggl_1_1point__type.html">point_type</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1segment.html#543b3806df8d74067157587323917a71">second</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+<h3>template<typename ConstOrNonConstPoint><br>
+ class ggl::segment< ConstOrNonConstPoint ></h3>
+
+Class <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>: small class containing two (templatized) <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> references. 
+<p>
+From Wikipedia: In geometry, a line <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> is a part of a line that is bounded by two distinct end points, and contains every <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> on the line between its end points. <dl class="note" compact><dt><b>Note:</b></dt><dd>The structure is like std::pair, and can often be used interchangeable. Difference is that it refers to points, does not have points. <p>
+Like std::pair, points are public available. <p>
+type is const or non const, so ggl::segment<P> or ggl::segment<const P> <p>
+We cannot derive from std::pair<P&, P&> because of reference assignments. </dd></dl>
+<dl compact><dt><b>Template Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>ConstOrNonConstPoint</em> </td><td><a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> type of the <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>, maybe a <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> or a const <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> </td></tr>
+  </table>
+</dl>
+<dl compact><dt><b>Examples: </b></dt><dd>
+
+<p>
+<a class="el" href="02__linestring__example_8cpp-example.html#_a11">02_linestring_example.cpp</a>.</dl>
+<p>Definition at line <a class="el" href="segment_8hpp_source.html#l00037">37</a> of file <a class="el" href="segment_8hpp_source.html">segment.hpp</a>.</p>
+<hr><h2>Constructor & Destructor Documentation</h2>
+<a class="anchor" name="186525605856fad4270057e760d6c020"></a><!-- doxytag: member="ggl::segment::segment" ref="186525605856fad4270057e760d6c020" args="(point_type &p1, point_type &p2)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template<typename ConstOrNonConstPoint> </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classggl_1_1segment.html">ggl::segment</a>< ConstOrNonConstPoint >::<a class="el" href="classggl_1_1segment.html">segment</a>           </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="structggl_1_1point__type.html">point_type</a> & </td>
+          <td class="paramname"> <em>p1</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="structggl_1_1point__type.html">point_type</a> & </td>
+          <td class="paramname"> <em>p2</em></td><td> </td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td><td></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+<p>Definition at line <a class="el" href="segment_8hpp_source.html#l00055">55</a> of file <a class="el" href="segment_8hpp_source.html">segment.hpp</a>.</p>
+
+</div>
+</div><p>
+<hr><h2>Member Data Documentation</h2>
+<a class="anchor" name="76c7f18dd19699ccb7353137b8981c65"></a><!-- doxytag: member="ggl::segment::first" ref="76c7f18dd19699ccb7353137b8981c65" args="" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template<typename ConstOrNonConstPoint> </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="structggl_1_1point__type.html">point_type</a>& <a class="el" href="classggl_1_1segment.html">ggl::segment</a>< ConstOrNonConstPoint >::<a class="el" href="classggl_1_1segment.html#76c7f18dd19699ccb7353137b8981c65">first</a>          </td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+<p>Definition at line <a class="el" href="segment_8hpp_source.html#l00052">52</a> of file <a class="el" href="segment_8hpp_source.html">segment.hpp</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="543b3806df8d74067157587323917a71"></a><!-- doxytag: member="ggl::segment::second" ref="543b3806df8d74067157587323917a71" args="" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template<typename ConstOrNonConstPoint> </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="structggl_1_1point__type.html">point_type</a>& <a class="el" href="classggl_1_1segment.html">ggl::segment</a>< ConstOrNonConstPoint >::<a class="el" href="classggl_1_1segment.html#543b3806df8d74067157587323917a71">second</a>          </td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+<p>Definition at line <a class="el" href="segment_8hpp_source.html#l00053">53</a> of file <a class="el" href="segment_8hpp_source.html">segment.hpp</a>.</p>
+
+</div>
+</div><p>
+</div>
+<hr size="1">
+<table width="100%">
+<tbody>
+<tr>
+<td align="left"><small>
+<p>October 13, 2009</p>
+</small></td>
+<td align="right">
+<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
+Copyright © 2008-2009 Bruno Lalande, Paris<br>
+Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
+</small>
+</td>
+</tr>
+</tbody>
+</table>
+
+<address style="text-align: right;"><small>
+Documentation is generated by Doxygen
+</small></address>
+</body>
+</html>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1area_1_1by__spherical__excess.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1area_1_1by__spherical__excess.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1area_1_1by__spherical__excess.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -63,7 +63,7 @@
 <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html#59b71eaa070bf9d8e68e4d4f8263e06e">by_spherical_excess</a> (double radius=1.0)</td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html#b05fba0d842e52d836c6e603045e8f7b">operator()</a> (<a class="el" href="structggl_1_1segment.html">segment</a>< const P > const &<a class="el" href="structggl_1_1segment.html">segment</a>, <a class="el" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html#ca224a54396a8ff91a31831888ddc65e">state_type</a> &state) const </td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html#b05fba0d842e52d836c6e603045e8f7b">operator()</a> (<a class="el" href="classggl_1_1segment.html">segment</a>< const P > const &<a class="el" href="classggl_1_1segment.html">segment</a>, <a class="el" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html#ca224a54396a8ff91a31831888ddc65e">state_type</a> &state) const </td></tr>
 
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
@@ -160,7 +160,7 @@
         <tr>
           <td class="memname">bool <a class="el" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html">ggl::strategy::area::by_spherical_excess</a>< P >::operator()           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="structggl_1_1segment.html">segment</a>< const P > const & </td>
+          <td class="paramtype"><a class="el" href="classggl_1_1segment.html">segment</a>< const P > const & </td>
           <td class="paramname"> <em>segment</em>, </td>
         </tr>
         <tr>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1area_1_1by__triangles.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1area_1_1by__triangles.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1area_1_1by__triangles.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -68,7 +68,7 @@
 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef summation </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#b8c68b50c6f0909ab64c6c97f4dd8ea4">state_type</a></td></tr>
 
 <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#44a2feaa28620a60ce740cfad2374894">operator()</a> (<a class="el" href="structggl_1_1segment.html">segment</a>< const PS > const &s, <a class="el" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#b8c68b50c6f0909ab64c6c97f4dd8ea4">state_type</a> &state) const </td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#44a2feaa28620a60ce740cfad2374894">operator()</a> (<a class="el" href="classggl_1_1segment.html">segment</a>< const PS > const &s, <a class="el" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#b8c68b50c6f0909ab64c6c97f4dd8ea4">state_type</a> &state) const </td></tr>
 
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
@@ -136,7 +136,7 @@
         <tr>
           <td class="memname">bool <a class="el" href="classggl_1_1strategy_1_1area_1_1by__triangles.html">ggl::strategy::area::by_triangles</a>< PS, CalculationType >::operator()           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="structggl_1_1segment.html">segment</a>< const PS > const & </td>
+          <td class="paramtype"><a class="el" href="classggl_1_1segment.html">segment</a>< const PS > const & </td>
           <td class="paramname"> <em>s</em>, </td>
         </tr>
         <tr>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -59,7 +59,7 @@
 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef sums </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html#c9134908bec29b94168f6d733a6b2c89">state_type</a></td></tr>
 
 <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html#328f86d7cd18dbaa435df19c924f98fe">operator()</a> (<a class="el" href="structggl_1_1segment.html">segment</a>< const SegmentPointType > const &s, <a class="el" href="classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html#c9134908bec29b94168f6d733a6b2c89">state_type</a> &state) const </td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html#328f86d7cd18dbaa435df19c924f98fe">operator()</a> (<a class="el" href="classggl_1_1segment.html">segment</a>< const SegmentPointType > const &s, <a class="el" href="classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html#c9134908bec29b94168f6d733a6b2c89">state_type</a> &state) const </td></tr>
 
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
@@ -122,7 +122,7 @@
         <tr>
           <td class="memname">bool <a class="el" href="classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html">ggl::strategy::centroid::bashein_detmer</a>< CentroidPointType, SegmentPointType, CalculationType >::operator()           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="structggl_1_1segment.html">segment</a>< const SegmentPointType > const & </td>
+          <td class="paramtype"><a class="el" href="classggl_1_1segment.html">segment</a>< const SegmentPointType > const & </td>
           <td class="paramname"> <em>s</em>, </td>
         </tr>
         <tr>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1centroid_1_1geolib1995.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1centroid_1_1geolib1995.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1centroid_1_1geolib1995.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -59,7 +59,7 @@
 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef sums </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html#1dd6664e9b804f79ad472e51501568c8">state_type</a></td></tr>
 
 <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html#2b418413c02d508b0f570efff0102ff6">operator()</a> (const <a class="el" href="structggl_1_1segment.html">segment</a>< const PS > &s, <a class="el" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html#1dd6664e9b804f79ad472e51501568c8">state_type</a> &state) const </td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html#2b418413c02d508b0f570efff0102ff6">operator()</a> (const <a class="el" href="classggl_1_1segment.html">segment</a>< const PS > &s, <a class="el" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html#1dd6664e9b804f79ad472e51501568c8">state_type</a> &state) const </td></tr>
 
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
@@ -104,7 +104,7 @@
         <tr>
           <td class="memname">bool <a class="el" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html">ggl::strategy::centroid::geolib1995</a>< PC, PS >::operator()           </td>
           <td>(</td>
-          <td class="paramtype">const <a class="el" href="structggl_1_1segment.html">segment</a>< const PS > & </td>
+          <td class="paramtype">const <a class="el" href="classggl_1_1segment.html">segment</a>< const PS > & </td>
           <td class="paramname"> <em>s</em>, </td>
         </tr>
         <tr>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1distance_1_1cross__track.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1distance_1_1cross__track.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1distance_1_1cross__track.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -48,7 +48,7 @@
 <h1>ggl::strategy::distance::cross_track< P, S > Class Template Reference<br>
 <small>
 [<a class="el" href="group__distance.html">distance calculation</a>]</small>
-</h1><!-- doxytag: class="ggl::strategy::distance::cross_track" -->Strategy functor for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> calculation.  
+</h1><!-- doxytag: class="ggl::strategy::distance::cross_track" -->Strategy functor for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> calculation.  
 <a href="#_details">More...</a>
 <p>
 
@@ -75,13 +75,13 @@
 <h3>template<typename P, typename S><br>
  class ggl::strategy::distance::cross_track< P, S ></h3>
 
-Strategy functor for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> calculation. 
+Strategy functor for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> calculation. 
 <p>
-Class which calculates the <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> of a <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to a <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>, using latlong points <dl class="see" compact><dt><b>See also:</b></dt><dd>http://williams.best.vwh.net/avform.htm </dd></dl>
+Class which calculates the <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> of a <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to a <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>, using latlong points <dl class="see" compact><dt><b>See also:</b></dt><dd>http://williams.best.vwh.net/avform.htm </dd></dl>
 <dl compact><dt><b>Template Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>P</em> </td><td><a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> type </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>S</em> </td><td><a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> type </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>S</em> </td><td><a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> type </td></tr>
   </table>
 </dl>
 
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1distance_1_1haversine-members.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1distance_1_1haversine-members.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1distance_1_1haversine-members.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -45,12 +45,9 @@
 <div class="contents">
 <h1>ggl::strategy::distance::haversine< P1, P2 > Member List</h1>This is the complete list of members for <a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html">ggl::strategy::distance::haversine< P1, P2 ></a>, including all inherited members.<p><table>
   <tr class="memlist"><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#85ea8852c843a8950010229d0da4504a">haversine</a>(double r=1.0)</td><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html">ggl::strategy::distance::haversine< P1, P2 ></a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#85ea8852c843a8950010229d0da4504a">haversine</a>(double r=1.0)</td><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html">ggl::strategy::distance::haversine< P1, P2 ></a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#4e6620683b788431de8942b0376af7af">operator()</a>(P1 const &p1, P2 const &p2) const </td><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html">ggl::strategy::distance::haversine< P1, P2 ></a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#cfc29c7f64c6136784283fab579fa970">operator()</a>(const P1 &p1, const P2 &p2) const </td><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html">ggl::strategy::distance::haversine< P1, P2 ></a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8ee0701ef57352296292047e3dcc3330">point_type</a> typedef</td><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html">ggl::strategy::distance::haversine< P1, P2 ></a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8fd848a2bbc5857c70fa6bce5ffac5d3">return_type</a> typedef</td><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html">ggl::strategy::distance::haversine< P1, P2 ></a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8fd848a2bbc5857c70fa6bce5ffac5d3">return_type</a> typedef</td><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html">ggl::strategy::distance::haversine< P1, P2 ></a></td><td></td></tr>
 </table></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1distance_1_1haversine.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1distance_1_1haversine.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1distance_1_1haversine.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -60,15 +60,9 @@
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef double </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8fd848a2bbc5857c70fa6bce5ffac5d3">return_type</a></td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef double </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8fd848a2bbc5857c70fa6bce5ffac5d3">return_type</a></td></tr>
-
 <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#85ea8852c843a8950010229d0da4504a">haversine</a> (double r=1.0)</td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#85ea8852c843a8950010229d0da4504a">haversine</a> (double r=1.0)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8fd848a2bbc5857c70fa6bce5ffac5d3">return_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#cfc29c7f64c6136784283fab579fa970">operator()</a> (const P1 &p1, const P2 &p2) const </td></tr>
-
 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8fd848a2bbc5857c70fa6bce5ffac5d3">return_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#4e6620683b788431de8942b0376af7af">operator()</a> (P1 const &p1, P2 const &p2) const </td></tr>
 
 </table>
@@ -128,25 +122,6 @@
 
 </div>
 </div><p>
-<a class="anchor" name="8fd848a2bbc5857c70fa6bce5ffac5d3"></a><!-- doxytag: member="ggl::strategy::distance::haversine::return_type" ref="8fd848a2bbc5857c70fa6bce5ffac5d3" args="" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename P1, typename P2 = P1> </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef double <a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html">ggl::strategy::distance::haversine</a>< P1, P2 >::<a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8fd848a2bbc5857c70fa6bce5ffac5d3">return_type</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="haversine_8hpp_source.html#l00052">52</a> of file <a class="el" href="haversine_8hpp_source.html">haversine.hpp</a>.</p>
-
-</div>
-</div><p>
 <hr><h2>Constructor & Destructor Documentation</h2>
 <a class="anchor" name="85ea8852c843a8950010229d0da4504a"></a><!-- doxytag: member="ggl::strategy::distance::haversine::haversine" ref="85ea8852c843a8950010229d0da4504a" args="(double r=1.0)" -->
 <div class="memitem">
@@ -172,30 +147,6 @@
 
 </div>
 </div><p>
-<a class="anchor" name="85ea8852c843a8950010229d0da4504a"></a><!-- doxytag: member="ggl::strategy::distance::haversine::haversine" ref="85ea8852c843a8950010229d0da4504a" args="(double r=1.0)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename P1, typename P2 = P1> </div>
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html">ggl::strategy::distance::haversine</a>< P1, P2 >::<a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html">haversine</a>           </td>
-          <td>(</td>
-          <td class="paramtype">double </td>
-          <td class="paramname"> <em>r</em> = <code>1.0</code>          </td>
-          <td> ) </td>
-          <td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="haversine_8hpp_source.html#l00054">54</a> of file <a class="el" href="haversine_8hpp_source.html">haversine.hpp</a>.</p>
-
-</div>
-</div><p>
 <hr><h2>Member Function Documentation</h2>
 <a class="anchor" name="4e6620683b788431de8942b0376af7af"></a><!-- doxytag: member="ggl::strategy::distance::haversine::operator()" ref="4e6620683b788431de8942b0376af7af" args="(P1 const &p1, P2 const &p2) const " -->
 <div class="memitem">
@@ -230,39 +181,6 @@
 
 </div>
 </div><p>
-<a class="anchor" name="cfc29c7f64c6136784283fab579fa970"></a><!-- doxytag: member="ggl::strategy::distance::haversine::operator()" ref="cfc29c7f64c6136784283fab579fa970" args="(const P1 &p1, const P2 &p2) const " -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename P1, typename P2 = P1> </div>
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8fd848a2bbc5857c70fa6bce5ffac5d3">return_type</a> <a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html">ggl::strategy::distance::haversine</a>< P1, P2 >::operator()           </td>
-          <td>(</td>
-          <td class="paramtype">const P1 & </td>
-          <td class="paramname"> <em>p1</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">const P2 & </td>
-          <td class="paramname"> <em>p2</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td> const</td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="haversine_8hpp_source.html#l00058">58</a> of file <a class="el" href="haversine_8hpp_source.html">haversine.hpp</a>.</p>
-
-</div>
-</div><p>
 </div>
 <hr size="1">
 <table width="100%">
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1distance_1_1ll__point__segment-members.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1distance_1_1ll__point__segment-members.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,72 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li>Class Members</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
-<h1>ggl::strategy::distance::ll_point_segment< P, S > Member List</h1>This is the complete list of members for <a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html">ggl::strategy::distance::ll_point_segment< P, S ></a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#bd6a906cc460c9073ed833922392407c">ll_point_segment</a>(double r=1.0)</td><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html">ggl::strategy::distance::ll_point_segment< P, S ></a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#ded28ff8067850eab6befbf3cec37098">operator()</a>(P const &p, S const &s) const </td><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html">ggl::strategy::distance::ll_point_segment< P, S ></a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#f98549b351e37683bc7999d389f170f0">return_type</a> typedef</td><td><a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html">ggl::strategy::distance::ll_point_segment< P, S ></a></td><td></td></tr>
-</table></div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1distance_1_1ll__point__segment.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1distance_1_1ll__point__segment.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,182 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li>Class Members</li>
-    </ul>
-  </div>
-  <div class="navpath"><a class="el" href="namespaceggl.html">ggl</a>::<a class="el" href="namespaceggl_1_1strategy.html">strategy</a>::<a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a>::<a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html">ll_point_segment</a>
-  </div>
-</div>
-<div class="contents">
-<h1>ggl::strategy::distance::ll_point_segment< P, S > Class Template Reference<br>
-<small>
-[<a class="el" href="group__distance.html">distance calculation</a>]</small>
-</h1><!-- doxytag: class="ggl::strategy::distance::ll_point_segment" -->Strategy functor for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> calculation.  
-More...
-<p>
-
-<p>
-List of all members.<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef double </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#f98549b351e37683bc7999d389f170f0">return_type</a></td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#bd6a906cc460c9073ed833922392407c">ll_point_segment</a> (double r=1.0)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#f98549b351e37683bc7999d389f170f0">return_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#ded28ff8067850eab6befbf3cec37098">operator()</a> (P const &p, S const &s) const </td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-<h3>template<typename P, typename S><br>
- class ggl::strategy::distance::ll_point_segment< P, S ></h3>
-
-Strategy functor for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> calculation. 
-<p>
-Class which calculates the <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> of a <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to a <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>, using latlong points <dl compact><dt><b>Template Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>P</em> </td><td><a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> type </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>S</em> </td><td><a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> type </td></tr>
-  </table>
-</dl>
-
-<p>Definition at line <a class="el" href="haversine_8hpp_source.html#l00087">87</a> of file <a class="el" href="haversine_8hpp_source.html">haversine.hpp</a>.</p>
-<hr><h2>Member Typedef Documentation</h2>
-<a class="anchor" name="f98549b351e37683bc7999d389f170f0"></a><!-- doxytag: member="ggl::strategy::distance::ll_point_segment::return_type" ref="f98549b351e37683bc7999d389f170f0" args="" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename P , typename S > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef double <a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html">ggl::strategy::distance::ll_point_segment</a>< P, S >::<a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#f98549b351e37683bc7999d389f170f0">return_type</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="haversine_8hpp_source.html#l00090">90</a> of file <a class="el" href="haversine_8hpp_source.html">haversine.hpp</a>.</p>
-
-</div>
-</div><p>
-<hr><h2>Constructor & Destructor Documentation</h2>
-<a class="anchor" name="bd6a906cc460c9073ed833922392407c"></a><!-- doxytag: member="ggl::strategy::distance::ll_point_segment::ll_point_segment" ref="bd6a906cc460c9073ed833922392407c" args="(double r=1.0)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename P , typename S > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html">ggl::strategy::distance::ll_point_segment</a>< P, S >::<a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html">ll_point_segment</a>           </td>
-          <td>(</td>
-          <td class="paramtype">double </td>
-          <td class="paramname"> <em>r</em> = <code>1.0</code>          </td>
-          <td> ) </td>
-          <td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="haversine_8hpp_source.html#l00092">92</a> of file <a class="el" href="haversine_8hpp_source.html">haversine.hpp</a>.</p>
-
-</div>
-</div><p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="ded28ff8067850eab6befbf3cec37098"></a><!-- doxytag: member="ggl::strategy::distance::ll_point_segment::operator()" ref="ded28ff8067850eab6befbf3cec37098" args="(P const &p, S const &s) const " -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename P , typename S > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#f98549b351e37683bc7999d389f170f0">return_type</a> <a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html">ggl::strategy::distance::ll_point_segment</a>< P, S >::operator()           </td>
-          <td>(</td>
-          <td class="paramtype">P const & </td>
-          <td class="paramname"> <em>p</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">S const & </td>
-          <td class="paramname"> <em>s</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td> const</td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="haversine_8hpp_source.html#l00095">95</a> of file <a class="el" href="haversine_8hpp_source.html">haversine.hpp</a>.</p>
-
-</div>
-</div><p>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1intersection_1_1liang__barsky.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1intersection_1_1liang__barsky.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1intersection_1_1liang__barsky.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -59,7 +59,7 @@
 <tr><td class="memTemplParams" nowrap colspan="2">template<typename L , typename OutputIterator > </td></tr>
 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1intersection_1_1liang__barsky.html#8e27188bc1054b3017c059cce6b3c330">add</a> (L &line_out, OutputIterator out) const </td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1intersection_1_1liang__barsky.html#1a0456b13305792c70cd53b8571db1ef">clip_segment</a> (B const &b, <a class="el" href="structggl_1_1segment.html">segment_type</a> &s, bool &sp1_clipped, bool &sp2_clipped) const </td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1intersection_1_1liang__barsky.html#1a0456b13305792c70cd53b8571db1ef">clip_segment</a> (B const &b, <a class="el" href="classggl_1_1segment.html">segment_type</a> &s, bool &sp1_clipped, bool &sp2_clipped) const </td></tr>
 
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
@@ -99,7 +99,7 @@
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="structggl_1_1segment.html">segment_type</a> & </td>
+          <td class="paramtype"><a class="el" href="classggl_1_1segment.html">segment_type</a> & </td>
           <td class="paramname"> <em>s</em>, </td>
         </tr>
         <tr>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1simplify_1_1douglas__peucker-members.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1simplify_1_1douglas__peucker-members.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1simplify_1_1douglas__peucker-members.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -43,11 +43,9 @@
   </div>
 </div>
 <div class="contents">
-<h1>ggl::strategy::simplify::douglas_peucker< R, O_IT, PSDS > Member List</h1>This is the complete list of members for <a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker< R, O_IT, PSDS ></a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#45491352f7c455ea801781c8b7c812d9">apply</a>(Range const &range, OutputIterator out, double max_distance)</td><td><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker< R, O_IT, PSDS ></a></td><td><code> [static]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#8baa11b24fd260345ee451512c710350">distance_strategy_type</a> typedef</td><td><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker< R, O_IT, PSDS ></a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#d9c2f3932590f7088e2cdf032c41458b">distance_strategy_type</a> typedef</td><td><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker< R, O_IT, PSDS ></a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#dca55aa87f6d5b49df52585fa0f97add">simplify</a>(const R &range, O_IT out, double max_distance) const </td><td><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker< R, O_IT, PSDS ></a></td><td></td></tr>
+<h1>ggl::strategy::simplify::douglas_peucker< Point, PointDistanceStrategy > Member List</h1>This is the complete list of members for <a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker< Point, PointDistanceStrategy ></a>, including all inherited members.<p><table>
+  <tr class="memlist"><td><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#8ec9dbc06a92fb822cddba949e067ae2">apply</a>(Range const &range, OutputIterator out, double max_distance)</td><td><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker< Point, PointDistanceStrategy ></a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#c1a18c53b124af6e3f49e61589eef15d">distance_strategy_type</a> typedef</td><td><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker< Point, PointDistanceStrategy ></a></td><td></td></tr>
 </table></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -45,7 +45,7 @@
   </div>
 </div>
 <div class="contents">
-<h1>ggl::strategy::simplify::douglas_peucker< R, O_IT, PSDS > Class Template Reference<br>
+<h1>ggl::strategy::simplify::douglas_peucker< Point, PointDistanceStrategy > Class Template Reference<br>
 <small>
 [<a class="el" href="group__simplify.html">simplification (generalization)</a>]</small>
 </h1><!-- doxytag: class="ggl::strategy::simplify::douglas_peucker" -->Implements the <a class="el" href="namespaceggl_1_1strategy_1_1simplify.html">simplify</a> algorithm.  
@@ -56,22 +56,16 @@
 <a href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
 <tr><td></td></tr>
 <tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef PointDistanceStrategy </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#d9c2f3932590f7088e2cdf032c41458b">distance_strategy_type</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef PointDistanceStrategy </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#c1a18c53b124af6e3f49e61589eef15d">distance_strategy_type</a></td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef PSDS </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#8baa11b24fd260345ee451512c710350">distance_strategy_type</a></td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#dca55aa87f6d5b49df52585fa0f97add">simplify</a> (const R &range, O_IT out, double max_distance) const </td></tr>
-
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Call simplification on an iterator pair.  <br></td></tr>
 <tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
 <tr><td class="memTemplParams" nowrap colspan="2">template<typename Range , typename OutputIterator > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static OutputIterator </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#45491352f7c455ea801781c8b7c812d9">apply</a> (Range const &range, OutputIterator out, double max_distance)</td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static OutputIterator </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#8ec9dbc06a92fb822cddba949e067ae2">apply</a> (Range const &range, OutputIterator out, double max_distance)</td></tr>
 
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
-<h3>template<typename R, typename O_IT, typename PSDS><br>
- class ggl::strategy::simplify::douglas_peucker< R, O_IT, PSDS ></h3>
+<h3>template<typename Point, typename PointDistanceStrategy><br>
+ class ggl::strategy::simplify::douglas_peucker< Point, PointDistanceStrategy ></h3>
 
 Implements the <a class="el" href="namespaceggl_1_1strategy_1_1simplify.html">simplify</a> algorithm. 
 <p>
@@ -79,18 +73,6 @@
 <a href="http://www2.dcs.hull.ac.uk/CISRG/projects/Royal-Inst/demos/dp.html">http://www2.dcs.hull.ac.uk/CISRG/projects/Royal-Inst/demos/dp.html> </dd></dl>
 <dl compact><dt><b>Template Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>R</em> </td><td>boost range </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>O_IT</em> </td><td>output iterator </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>PSDS</em> </td><td>point-segment <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="namespaceggl_1_1strategy.html">strategy</a> to be used </td></tr>
-  </table>
-</dl>
-<dl class="note" compact><dt><b>Note:</b></dt><dd>This <a class="el" href="namespaceggl_1_1strategy.html">strategy</a> uses itself a point-segment-distance <a class="el" href="namespaceggl_1_1strategy.html">strategy</a> which can be specified </dd></dl>
-<dl class="author" compact><dt><b>Author:</b></dt><dd>Barend and Maarten, 1995/1996 <p>
-Barend, revised for Generic Geometry Library, 2008</dd></dl>
-The <a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html" title="Implements the simplify algorithm.">douglas_peucker</a> <a class="el" href="namespaceggl_1_1strategy.html">strategy</a> simplifies a <a class="el" href="classggl_1_1linestring.html" title="A linestring (named so by OGC) is a collection (default a vector) of points.">linestring</a>, ring or vector of points using the well-known Douglas-Peucker algorithm. For the algorithm, see for example: <dl class="see" compact><dt><b>See also:</b></dt><dd>http://en.wikipedia.org/wiki/Ramer-Douglas-Peucker_algorithm <p>
-http://www2.dcs.hull.ac.uk/CISRG/projects/Royal-Inst/demos/dp.html </dd></dl>
-<dl compact><dt><b>Template Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>Point</em> </td><td>the <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> type </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>PointDistanceStrategy</em> </td><td>point-segment <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="namespaceggl_1_1strategy.html">strategy</a> to be used </td></tr>
   </table>
@@ -99,35 +81,16 @@
 <dl class="author" compact><dt><b>Author:</b></dt><dd>Barend and Maarten, 1995/1996 <p>
 Barend, revised for Generic Geometry Library, 2008 </dd></dl>
 
-<p>Definition at line <a class="el" href="agn__simplify_8hpp_source.html#l00079">79</a> of file <a class="el" href="agn__simplify_8hpp_source.html">agn_simplify.hpp</a>.</p>
+<p>Definition at line <a class="el" href="simplify__douglas__peucker_8hpp_source.html#l00086">86</a> of file <a class="el" href="simplify__douglas__peucker_8hpp_source.html">simplify_douglas_peucker.hpp</a>.</p>
 <hr><h2>Member Typedef Documentation</h2>
-<a class="anchor" name="8baa11b24fd260345ee451512c710350"></a><!-- doxytag: member="ggl::strategy::simplify::douglas_peucker::distance_strategy_type" ref="8baa11b24fd260345ee451512c710350" args="" -->
+<a class="anchor" name="c1a18c53b124af6e3f49e61589eef15d"></a><!-- doxytag: member="ggl::strategy::simplify::douglas_peucker::distance_strategy_type" ref="c1a18c53b124af6e3f49e61589eef15d" args="" -->
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
-template<typename R , typename O_IT , typename PSDS > </div>
+template<typename Point , typename PointDistanceStrategy > </div>
       <table class="memname">
         <tr>
-          <td class="memname">typedef PSDS <a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker</a>< R, O_IT, PSDS >::<a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#8baa11b24fd260345ee451512c710350">distance_strategy_type</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="agn__simplify_8hpp_source.html#l00147">147</a> of file <a class="el" href="agn__simplify_8hpp_source.html">agn_simplify.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="d9c2f3932590f7088e2cdf032c41458b"></a><!-- doxytag: member="ggl::strategy::simplify::douglas_peucker::distance_strategy_type" ref="d9c2f3932590f7088e2cdf032c41458b" args="" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename R , typename O_IT , typename PSDS > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef PointDistanceStrategy <a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker</a>< R, O_IT, PSDS >::<a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#8baa11b24fd260345ee451512c710350">distance_strategy_type</a>          </td>
+          <td class="memname">typedef PointDistanceStrategy <a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker</a>< Point, PointDistanceStrategy >::<a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#c1a18c53b124af6e3f49e61589eef15d">distance_strategy_type</a>          </td>
         </tr>
       </table>
 </div>
@@ -140,57 +103,16 @@
 </div>
 </div><p>
 <hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="dca55aa87f6d5b49df52585fa0f97add"></a><!-- doxytag: member="ggl::strategy::simplify::douglas_peucker::simplify" ref="dca55aa87f6d5b49df52585fa0f97add" args="(const R &range, O_IT out, double max_distance) const " -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename R , typename O_IT , typename PSDS > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">void <a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker</a>< R, O_IT, PSDS >::simplify           </td>
-          <td>(</td>
-          <td class="paramtype">const R & </td>
-          <td class="paramname"> <em>range</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">O_IT </td>
-          <td class="paramname"> <em>out</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">double </td>
-          <td class="paramname"> <em>max_distance</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td> const</td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Call simplification on an iterator pair. 
-<p>
-
-<p>Definition at line <a class="el" href="agn__simplify_8hpp_source.html#l00152">152</a> of file <a class="el" href="agn__simplify_8hpp_source.html">agn_simplify.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="45491352f7c455ea801781c8b7c812d9"></a><!-- doxytag: member="ggl::strategy::simplify::douglas_peucker::apply" ref="45491352f7c455ea801781c8b7c812d9" args="(Range const &range, OutputIterator out, double max_distance)" -->
+<a class="anchor" name="8ec9dbc06a92fb822cddba949e067ae2"></a><!-- doxytag: member="ggl::strategy::simplify::douglas_peucker::apply" ref="8ec9dbc06a92fb822cddba949e067ae2" args="(Range const &range, OutputIterator out, double max_distance)" -->
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
-template<typename R , typename O_IT , typename PSDS > </div>
+template<typename Point , typename PointDistanceStrategy > </div>
 <div class="memtemplate">
 template<typename Range , typename OutputIterator > </div>
       <table class="memname">
         <tr>
-          <td class="memname">static OutputIterator <a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker</a>< R, O_IT, PSDS >::apply           </td>
+          <td class="memname">static OutputIterator <a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker</a>< Point, PointDistanceStrategy >::apply           </td>
           <td>(</td>
           <td class="paramtype">Range const & </td>
           <td class="paramname"> <em>range</em>, </td>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1within_1_1winding.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1within_1_1winding.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/classggl_1_1strategy_1_1within_1_1winding.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -59,7 +59,7 @@
 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef windings </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1within_1_1winding.html#aa5dc8bd530eed3ac8420ccccd2c8e65">state_type</a></td></tr>
 
 <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1within_1_1winding.html#8ce0e3219bdded9943af7bc594a7f1be">operator()</a> (const <a class="el" href="structggl_1_1segment.html">segment</a>< const PS > &s, <a class="el" href="classggl_1_1strategy_1_1within_1_1winding.html#aa5dc8bd530eed3ac8420ccccd2c8e65">state_type</a> &state) const </td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1within_1_1winding.html#8ce0e3219bdded9943af7bc594a7f1be">operator()</a> (const <a class="el" href="classggl_1_1segment.html">segment</a>< const PS > &s, <a class="el" href="classggl_1_1strategy_1_1within_1_1winding.html#aa5dc8bd530eed3ac8420ccccd2c8e65">state_type</a> &state) const </td></tr>
 
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
@@ -111,7 +111,7 @@
         <tr>
           <td class="memname">bool <a class="el" href="classggl_1_1strategy_1_1within_1_1winding.html">ggl::strategy::within::winding</a>< P, PS >::operator()           </td>
           <td>(</td>
-          <td class="paramtype">const <a class="el" href="structggl_1_1segment.html">segment</a>< const PS > & </td>
+          <td class="paramtype">const <a class="el" href="classggl_1_1segment.html">segment</a>< const PS > & </td>
           <td class="paramname"> <em>s</em>, </td>
         </tr>
         <tr>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/convert_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/convert_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/convert_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -58,7 +58,7 @@
 <a name="l00016"></a>00016 <span class="preprocessor">#include <boost/range/metafunctions.hpp></span>
 <a name="l00017"></a>00017 
 <a name="l00018"></a>00018 <span class="preprocessor">#include <<a class="code" href="append_8hpp.html">ggl/algorithms/append.hpp</a>></span>
-<a name="l00019"></a>00019 <span class="preprocessor">#include <<a class="code" href="for__each_8hpp.html">ggl/algorithms/for_each.hpp</a>></span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include <<a class="code" href="algorithms_2for__each_8hpp.html">ggl/algorithms/for_each.hpp</a>></span>
 <a name="l00020"></a>00020 <span class="preprocessor">#include <<a class="code" href="cs_8hpp.html">ggl/core/cs.hpp</a>></span>
 <a name="l00021"></a>00021 <span class="preprocessor">#include <<a class="code" href="segment_8hpp.html">ggl/geometries/segment.hpp</a>></span>
 <a name="l00022"></a>00022 <span class="preprocessor">#include <<a class="code" href="strategies_8hpp.html">ggl/strategies/strategies.hpp</a>></span>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/core_2tags_8hpp.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/core_2tags_8hpp.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/core_2tags_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -76,7 +76,7 @@
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Convenience (linear) ring identifying <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a>.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment__tag.html">ggl::segment_tag</a></td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Convenience <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> (2-points) identifying <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a>.  More...<br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Convenience <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> (2-points) identifying <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a>.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1spherical__tag.html">ggl::spherical_tag</a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Tag indicating Spherical coordinate system family (spherical,celestial,...).  More...<br></td></tr>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/de9im_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/de9im_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/de9im_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -184,7 +184,7 @@
 <a name="l00142"></a>00142                  <span class="keyword">true</span>, opposite);
 <a name="l00143"></a>00143     }
 <a name="l00144"></a>00144 
-<a name="l00145"></a><a class="code" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#c38201cbc6a2788b300413a7f90103b2">00145</a>     <span class="keyword">static</span> <span class="keyword">inline</span> <a class="code" href="structggl_1_1de9im__segment.html">return_type</a> <a class="code" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#c38201cbc6a2788b300413a7f90103b2">degenerate</a>(S1 <span class="keyword">const</span>& <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>, <span class="keywordtype">bool</span> a_degenerate)
+<a name="l00145"></a><a class="code" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#c38201cbc6a2788b300413a7f90103b2">00145</a>     <span class="keyword">static</span> <span class="keyword">inline</span> <a class="code" href="structggl_1_1de9im__segment.html">return_type</a> <a class="code" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#c38201cbc6a2788b300413a7f90103b2">degenerate</a>(S1 <span class="keyword">const</span>& <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>, <span class="keywordtype">bool</span> a_degenerate)
 <a name="l00146"></a>00146     {
 <a name="l00147"></a>00147             <span class="keywordflow">return</span> a_degenerate
 <a name="l00148"></a>00148                 ? <a class="code" href="structggl_1_1de9im__segment.html">de9im_segment</a>(0,0,
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/design.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/design.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/design.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -100,7 +100,8 @@
     <span class="keywordflow">return</span> <a class="code" href="group__access.html#g6cf833a7f9622af2fc05fd94aa61153f" title="get a coordinate value of a point / nsphere">traits::access<P, D>::get</a>(p);
 }
 </pre></div><p>
-This enables us to call get<0>(a), for any point having the traits::access specialization, as shown in the distance algorithm at the start of this paragraph. So we wanted to enable classes with methods like .x(), and they are supported as long as there is a specialization of the access struct with a static get function returning .x() for dimension 0, and similar for 1 and .y(). Alternatively we can have, in the traits class, the dimension as a template parameter in a member template function:<p>
+This enables us to call get<0>(a), for any point having the traits::access specialization, as shown in the distance algorithm at the start of this paragraph. So we wanted to enable classes with methods like .x(), and they are supported as long as there is a specialization of the access struct with a static get function returning .x() for dimension 0, and similar for 1 and .y().<p>
+Alternatively we could implement, in the traits class, the dimension as a template parameter in a member template function:<p>
 <div class="fragment"><pre class="fragment"><span class="keyword">template</span> <>
 <span class="keyword">struct </span>access<mypoint>
 {
@@ -111,7 +112,7 @@
     <span class="comment">//   per dimension</span>
 };
 </pre></div><p>
-This alternative gives in the end the same functionality, either using an if-clause (slower), or adding another level of indirection. <b>This last version is used in GGL</b><h2><a class="anchor" name="par4">
+This alternative gives in the end the same functionality, either using an if-clause (slower), or adding another level of indirection.<h2><a class="anchor" name="par4">
 Dimension agnosticism</a></h2>
 Now we can calculate the distance between points in 2D, points of any structure or class. However, we wanted to have 3D as well. So we have to make it dimension agnostic. This complicates our distance function. We can use a for-loop to walk through dimensions, but for loops have another performance than the addition which was there originally. However, we can make more usage of templates and make the distance algorithm as following, more complex but attractive for template fans: <div class="fragment"><pre class="fragment"><span class="keyword">template</span> <<span class="keyword">typename</span> P1, <span class="keyword">typename</span> P2, <span class="keywordtype">int</span> D>
 <span class="keyword">struct </span>pythagoras
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/distance__concept_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/distance__concept_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/distance__concept_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -130,7 +130,7 @@
 <a name="l00096"></a>00096                 Strategy s;
 <a name="l00097"></a>00097                 ptype *p1;
 <a name="l00098"></a>00098                 ptype *p2;
-<a name="l00099"></a>00099                 rtype r = s(*p1, <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">ggl::segment<const ptype></a>(*p1, *p2));
+<a name="l00099"></a>00099                 rtype r = s(*p1, <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">ggl::segment<const ptype></a>(*p1, *p2));
 <a name="l00100"></a>00100                 boost::ignore_unused_variable_warning(r);
 <a name="l00101"></a>00101             }
 <a name="l00102"></a>00102         };
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/distance__cross__track_8hpp.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/distance__cross__track_8hpp.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/distance__cross__track_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -49,7 +49,7 @@
 <tr><td colspan="2"><br><h2>Classes</h2></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1distance_1_1cross__track.html">ggl::strategy::distance::cross_track< P, S ></a></td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Strategy functor for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> calculation.  More...<br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Strategy functor for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> calculation.  More...<br></td></tr>
 <tr><td colspan="2"><br><h2>Namespaces</h2></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl.html">ggl</a></td></tr>
 
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/distance__result_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/distance__result_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/distance__result_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -48,8 +48,8 @@
 <a name="l00006"></a>00006 <span class="comment">// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at</span>
 <a name="l00007"></a>00007 <span class="comment">// http://www.boost.org/LICENSE_1_0.txt)</span>
 <a name="l00008"></a>00008 
-<a name="l00009"></a>00009 <span class="preprocessor">#ifndef GGL_GEOMETRY_STRATEGIES_DISTANCE_RESULT_HPP</span>
-<a name="l00010"></a>00010 <span class="preprocessor"></span><span class="preprocessor">#define GGL_GEOMETRY_STRATEGIES_DISTANCE_RESULT_HPP</span>
+<a name="l00009"></a>00009 <span class="preprocessor">#ifndef GGL_STRATEGIES_DISTANCE_RESULT_HPP</span>
+<a name="l00010"></a>00010 <span class="preprocessor"></span><span class="preprocessor">#define GGL_STRATEGIES_DISTANCE_RESULT_HPP</span>
 <a name="l00011"></a>00011 <span class="preprocessor"></span>
 <a name="l00012"></a>00012 <span class="preprocessor">#include <utility></span>
 <a name="l00013"></a>00013 <span class="preprocessor">#include <cmath></span>
@@ -57,218 +57,230 @@
 <a name="l00015"></a>00015 <span class="preprocessor">#include <iostream></span>
 <a name="l00016"></a>00016 
 <a name="l00017"></a>00017 <span class="preprocessor">#include <boost/mpl/if.hpp></span>
-<a name="l00018"></a>00018 <span class="preprocessor">#include <boost/type_traits.hpp></span>
-<a name="l00019"></a>00019 
-<a name="l00020"></a>00020 <span class="keyword">namespace </span>ggl {
-<a name="l00021"></a>00021 
-<a name="l00034"></a>00034 <span class="keyword">template</span><<span class="keyword">typename</span> T = <span class="keywordtype">double</span>>
-<a name="l00035"></a><a class="code" href="structggl_1_1cartesian__distance.html">00035</a> <span class="keyword">struct </span><a class="code" href="structggl_1_1cartesian__distance.html" title="Encapsulate the results of distance calculation.">cartesian_distance</a>
-<a name="l00036"></a>00036 {
-<a name="l00037"></a>00037     <span class="keyword">private</span> :
-<a name="l00038"></a>00038         T m_squared_distance;
-<a name="l00039"></a>00039 
-<a name="l00040"></a>00040         <span class="comment">// Because result is square-rooted, for integer, the cast should</span>
-<a name="l00041"></a>00041         <span class="comment">// go to double and NOT to T</span>
-<a name="l00042"></a>00042         <span class="keyword">typedef</span> <span class="keyword">typename</span>
-<a name="l00043"></a>00043             boost::mpl::if_c
-<a name="l00044"></a>00044             <
-<a name="l00045"></a>00045                 boost::is_integral<T>::type::value,
-<a name="l00046"></a>00046                 double,
-<a name="l00047"></a>00047                 T
-<a name="l00048"></a>00048             >::type cast_type;
-<a name="l00049"></a>00049 
-<a name="l00050"></a>00050 
-<a name="l00051"></a>00051 
-<a name="l00052"></a>00052 
-<a name="l00053"></a>00053     <span class="keyword">public</span> :
+<a name="l00018"></a>00018 <span class="preprocessor">#include <boost/numeric/conversion/cast.hpp></span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include <boost/type_traits.hpp></span>
+<a name="l00020"></a>00020 
+<a name="l00021"></a>00021 <span class="preprocessor">#include <<a class="code" href="select__most__precise_8hpp.html">ggl/util/select_most_precise.hpp</a>></span>
+<a name="l00022"></a>00022 
+<a name="l00023"></a>00023 
+<a name="l00024"></a>00024 <span class="keyword">namespace </span>ggl {
+<a name="l00025"></a>00025 
+<a name="l00038"></a>00038 <span class="keyword">template</span><<span class="keyword">typename</span> T = <span class="keywordtype">double</span>>
+<a name="l00039"></a><a class="code" href="structggl_1_1cartesian__distance.html">00039</a> <span class="keyword">struct </span><a class="code" href="structggl_1_1cartesian__distance.html" title="Encapsulate the results of distance calculation.">cartesian_distance</a>
+<a name="l00040"></a>00040 {
+<a name="l00041"></a>00041     <span class="keyword">private</span> :
+<a name="l00042"></a>00042         T m_squared_distance;
+<a name="l00043"></a>00043 
+<a name="l00044"></a>00044         <span class="comment">// Because result is square-rooted, for integer, the cast should</span>
+<a name="l00045"></a>00045         <span class="comment">// go to double and NOT to T</span>
+<a name="l00046"></a>00046         <span class="keyword">typedef</span> <span class="keyword">typename</span>
+<a name="l00047"></a>00047             boost::mpl::if_c
+<a name="l00048"></a>00048             <
+<a name="l00049"></a>00049                 boost::is_integral<T>::type::value,
+<a name="l00050"></a>00050                 double,
+<a name="l00051"></a>00051                 T
+<a name="l00052"></a>00052             >::type cast_type;
+<a name="l00053"></a>00053 
 <a name="l00054"></a>00054 
 <a name="l00055"></a>00055 
-<a name="l00057"></a><a class="code" href="structggl_1_1cartesian__distance.html#441dcc3558edeb3bee94c667cfdfbd68">00057</a>         <span class="keyword">explicit</span> <a class="code" href="structggl_1_1cartesian__distance.html#441dcc3558edeb3bee94c667cfdfbd68" title="Constructor with a value.">cartesian_distance</a>(T <span class="keyword">const</span>& v) : m_squared_distance(v) {}
+<a name="l00056"></a>00056 
+<a name="l00057"></a>00057     <span class="keyword">public</span> :
 <a name="l00058"></a>00058 
-<a name="l00061"></a><a class="code" href="structggl_1_1cartesian__distance.html#0f7ef783e29548ca43f47bee6bca108e">00061</a>         <span class="keyword">inline</span> <a class="code" href="structggl_1_1cartesian__distance.html#0f7ef783e29548ca43f47bee6bca108e">operator cast_type</a>()<span class="keyword"> const</span>
-<a name="l00062"></a>00062 <span class="keyword">        </span>{
-<a name="l00063"></a>00063 <span class="preprocessor">#if defined(NUMERIC_ADAPTOR_INCLUDED)</span>
-<a name="l00064"></a>00064 <span class="preprocessor"></span>            <span class="keywordflow">return</span> boost::sqrt(m_squared_distance);
-<a name="l00065"></a>00065 <span class="preprocessor">#else</span>
-<a name="l00066"></a>00066 <span class="preprocessor"></span>            <span class="keywordflow">return</span> std::sqrt((<span class="keywordtype">long</span> <span class="keywordtype">double</span>)m_squared_distance);
-<a name="l00067"></a>00067 <span class="preprocessor">#endif</span>
-<a name="l00068"></a>00068 <span class="preprocessor"></span>        }
-<a name="l00069"></a>00069 
-<a name="l00070"></a>00070         <span class="comment">// Compare squared values</span>
-<a name="l00071"></a><a class="code" href="structggl_1_1cartesian__distance.html#51d4f3bf5567b0524530fa7bff0c7b66">00071</a>         <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator<(cartesian_distance<T> <span class="keyword">const</span>& other) <span class="keyword">const</span>
-<a name="l00072"></a>00072         {
-<a name="l00073"></a>00073             <span class="keywordflow">return</span> this->m_squared_distance < other.m_squared_distance;
-<a name="l00074"></a>00074         }
-<a name="l00075"></a><a class="code" href="structggl_1_1cartesian__distance.html#ceef956ddf49e24629a558758f44c8a6">00075</a>         <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="structggl_1_1cartesian__distance.html#ceef956ddf49e24629a558758f44c8a6">operator></a>(<a class="code" href="structggl_1_1cartesian__distance.html" title="Encapsulate the results of distance calculation.">cartesian_distance<T></a> <span class="keyword">const</span>& other)<span class="keyword"> const</span>
-<a name="l00076"></a>00076 <span class="keyword">        </span>{
-<a name="l00077"></a>00077             <span class="keywordflow">return</span> this->m_squared_distance > other.m_squared_distance;
-<a name="l00078"></a>00078         }
-<a name="l00079"></a><a class="code" href="structggl_1_1cartesian__distance.html#951bdb772253f50194a754b7740f54b7">00079</a>         <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="structggl_1_1cartesian__distance.html#951bdb772253f50194a754b7740f54b7">operator==</a>(<a class="code" href="structggl_1_1cartesian__distance.html" title="Encapsulate the results of distance calculation.">cartesian_distance<T></a> <span class="keyword">const</span>& other)<span class="keyword"> const</span>
-<a name="l00080"></a>00080 <span class="keyword">        </span>{
-<a name="l00081"></a>00081             <span class="keywordflow">return</span> this->m_squared_distance == other.m_squared_distance;
-<a name="l00082"></a>00082         }
-<a name="l00083"></a>00083 
-<a name="l00084"></a>00084         <span class="comment">// Compare just with a corresponding POD value</span>
-<a name="l00085"></a>00085         <span class="comment">// Note: this is NOT possible because of the cast to double,</span>
-<a name="l00086"></a>00086         <span class="comment">// it makes it for the compiler ambiguous which to take</span>
-<a name="l00087"></a>00087         <span class="comment">/*</span>
-<a name="l00088"></a>00088 <span class="comment">        inline bool operator<(T const& value) const</span>
-<a name="l00089"></a>00089 <span class="comment">        {</span>
-<a name="l00090"></a>00090 <span class="comment">            return this->m_squared_distance < (value * value);</span>
-<a name="l00091"></a>00091 <span class="comment">        }</span>
-<a name="l00092"></a>00092 <span class="comment">        inline bool operator>(T const& value) const</span>
-<a name="l00093"></a>00093 <span class="comment">        {</span>
-<a name="l00094"></a>00094 <span class="comment">            return this->m_squared_distance > (value * value);</span>
-<a name="l00095"></a>00095 <span class="comment">        }</span>
-<a name="l00096"></a>00096 <span class="comment">        inline bool operator==(T const& value) const</span>
-<a name="l00097"></a>00097 <span class="comment">        {</span>
-<a name="l00098"></a>00098 <span class="comment">            return this->m_squared_distance == (value * value);</span>
-<a name="l00099"></a>00099 <span class="comment">        }</span>
-<a name="l00100"></a>00100 <span class="comment">        */</span>
-<a name="l00101"></a>00101 
-<a name="l00102"></a>00102         <span class="comment">// Utility method to compare without SQRT, but not with method above because for epsilon that</span>
-<a name="l00103"></a>00103         <span class="comment">// makes no sense...</span>
-<a name="l00104"></a><a class="code" href="structggl_1_1cartesian__distance.html#26942eda96fb105ee48a9d7c0ae8631c">00104</a>         <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="structggl_1_1cartesian__distance.html#26942eda96fb105ee48a9d7c0ae8631c">very_small</a>()<span class="keyword"> const</span>
-<a name="l00105"></a>00105 <span class="keyword">        </span>{
-<a name="l00106"></a>00106             <span class="keywordflow">return</span> m_squared_distance <= std::numeric_limits<T>::epsilon();
-<a name="l00107"></a>00107         }
-<a name="l00108"></a>00108 
-<a name="l00110"></a><a class="code" href="structggl_1_1cartesian__distance.html#4f02e39f538a1bc1551b3e22a08ca94b">00110</a>         <span class="keyword">inline</span> T <a class="code" href="structggl_1_1cartesian__distance.html#4f02e39f538a1bc1551b3e22a08ca94b" title="The &quot;squared_value&quot; method returns the internal squared value.">squared_value</a>()<span class="keyword"> const</span>
-<a name="l00111"></a>00111 <span class="keyword">        </span>{
-<a name="l00112"></a>00112             <span class="keywordflow">return</span> m_squared_distance;
-<a name="l00113"></a>00113         }
-<a name="l00114"></a>00114 
-<a name="l00116"></a>00116         <span class="keyword">template</span> <<span class="keyword">typename</span> CH, <span class="keyword">typename</span> TR>
-<a name="l00117"></a><a class="code" href="structggl_1_1cartesian__distance.html#5a78899edbed0eae576b6fdc5f784ad2">00117</a>         <span class="keyword">inline</span> <span class="keyword">friend</span> std::basic_ostream<CH, TR>& operator<<(std::basic_ostream<CH, TR>& os,
-<a name="l00118"></a>00118                         <a class="code" href="structggl_1_1cartesian__distance.html" title="Encapsulate the results of distance calculation.">cartesian_distance<T></a> <span class="keyword">const</span>& d)
-<a name="l00119"></a>00119         {
-<a name="l00120"></a>00120             <span class="comment">// Avoid "ambiguous function call" for MSVC</span>
-<a name="l00121"></a>00121             cast_type <span class="keyword">const</span> sq = d.m_squared_distance;
-<a name="l00122"></a>00122 
-<a name="l00123"></a>00123             os <<
-<a name="l00124"></a>00124 <span class="preprocessor">#if defined(NUMERIC_ADAPTOR_INCLUDED)</span>
-<a name="l00125"></a>00125 <span class="preprocessor"></span>                boost::sqrt(sq);
-<a name="l00126"></a>00126 <span class="preprocessor">#else</span>
-<a name="l00127"></a>00127 <span class="preprocessor"></span>                std::sqrt(sq);
-<a name="l00128"></a>00128 <span class="preprocessor">#endif</span>
-<a name="l00129"></a>00129 <span class="preprocessor"></span>            <span class="keywordflow">return</span> os;
-<a name="l00130"></a>00130         }
-<a name="l00131"></a>00131 
-<a name="l00132"></a>00132 };
-<a name="l00133"></a>00133 
+<a name="l00059"></a>00059 
+<a name="l00061"></a><a class="code" href="structggl_1_1cartesian__distance.html#441dcc3558edeb3bee94c667cfdfbd68">00061</a>         <span class="keyword">explicit</span> <a class="code" href="structggl_1_1cartesian__distance.html#441dcc3558edeb3bee94c667cfdfbd68" title="Constructor with a value.">cartesian_distance</a>(T <span class="keyword">const</span>& v) : m_squared_distance(v) {}
+<a name="l00062"></a>00062 
+<a name="l00065"></a><a class="code" href="structggl_1_1cartesian__distance.html#0f7ef783e29548ca43f47bee6bca108e">00065</a>         <span class="keyword">inline</span> <a class="code" href="structggl_1_1cartesian__distance.html#0f7ef783e29548ca43f47bee6bca108e">operator cast_type</a>()<span class="keyword"> const</span>
+<a name="l00066"></a>00066 <span class="keyword">        </span>{
+<a name="l00067"></a>00067 <span class="preprocessor">#if defined(NUMERIC_ADAPTOR_INCLUDED)</span>
+<a name="l00068"></a>00068 <span class="preprocessor"></span>            <span class="keywordflow">return</span> boost::sqrt(m_squared_distance);
+<a name="l00069"></a>00069 <span class="preprocessor">#else</span>
+<a name="l00070"></a>00070 <span class="preprocessor"></span>            <span class="keywordflow">return</span> boost::numeric_cast<cast_type>
+<a name="l00071"></a>00071                 (
+<a name="l00072"></a>00072                     std::sqrt(
+<a name="l00073"></a>00073                         boost::numeric_cast
+<a name="l00074"></a>00074                             <
+<a name="l00075"></a>00075                                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1select__most__precise.html" title="Traits class to select, of two types, the most accurate type for calculations.">select_most_precise<cast_type, double>::type</a>
+<a name="l00076"></a>00076                             >(m_squared_distance)
+<a name="l00077"></a>00077                             )
+<a name="l00078"></a>00078                 );
+<a name="l00079"></a>00079 <span class="preprocessor">#endif</span>
+<a name="l00080"></a>00080 <span class="preprocessor"></span>        }
+<a name="l00081"></a>00081 
+<a name="l00082"></a>00082         <span class="comment">// Compare squared values</span>
+<a name="l00083"></a><a class="code" href="structggl_1_1cartesian__distance.html#51d4f3bf5567b0524530fa7bff0c7b66">00083</a>         <span class="keyword">inline</span> <span class="keywordtype">bool</span> operator<(cartesian_distance<T> <span class="keyword">const</span>& other) <span class="keyword">const</span>
+<a name="l00084"></a>00084         {
+<a name="l00085"></a>00085             <span class="keywordflow">return</span> this->m_squared_distance < other.m_squared_distance;
+<a name="l00086"></a>00086         }
+<a name="l00087"></a><a class="code" href="structggl_1_1cartesian__distance.html#ceef956ddf49e24629a558758f44c8a6">00087</a>         <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="structggl_1_1cartesian__distance.html#ceef956ddf49e24629a558758f44c8a6">operator></a>(<a class="code" href="structggl_1_1cartesian__distance.html" title="Encapsulate the results of distance calculation.">cartesian_distance<T></a> <span class="keyword">const</span>& other)<span class="keyword"> const</span>
+<a name="l00088"></a>00088 <span class="keyword">        </span>{
+<a name="l00089"></a>00089             <span class="keywordflow">return</span> this->m_squared_distance > other.m_squared_distance;
+<a name="l00090"></a>00090         }
+<a name="l00091"></a><a class="code" href="structggl_1_1cartesian__distance.html#951bdb772253f50194a754b7740f54b7">00091</a>         <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="structggl_1_1cartesian__distance.html#951bdb772253f50194a754b7740f54b7">operator==</a>(<a class="code" href="structggl_1_1cartesian__distance.html" title="Encapsulate the results of distance calculation.">cartesian_distance<T></a> <span class="keyword">const</span>& other)<span class="keyword"> const</span>
+<a name="l00092"></a>00092 <span class="keyword">        </span>{
+<a name="l00093"></a>00093             <span class="keywordflow">return</span> this->m_squared_distance == other.m_squared_distance;
+<a name="l00094"></a>00094         }
+<a name="l00095"></a>00095 
+<a name="l00096"></a>00096         <span class="comment">// Compare just with a corresponding POD value</span>
+<a name="l00097"></a>00097         <span class="comment">// Note: this is NOT possible because of the cast to double,</span>
+<a name="l00098"></a>00098         <span class="comment">// it makes it for the compiler ambiguous which to take</span>
+<a name="l00099"></a>00099         <span class="comment">/*</span>
+<a name="l00100"></a>00100 <span class="comment">        inline bool operator<(T const& value) const</span>
+<a name="l00101"></a>00101 <span class="comment">        {</span>
+<a name="l00102"></a>00102 <span class="comment">            return this->m_squared_distance < (value * value);</span>
+<a name="l00103"></a>00103 <span class="comment">        }</span>
+<a name="l00104"></a>00104 <span class="comment">        inline bool operator>(T const& value) const</span>
+<a name="l00105"></a>00105 <span class="comment">        {</span>
+<a name="l00106"></a>00106 <span class="comment">            return this->m_squared_distance > (value * value);</span>
+<a name="l00107"></a>00107 <span class="comment">        }</span>
+<a name="l00108"></a>00108 <span class="comment">        inline bool operator==(T const& value) const</span>
+<a name="l00109"></a>00109 <span class="comment">        {</span>
+<a name="l00110"></a>00110 <span class="comment">            return this->m_squared_distance == (value * value);</span>
+<a name="l00111"></a>00111 <span class="comment">        }</span>
+<a name="l00112"></a>00112 <span class="comment">        */</span>
+<a name="l00113"></a>00113 
+<a name="l00114"></a>00114         <span class="comment">// Utility method to compare without SQRT, but not with method above because for epsilon that</span>
+<a name="l00115"></a>00115         <span class="comment">// makes no sense...</span>
+<a name="l00116"></a><a class="code" href="structggl_1_1cartesian__distance.html#26942eda96fb105ee48a9d7c0ae8631c">00116</a>         <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="structggl_1_1cartesian__distance.html#26942eda96fb105ee48a9d7c0ae8631c">very_small</a>()<span class="keyword"> const</span>
+<a name="l00117"></a>00117 <span class="keyword">        </span>{
+<a name="l00118"></a>00118             <span class="keywordflow">return</span> m_squared_distance <= std::numeric_limits<T>::epsilon();
+<a name="l00119"></a>00119         }
+<a name="l00120"></a>00120 
+<a name="l00122"></a><a class="code" href="structggl_1_1cartesian__distance.html#4f02e39f538a1bc1551b3e22a08ca94b">00122</a>         <span class="keyword">inline</span> T <a class="code" href="structggl_1_1cartesian__distance.html#4f02e39f538a1bc1551b3e22a08ca94b" title="The &quot;squared_value&quot; method returns the internal squared value.">squared_value</a>()<span class="keyword"> const</span>
+<a name="l00123"></a>00123 <span class="keyword">        </span>{
+<a name="l00124"></a>00124             <span class="keywordflow">return</span> m_squared_distance;
+<a name="l00125"></a>00125         }
+<a name="l00126"></a>00126 
+<a name="l00128"></a>00128         <span class="keyword">template</span> <<span class="keyword">typename</span> CH, <span class="keyword">typename</span> TR>
+<a name="l00129"></a><a class="code" href="structggl_1_1cartesian__distance.html#5a78899edbed0eae576b6fdc5f784ad2">00129</a>         <span class="keyword">inline</span> <span class="keyword">friend</span> std::basic_ostream<CH, TR>& operator<<(std::basic_ostream<CH, TR>& os,
+<a name="l00130"></a>00130                         <a class="code" href="structggl_1_1cartesian__distance.html" title="Encapsulate the results of distance calculation.">cartesian_distance<T></a> <span class="keyword">const</span>& d)
+<a name="l00131"></a>00131         {
+<a name="l00132"></a>00132             <span class="comment">// Avoid "ambiguous function call" for MSVC</span>
+<a name="l00133"></a>00133             cast_type <span class="keyword">const</span> sq = d.m_squared_distance;
 <a name="l00134"></a>00134 
-<a name="l00135"></a>00135 
-<a name="l00136"></a>00136 <span class="comment">/*</span>
-<a name="l00137"></a>00137 <span class="comment"></span>
-<a name="l00138"></a>00138 <span class="comment">    From Phil Endecott, on the list:</span>
-<a name="l00139"></a>00139 <span class="comment"></span>
-<a name="l00140"></a>00140 <span class="comment">    You can go further.  If I'm searching through a long list of points to</span>
-<a name="l00141"></a>00141 <span class="comment">    find the closest to P then I'll avoid the squaring (and conversion to</span>
-<a name="l00142"></a>00142 <span class="comment">    double if my co-ordinates are integers) whenever possible.  You can</span>
-<a name="l00143"></a>00143 <span class="comment">    achieve this with a more complex distance proxy:</span>
-<a name="l00144"></a>00144 <span class="comment"></span>
-<a name="l00145"></a>00145 <span class="comment">    class distance_proxy {</span>
-<a name="l00146"></a>00146 <span class="comment">       double dx;</span>
-<a name="l00147"></a>00147 <span class="comment">       double dy;</span>
-<a name="l00148"></a>00148 <span class="comment">       distance_proxy(double dx_, double dy_): dx(dx_), dy(dy_) {}</span>
-<a name="l00149"></a>00149 <span class="comment">       friend pythag_distance(point,point);</span>
-<a name="l00150"></a>00150 <span class="comment">    public:</span>
-<a name="l00151"></a>00151 <span class="comment">       operator double() { return sqrt(dx*dx+dy*dy); }</span>
-<a name="l00152"></a>00152 <span class="comment">       bool operator>(double d) {</span>
-<a name="l00153"></a>00153 <span class="comment">         return dx>d</span>
-<a name="l00154"></a>00154 <span class="comment">             || dy>d</span>
-<a name="l00155"></a>00155 <span class="comment">             || (dx*dx+dy*dy > d*d);</span>
-<a name="l00156"></a>00156 <span class="comment">       }</span>
-<a name="l00157"></a>00157 <span class="comment">    };</span>
-<a name="l00158"></a>00158 <span class="comment"></span>
-<a name="l00159"></a>00159 <span class="comment">    So this is convertible to double, but can be compared to a distance</span>
-<a name="l00160"></a>00160 <span class="comment">    without any need for sqrt() and only multiplication in some cases.</span>
-<a name="l00161"></a>00161 <span class="comment">    Further refinement is possible.</span>
-<a name="l00162"></a>00162 <span class="comment"></span>
-<a name="l00163"></a>00163 <span class="comment"></span>
-<a name="l00164"></a>00164 <span class="comment">    Barend:</span>
-<a name="l00165"></a>00165 <span class="comment">    feasable, needs to be templatized by the number of dimensions. For distance it</span>
-<a name="l00166"></a>00166 <span class="comment">    results in a nice "delayed calculation".</span>
-<a name="l00167"></a>00167 <span class="comment">    For searching you might take another approach, first calculate dx, if OK then dy,</span>
-<a name="l00168"></a>00168 <span class="comment">    if OK then the sqrs. So as above but than distance does not need to be calculated.</span>
-<a name="l00169"></a>00169 <span class="comment">    So it is in fact another strategy.</span>
+<a name="l00135"></a>00135             os <<
+<a name="l00136"></a>00136 <span class="preprocessor">#if defined(NUMERIC_ADAPTOR_INCLUDED)</span>
+<a name="l00137"></a>00137 <span class="preprocessor"></span>                boost::sqrt(sq);
+<a name="l00138"></a>00138 <span class="preprocessor">#else</span>
+<a name="l00139"></a>00139 <span class="preprocessor"></span>                std::sqrt(sq);
+<a name="l00140"></a>00140 <span class="preprocessor">#endif</span>
+<a name="l00141"></a>00141 <span class="preprocessor"></span>            <span class="keywordflow">return</span> os;
+<a name="l00142"></a>00142         }
+<a name="l00143"></a>00143 
+<a name="l00144"></a>00144 };
+<a name="l00145"></a>00145 
+<a name="l00146"></a>00146 
+<a name="l00147"></a>00147 
+<a name="l00148"></a>00148 <span class="comment">/*</span>
+<a name="l00149"></a>00149 <span class="comment"></span>
+<a name="l00150"></a>00150 <span class="comment">    From Phil Endecott, on the list:</span>
+<a name="l00151"></a>00151 <span class="comment"></span>
+<a name="l00152"></a>00152 <span class="comment">    You can go further.  If I'm searching through a long list of points to</span>
+<a name="l00153"></a>00153 <span class="comment">    find the closest to P then I'll avoid the squaring (and conversion to</span>
+<a name="l00154"></a>00154 <span class="comment">    double if my co-ordinates are integers) whenever possible.  You can</span>
+<a name="l00155"></a>00155 <span class="comment">    achieve this with a more complex distance proxy:</span>
+<a name="l00156"></a>00156 <span class="comment"></span>
+<a name="l00157"></a>00157 <span class="comment">    class distance_proxy {</span>
+<a name="l00158"></a>00158 <span class="comment">       double dx;</span>
+<a name="l00159"></a>00159 <span class="comment">       double dy;</span>
+<a name="l00160"></a>00160 <span class="comment">       distance_proxy(double dx_, double dy_): dx(dx_), dy(dy_) {}</span>
+<a name="l00161"></a>00161 <span class="comment">       friend pythag_distance(point,point);</span>
+<a name="l00162"></a>00162 <span class="comment">    public:</span>
+<a name="l00163"></a>00163 <span class="comment">       operator double() { return sqrt(dx*dx+dy*dy); }</span>
+<a name="l00164"></a>00164 <span class="comment">       bool operator>(double d) {</span>
+<a name="l00165"></a>00165 <span class="comment">         return dx>d</span>
+<a name="l00166"></a>00166 <span class="comment">             || dy>d</span>
+<a name="l00167"></a>00167 <span class="comment">             || (dx*dx+dy*dy > d*d);</span>
+<a name="l00168"></a>00168 <span class="comment">       }</span>
+<a name="l00169"></a>00169 <span class="comment">    };</span>
 <a name="l00170"></a>00170 <span class="comment"></span>
-<a name="l00171"></a>00171 <span class="comment"></span>
-<a name="l00172"></a>00172 <span class="comment">*/</span>
-<a name="l00173"></a>00173 
-<a name="l00174"></a>00174 
-<a name="l00175"></a>00175 
-<a name="l00176"></a>00176 <span class="preprocessor">#ifndef DOXYGEN_NO_DETAIL</span>
-<a name="l00177"></a>00177 <span class="preprocessor"></span><span class="keyword">namespace </span>detail
-<a name="l00178"></a>00178 {
-<a name="l00179"></a>00179     <span class="keyword">namespace </span><a class="code" href="group__distance.html#g22a618786d2601e9201896a8346c161b" title="Calculate distance between two geometries with a specified strategy.">distance</a>
-<a name="l00180"></a>00180     {
-<a name="l00181"></a>00181         <span class="keyword">template</span> <<span class="keyword">typename</span> R, <span class="keyword">typename</span> T>
-<a name="l00182"></a>00182         <span class="keyword">struct </span>distance_result_maker
-<a name="l00183"></a>00183         {
-<a name="l00184"></a>00184         };
+<a name="l00171"></a>00171 <span class="comment">    So this is convertible to double, but can be compared to a distance</span>
+<a name="l00172"></a>00172 <span class="comment">    without any need for sqrt() and only multiplication in some cases.</span>
+<a name="l00173"></a>00173 <span class="comment">    Further refinement is possible.</span>
+<a name="l00174"></a>00174 <span class="comment"></span>
+<a name="l00175"></a>00175 <span class="comment"></span>
+<a name="l00176"></a>00176 <span class="comment">    Barend:</span>
+<a name="l00177"></a>00177 <span class="comment">    feasable, needs to be templatized by the number of dimensions. For distance it</span>
+<a name="l00178"></a>00178 <span class="comment">    results in a nice "delayed calculation".</span>
+<a name="l00179"></a>00179 <span class="comment">    For searching you might take another approach, first calculate dx, if OK then dy,</span>
+<a name="l00180"></a>00180 <span class="comment">    if OK then the sqrs. So as above but than distance does not need to be calculated.</span>
+<a name="l00181"></a>00181 <span class="comment">    So it is in fact another strategy.</span>
+<a name="l00182"></a>00182 <span class="comment"></span>
+<a name="l00183"></a>00183 <span class="comment"></span>
+<a name="l00184"></a>00184 <span class="comment">*/</span>
 <a name="l00185"></a>00185 
-<a name="l00186"></a>00186         <span class="keyword">template</span> <<span class="keyword">typename</span> R, <span class="keyword">typename</span> T>
-<a name="l00187"></a>00187         <span class="keyword">struct </span>distance_result_maker<ggl::cartesian_distance<R>, T>
-<a name="l00188"></a>00188         {
-<a name="l00189"></a>00189             <span class="keyword">static</span> <span class="keyword">inline</span> <a class="code" href="structggl_1_1cartesian__distance.html" title="Encapsulate the results of distance calculation.">ggl::cartesian_distance<R></a> apply(T <span class="keyword">const</span>& value)
-<a name="l00190"></a>00190             {
-<a name="l00191"></a>00191                 <span class="keywordflow">return</span> cartesian_distance<R>(value * value);
-<a name="l00192"></a>00192             }
-<a name="l00193"></a>00193         };
-<a name="l00194"></a>00194 
-<a name="l00195"></a>00195         <span class="keyword">template</span> <<span class="keyword">typename</span> T>
-<a name="l00196"></a>00196         <span class="keyword">struct </span>distance_result_maker<double, T>
-<a name="l00197"></a>00197         {
-<a name="l00198"></a>00198             <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">double</span> apply(T <span class="keyword">const</span>& value)
-<a name="l00199"></a>00199             {
-<a name="l00200"></a>00200                 <span class="keywordflow">return</span> value;
-<a name="l00201"></a>00201             }
-<a name="l00202"></a>00202         };
-<a name="l00203"></a>00203 
-<a name="l00204"></a>00204 
-<a name="l00205"></a>00205         <span class="keyword">template</span> <<span class="keyword">typename</span> T>
-<a name="l00206"></a>00206         <span class="keyword">struct </span><a class="code" href="group__distance.html#ge8ca95bca0a05bf37ceee1996d55c098" title="Utility function to check if a distance is very small.">close_to_zero</a>
-<a name="l00207"></a>00207         {
-<a name="l00208"></a>00208             <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">bool</span> apply(T <span class="keyword">const</span>& value)
-<a name="l00209"></a>00209             {
-<a name="l00210"></a>00210                 <span class="keywordflow">return</span> value <= std::numeric_limits<T>::epsilon();
-<a name="l00211"></a>00211             }
-<a name="l00212"></a>00212         };
-<a name="l00213"></a>00213 
-<a name="l00214"></a>00214 
-<a name="l00215"></a>00215         <span class="keyword">template</span> <<span class="keyword">typename</span> T>
-<a name="l00216"></a>00216         <span class="keyword">struct </span><a class="code" href="group__distance.html#ge8ca95bca0a05bf37ceee1996d55c098" title="Utility function to check if a distance is very small.">close_to_zero</a><ggl::cartesian_distance<T> >
-<a name="l00217"></a>00217         {
-<a name="l00218"></a>00218             <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">bool</span> apply(<a class="code" href="structggl_1_1cartesian__distance.html" title="Encapsulate the results of distance calculation.">ggl::cartesian_distance<T></a> <span class="keyword">const</span>& value)
-<a name="l00219"></a>00219             {
-<a name="l00220"></a>00220                 <span class="keywordflow">return</span> value.<a class="code" href="structggl_1_1cartesian__distance.html#26942eda96fb105ee48a9d7c0ae8631c">very_small</a>();
-<a name="l00221"></a>00221             }
-<a name="l00222"></a>00222         };
-<a name="l00223"></a>00223 
-<a name="l00224"></a>00224 
-<a name="l00225"></a>00225     }
-<a name="l00226"></a>00226 }
-<a name="l00227"></a>00227 <span class="preprocessor">#endif</span>
-<a name="l00228"></a>00228 <span class="preprocessor"></span>
-<a name="l00229"></a>00229 
-<a name="l00241"></a>00241 <span class="keyword">template</span> <<span class="keyword">typename</span> R, <span class="keyword">typename</span> T>
-<a name="l00242"></a><a class="code" href="group__distance.html#g9bf8e81819c5cdbff3111e148ead0331">00242</a> <span class="keyword">inline</span> R <a class="code" href="group__distance.html#g9bf8e81819c5cdbff3111e148ead0331" title="Object generator to create instance which can be compared.">make_distance_result</a>(T <span class="keyword">const</span>& value)
-<a name="l00243"></a>00243 {
-<a name="l00244"></a>00244     <span class="keywordflow">return</span> detail::distance::distance_result_maker<R, T>::apply(value);
-<a name="l00245"></a>00245 }
-<a name="l00246"></a>00246 
-<a name="l00247"></a>00247 
-<a name="l00256"></a>00256 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
-<a name="l00257"></a><a class="code" href="group__distance.html#ge8ca95bca0a05bf37ceee1996d55c098">00257</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="group__distance.html#ge8ca95bca0a05bf37ceee1996d55c098" title="Utility function to check if a distance is very small.">close_to_zero</a>(T <span class="keyword">const</span>& value)
-<a name="l00258"></a>00258 {
-<a name="l00259"></a>00259     <span class="keywordflow">return</span> detail::distance::close_to_zero<T>::apply(value);
-<a name="l00260"></a>00260 }
-<a name="l00261"></a>00261 
-<a name="l00262"></a>00262 } <span class="comment">// namespace ggl</span>
-<a name="l00263"></a>00263 
-<a name="l00264"></a>00264 
-<a name="l00265"></a>00265 <span class="preprocessor">#endif // GGL_GEOMETRY_STRATEGIES_DISTANCE_RESULT_HPP</span>
+<a name="l00186"></a>00186 
+<a name="l00187"></a>00187 
+<a name="l00188"></a>00188 <span class="preprocessor">#ifndef DOXYGEN_NO_DETAIL</span>
+<a name="l00189"></a>00189 <span class="preprocessor"></span><span class="keyword">namespace </span>detail
+<a name="l00190"></a>00190 {
+<a name="l00191"></a>00191     <span class="keyword">namespace </span><a class="code" href="group__distance.html#g22a618786d2601e9201896a8346c161b" title="Calculate distance between two geometries with a specified strategy.">distance</a>
+<a name="l00192"></a>00192     {
+<a name="l00193"></a>00193         <span class="keyword">template</span> <<span class="keyword">typename</span> R, <span class="keyword">typename</span> T>
+<a name="l00194"></a>00194         <span class="keyword">struct </span>distance_result_maker
+<a name="l00195"></a>00195         {
+<a name="l00196"></a>00196         };
+<a name="l00197"></a>00197 
+<a name="l00198"></a>00198         <span class="keyword">template</span> <<span class="keyword">typename</span> R, <span class="keyword">typename</span> T>
+<a name="l00199"></a>00199         <span class="keyword">struct </span>distance_result_maker<ggl::cartesian_distance<R>, T>
+<a name="l00200"></a>00200         {
+<a name="l00201"></a>00201             <span class="keyword">static</span> <span class="keyword">inline</span> <a class="code" href="structggl_1_1cartesian__distance.html" title="Encapsulate the results of distance calculation.">ggl::cartesian_distance<R></a> apply(T <span class="keyword">const</span>& value)
+<a name="l00202"></a>00202             {
+<a name="l00203"></a>00203                 <span class="keywordflow">return</span> cartesian_distance<R>(value * value);
+<a name="l00204"></a>00204             }
+<a name="l00205"></a>00205         };
+<a name="l00206"></a>00206 
+<a name="l00207"></a>00207         <span class="keyword">template</span> <<span class="keyword">typename</span> T>
+<a name="l00208"></a>00208         <span class="keyword">struct </span>distance_result_maker<double, T>
+<a name="l00209"></a>00209         {
+<a name="l00210"></a>00210             <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">double</span> apply(T <span class="keyword">const</span>& value)
+<a name="l00211"></a>00211             {
+<a name="l00212"></a>00212                 <span class="keywordflow">return</span> value;
+<a name="l00213"></a>00213             }
+<a name="l00214"></a>00214         };
+<a name="l00215"></a>00215 
+<a name="l00216"></a>00216 
+<a name="l00217"></a>00217         <span class="keyword">template</span> <<span class="keyword">typename</span> T>
+<a name="l00218"></a>00218         <span class="keyword">struct </span><a class="code" href="group__distance.html#ge8ca95bca0a05bf37ceee1996d55c098" title="Utility function to check if a distance is very small.">close_to_zero</a>
+<a name="l00219"></a>00219         {
+<a name="l00220"></a>00220             <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">bool</span> apply(T <span class="keyword">const</span>& value)
+<a name="l00221"></a>00221             {
+<a name="l00222"></a>00222                 <span class="keywordflow">return</span> value <= std::numeric_limits<T>::epsilon();
+<a name="l00223"></a>00223             }
+<a name="l00224"></a>00224         };
+<a name="l00225"></a>00225 
+<a name="l00226"></a>00226 
+<a name="l00227"></a>00227         <span class="keyword">template</span> <<span class="keyword">typename</span> T>
+<a name="l00228"></a>00228         <span class="keyword">struct </span><a class="code" href="group__distance.html#ge8ca95bca0a05bf37ceee1996d55c098" title="Utility function to check if a distance is very small.">close_to_zero</a><ggl::cartesian_distance<T> >
+<a name="l00229"></a>00229         {
+<a name="l00230"></a>00230             <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">bool</span> apply(<a class="code" href="structggl_1_1cartesian__distance.html" title="Encapsulate the results of distance calculation.">ggl::cartesian_distance<T></a> <span class="keyword">const</span>& value)
+<a name="l00231"></a>00231             {
+<a name="l00232"></a>00232                 <span class="keywordflow">return</span> value.<a class="code" href="structggl_1_1cartesian__distance.html#26942eda96fb105ee48a9d7c0ae8631c">very_small</a>();
+<a name="l00233"></a>00233             }
+<a name="l00234"></a>00234         };
+<a name="l00235"></a>00235 
+<a name="l00236"></a>00236 
+<a name="l00237"></a>00237     }
+<a name="l00238"></a>00238 }
+<a name="l00239"></a>00239 <span class="preprocessor">#endif</span>
+<a name="l00240"></a>00240 <span class="preprocessor"></span>
+<a name="l00241"></a>00241 
+<a name="l00253"></a>00253 <span class="keyword">template</span> <<span class="keyword">typename</span> R, <span class="keyword">typename</span> T>
+<a name="l00254"></a><a class="code" href="group__distance.html#g9bf8e81819c5cdbff3111e148ead0331">00254</a> <span class="keyword">inline</span> R <a class="code" href="group__distance.html#g9bf8e81819c5cdbff3111e148ead0331" title="Object generator to create instance which can be compared.">make_distance_result</a>(T <span class="keyword">const</span>& value)
+<a name="l00255"></a>00255 {
+<a name="l00256"></a>00256     <span class="keywordflow">return</span> detail::distance::distance_result_maker<R, T>::apply(value);
+<a name="l00257"></a>00257 }
+<a name="l00258"></a>00258 
+<a name="l00259"></a>00259 
+<a name="l00268"></a>00268 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
+<a name="l00269"></a><a class="code" href="group__distance.html#ge8ca95bca0a05bf37ceee1996d55c098">00269</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="group__distance.html#ge8ca95bca0a05bf37ceee1996d55c098" title="Utility function to check if a distance is very small.">close_to_zero</a>(T <span class="keyword">const</span>& value)
+<a name="l00270"></a>00270 {
+<a name="l00271"></a>00271     <span class="keywordflow">return</span> detail::distance::close_to_zero<T>::apply(value);
+<a name="l00272"></a>00272 }
+<a name="l00273"></a>00273 
+<a name="l00274"></a>00274 } <span class="comment">// namespace ggl</span>
+<a name="l00275"></a>00275 
+<a name="l00276"></a>00276 
+<a name="l00277"></a>00277 <span class="preprocessor">#endif // GGL_STRATEGIES_DISTANCE_RESULT_HPP</span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/doxygen__design__cross__section_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/doxygen__design__cross__section_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/doxygen__design__cross__section_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -54,7 +54,7 @@
 <a name="l00012"></a>00012 
 <a name="l00013"></a>00013 <span class="comment">//---------------------------------------------------------------------------------------------------</span>
 <a name="l00014"></a>00014 
-<a name="l00822"></a>00822 <span class="preprocessor">#endif // _DOXYGEN_DESIGN_RATIONALE_HPP</span>
+<a name="l00823"></a>00823 <span class="preprocessor">#endif // _DOXYGEN_DESIGN_RATIONALE_HPP</span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/files.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/files.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/files.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -57,7 +57,7 @@
   <tr><td class="indexkey">ggl/algorithms/<a class="el" href="algorithms_2distance_8hpp.html">distance.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/algorithms/<a class="el" href="algorithms_2envelope_8hpp.html">envelope.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/algorithms/<a class="el" href="equals_8hpp.html">equals.hpp</a> [code]</td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey">ggl/algorithms/<a class="el" href="for__each_8hpp.html">for_each.hpp</a> [code]</td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey">ggl/algorithms/<a class="el" href="algorithms_2for__each_8hpp.html">for_each.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/algorithms/<a class="el" href="algorithms_2get__section_8hpp.html">get_section.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/algorithms/<a class="el" href="intermediate_8hpp.html">intermediate.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/algorithms/<a class="el" href="algorithms_2intersection_8hpp.html">intersection.hpp</a> [code]</td><td class="indexvalue"></td></tr>
@@ -74,6 +74,7 @@
   <tr><td class="indexkey">ggl/algorithms/<a class="el" href="algorithms_2transform_8hpp.html">transform.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/algorithms/<a class="el" href="algorithms_2within_8hpp.html">within.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/algorithms/detail/<a class="el" href="calculate__null_8hpp.html">calculate_null.hpp</a> [code]</td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey">ggl/algorithms/detail/<a class="el" href="calculate__sum_8hpp.html">calculate_sum.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/algorithms/detail/<a class="el" href="not_8hpp.html">not.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/algorithms/overlay/<a class="el" href="adapt__turns_8hpp.html">adapt_turns.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/algorithms/overlay/<a class="el" href="copy__segments_8hpp.html">copy_segments.hpp</a> [code]</td><td class="indexvalue"></td></tr>
@@ -150,7 +151,7 @@
   <tr><td class="indexkey">ggl/multi/algorithms/<a class="el" href="multi_2algorithms_2correct_8hpp.html">correct.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/multi/algorithms/<a class="el" href="multi_2algorithms_2distance_8hpp.html">distance.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/multi/algorithms/<a class="el" href="multi_2algorithms_2envelope_8hpp.html">envelope.hpp</a> [code]</td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey">ggl/multi/algorithms/<a class="el" href="foreach_8hpp.html">foreach.hpp</a> [code]</td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey">ggl/multi/algorithms/<a class="el" href="multi_2algorithms_2for__each_8hpp.html">for_each.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/multi/algorithms/<a class="el" href="multi_2algorithms_2get__section_8hpp.html">get_section.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/multi/algorithms/<a class="el" href="multi_2algorithms_2intersection_8hpp.html">intersection.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/multi/algorithms/<a class="el" href="multi_2algorithms_2length_8hpp.html">length.hpp</a> [code]</td><td class="indexvalue"></td></tr>
@@ -176,13 +177,14 @@
   <tr><td class="indexkey">ggl/policies/relate/<a class="el" href="direction_8hpp.html">direction.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/policies/relate/<a class="el" href="intersection__points_8hpp.html">intersection_points.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/policies/relate/<a class="el" href="tupled_8hpp.html">tupled.hpp</a> [code]</td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey">ggl/strategies/<a class="el" href="area__result_8hpp.html">area_result.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/strategies/<a class="el" href="distance__result_8hpp.html">distance_result.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/strategies/<a class="el" href="intersection__result_8hpp.html">intersection_result.hpp</a> [code]</td><td class="indexvalue"></td></tr>
+  <tr><td class="indexkey">ggl/strategies/<a class="el" href="length__result_8hpp.html">length_result.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/strategies/<a class="el" href="strategies_8hpp.html">strategies.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/strategies/<a class="el" href="strategy__traits_8hpp.html">strategy_traits.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/strategies/<a class="el" href="strategy__transform_8hpp.html">strategy_transform.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/strategies/agnostic/<a class="el" href="agn__convex__hull_8hpp.html">agn_convex_hull.hpp</a> [code]</td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey">ggl/strategies/agnostic/<a class="el" href="agn__simplify_8hpp.html">agn_simplify.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/strategies/agnostic/<a class="el" href="agn__within_8hpp.html">agn_within.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/strategies/agnostic/<a class="el" href="simplify__douglas__peucker_8hpp.html">simplify_douglas_peucker.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/strategies/cartesian/<a class="el" href="cart__area_8hpp.html">cart_area.hpp</a> [code]</td><td class="indexvalue"></td></tr>
@@ -196,7 +198,6 @@
   <tr><td class="indexkey">ggl/strategies/concepts/<a class="el" href="simplify__concept_8hpp.html">simplify_concept.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/strategies/spherical/<a class="el" href="distance__cross__track_8hpp.html">distance_cross_track.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/strategies/spherical/<a class="el" href="distance__haversine_8hpp.html">distance_haversine.hpp</a> [code]</td><td class="indexvalue"></td></tr>
-  <tr><td class="indexkey">ggl/strategies/spherical/<a class="el" href="haversine_8hpp.html">haversine.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/strategies/spherical/<a class="el" href="sph__area_8hpp.html">sph_area.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/strategies/spherical/<a class="el" href="sph__envelope_8hpp.html">sph_envelope.hpp</a> [code]</td><td class="indexvalue"></td></tr>
   <tr><td class="indexkey">ggl/strategies/transform/<a class="el" href="inverse__transformer_8hpp.html">inverse_transformer.hpp</a> [code]</td><td class="indexvalue"></td></tr>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/for__each_8hpp.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/for__each_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,92 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li>Classes</li>
-      <li class="current">Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>File List</li>
-      <li>File Members</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
-<h1>ggl/algorithms/for_each.hpp File Reference</h1>
-<p>
-Go to the source code of this file.<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Namespaces</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl.html">ggl</a></td></tr>
-
-<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename G , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#gbce8332305fc715d4587e7d78c21e4aa">ggl::for_each_point</a> (G &geometry, F f)</td></tr>
-
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for geometry.  <br></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename G , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a">ggl::for_each_point</a> (G const &geometry, F f)</td></tr>
-
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for geometry.  <br></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename G , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#gf3b5b3004fc802700882f9f4a184564a">ggl::for_each_segment</a> (G &geometry, F f)</td></tr>
-
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for segments on linestrings, rings, polygons, ...  <br></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename G , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#gefcad88c6ee4e308e1003eff7752b3f3">ggl::for_each_segment</a> (const G &geometry, F f)</td></tr>
-
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for segments on linestrings, rings, polygons, ...  <br></td></tr>
-</table>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/for__each_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/for__each_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,296 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li>Classes</li>
-      <li class="current">Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>File List</li>
-      <li>File Members</li>
-    </ul>
-  </div>
-<h1>ggl/algorithms/for_each.hpp</h1>Go to the documentation of this file.<div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">// Generic Geometry Library</span>
-<a name="l00002"></a>00002 <span class="comment">//</span>
-<a name="l00003"></a>00003 <span class="comment">// Copyright Barend Gehrels 1995-2009, Geodan Holding B.V. Amsterdam, the Netherlands.</span>
-<a name="l00004"></a>00004 <span class="comment">// Copyright Bruno Lalande 2008, 2009</span>
-<a name="l00005"></a>00005 <span class="comment">// Use, modification and distribution is subject to the Boost Software License,</span>
-<a name="l00006"></a>00006 <span class="comment">// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at</span>
-<a name="l00007"></a>00007 <span class="comment">// http://www.boost.org/LICENSE_1_0.txt)</span>
-<a name="l00008"></a>00008 
-<a name="l00009"></a>00009 <span class="preprocessor">#ifndef GGL_ALGORITHMS_FOR_EACH_HPP</span>
-<a name="l00010"></a>00010 <span class="preprocessor"></span><span class="preprocessor">#define GGL_ALGORITHMS_FOR_EACH_HPP</span>
-<a name="l00011"></a>00011 <span class="preprocessor"></span>
-<a name="l00021"></a>00021 <span class="preprocessor">#include <algorithm></span>
-<a name="l00022"></a>00022 
-<a name="l00023"></a>00023 <span class="preprocessor">#include <boost/concept/requires.hpp></span>
-<a name="l00024"></a>00024 <span class="preprocessor">#include <boost/range/functions.hpp></span>
-<a name="l00025"></a>00025 <span class="preprocessor">#include <boost/range/metafunctions.hpp></span>
-<a name="l00026"></a>00026 
-<a name="l00027"></a>00027 <span class="preprocessor">#include <<a class="code" href="exterior__ring_8hpp.html">ggl/core/exterior_ring.hpp</a>></span>
-<a name="l00028"></a>00028 <span class="preprocessor">#include <<a class="code" href="interior__rings_8hpp.html">ggl/core/interior_rings.hpp</a>></span>
-<a name="l00029"></a>00029 <span class="preprocessor">#include <<a class="code" href="point__concept_8hpp.html">ggl/core/concepts/point_concept.hpp</a>></span>
-<a name="l00030"></a>00030 <span class="preprocessor">#include <<a class="code" href="segment_8hpp.html">ggl/geometries/segment.hpp</a>></span>
-<a name="l00031"></a>00031 
-<a name="l00032"></a>00032 <span class="keyword">namespace </span>ggl
-<a name="l00033"></a>00033 {
-<a name="l00034"></a>00034 
-<a name="l00035"></a>00035 <span class="preprocessor">#ifndef DOXYGEN_NO_DETAIL</span>
-<a name="l00036"></a>00036 <span class="preprocessor"></span><span class="keyword">namespace </span>detail { <span class="keyword">namespace </span>for_each {
-<a name="l00037"></a>00037 
-<a name="l00038"></a>00038 <span class="keyword">template</span> <<span class="keyword">typename</span> P, <span class="keyword">typename</span> F>
-<a name="l00039"></a>00039 <span class="keyword">struct </span>fe_point
-<a name="l00040"></a>00040 {
-<a name="l00041"></a>00041     <span class="keyword">static</span> <span class="keyword">inline</span> F for_each_const_point(P <span class="keyword">const</span>& p, F f)
-<a name="l00042"></a>00042     {
-<a name="l00043"></a>00043         f(p);
-<a name="l00044"></a>00044         <span class="keywordflow">return</span> (f);
-<a name="l00045"></a>00045     }
-<a name="l00046"></a>00046 
-<a name="l00047"></a>00047     <span class="keyword">static</span> <span class="keyword">inline</span> F <a class="code" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a" title="Calls functor for geometry.">for_each_point</a>(P& p, F f)
-<a name="l00048"></a>00048     {
-<a name="l00049"></a>00049         f(p);
-<a name="l00050"></a>00050         <span class="keywordflow">return</span> (f);
-<a name="l00051"></a>00051     }
-<a name="l00052"></a>00052 };
-<a name="l00053"></a>00053 
-<a name="l00054"></a>00054 <span class="keyword">template</span> <<span class="keyword">typename</span> R, <span class="keyword">typename</span> F>
-<a name="l00055"></a>00055 <span class="keyword">struct </span>fe_range
-<a name="l00056"></a>00056 {
-<a name="l00057"></a>00057     <span class="keyword">static</span> <span class="keyword">inline</span> F for_each_const_point(R <span class="keyword">const</span>& range, F f)
-<a name="l00058"></a>00058     {
-<a name="l00059"></a>00059         <span class="keywordflow">return</span> (std::for_each(boost::begin(range), boost::end(range), f));
-<a name="l00060"></a>00060     }
-<a name="l00061"></a>00061 
-<a name="l00062"></a>00062     <span class="keyword">static</span> <span class="keyword">inline</span> F <a class="code" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a" title="Calls functor for geometry.">for_each_point</a>(R& range, F f)
-<a name="l00063"></a>00063     {
-<a name="l00064"></a>00064         <span class="keywordflow">return</span> (std::for_each(boost::begin(range), boost::end(range), f));
-<a name="l00065"></a>00065     }
-<a name="l00066"></a>00066 
-<a name="l00067"></a>00067     <span class="keyword">static</span> <span class="keyword">inline</span> F for_each_const_segment(R <span class="keyword">const</span>& range, F f)
-<a name="l00068"></a>00068     {
-<a name="l00069"></a>00069         <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::range_const_iterator<R>::type iterator_type;
-<a name="l00070"></a>00070 
-<a name="l00071"></a>00071         iterator_type it = boost::begin(range);
-<a name="l00072"></a>00072         iterator_type previous = it++;
-<a name="l00073"></a>00073         <span class="keywordflow">while</span>(it != boost::end(range))
-<a name="l00074"></a>00074         {
-<a name="l00075"></a>00075             segment<typename point_type<R>::type> s(*previous, *it);
-<a name="l00076"></a>00076             f(s);
-<a name="l00077"></a>00077             previous = it++;
-<a name="l00078"></a>00078         }
-<a name="l00079"></a>00079 
-<a name="l00080"></a>00080         <span class="keywordflow">return</span> (f);
-<a name="l00081"></a>00081     }
-<a name="l00082"></a>00082 
-<a name="l00083"></a>00083     <span class="keyword">static</span> <span class="keyword">inline</span> F <a class="code" href="group__loop.html#gefcad88c6ee4e308e1003eff7752b3f3" title="Calls functor for segments on linestrings, rings, polygons, ...">for_each_segment</a>(R& range, F f)
-<a name="l00084"></a>00084     {
-<a name="l00085"></a>00085         <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::range_iterator<R>::type iterator_type;
-<a name="l00086"></a>00086 
-<a name="l00087"></a>00087         iterator_type it = boost::begin(range);
-<a name="l00088"></a>00088         iterator_type previous = it++;
-<a name="l00089"></a>00089         <span class="keywordflow">while</span>(it != boost::end(range))
-<a name="l00090"></a>00090         {
-<a name="l00091"></a>00091             segment<typename point_type<R>::type> s(*previous, *it);
-<a name="l00092"></a>00092             f(s);
-<a name="l00093"></a>00093             previous = it++;
-<a name="l00094"></a>00094         }
-<a name="l00095"></a>00095 
-<a name="l00096"></a>00096         <span class="keywordflow">return</span> (f);
-<a name="l00097"></a>00097     }
-<a name="l00098"></a>00098 };
-<a name="l00099"></a>00099 
-<a name="l00100"></a>00100 <span class="keyword">template</span> <<span class="keyword">typename</span> P, <span class="keyword">typename</span> F>
-<a name="l00101"></a>00101 <span class="keyword">struct </span>fe_polygon
-<a name="l00102"></a>00102 {
-<a name="l00103"></a>00103     <span class="keyword">static</span> <span class="keyword">inline</span> F for_each_const_point(P <span class="keyword">const</span>& poly, F f)
-<a name="l00104"></a>00104     {
-<a name="l00105"></a>00105         <span class="keyword">typedef</span> <span class="keyword">typename</span> ring_type<P>::type ring_type;
-<a name="l00106"></a>00106         <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::range_const_iterator
-<a name="l00107"></a>00107             <
-<a name="l00108"></a>00108             <span class="keyword">typename</span> interior_type<P>::type
-<a name="l00109"></a>00109             >::type iterator_type;
-<a name="l00110"></a>00110 
-<a name="l00111"></a>00111         f = fe_range<ring_type, F>::for_each_const_point(<a class="code" href="group__access.html#gf92470d0612da7f0e118d296e7fcfe01" title="Function to get the exterior_ring ring of a polygon.">exterior_ring</a>(poly), f);
-<a name="l00112"></a>00112 
-<a name="l00113"></a>00113         <span class="keywordflow">for</span> (iterator_type it = boost::begin(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly));
-<a name="l00114"></a>00114              it != boost::end(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly)); it++)
-<a name="l00115"></a>00115         {
-<a name="l00116"></a>00116             f = fe_range<ring_type, F>::for_each_const_point(*it, f);
-<a name="l00117"></a>00117         }
-<a name="l00118"></a>00118 
-<a name="l00119"></a>00119         <span class="keywordflow">return</span> (f);
-<a name="l00120"></a>00120     }
-<a name="l00121"></a>00121 
-<a name="l00122"></a>00122     <span class="keyword">static</span> <span class="keyword">inline</span> F <a class="code" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a" title="Calls functor for geometry.">for_each_point</a>(P& poly, F f)
-<a name="l00123"></a>00123     {
-<a name="l00124"></a>00124         <span class="keyword">typedef</span> <span class="keyword">typename</span> ring_type<P>::type ring_type;
-<a name="l00125"></a>00125         <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::range_iterator
-<a name="l00126"></a>00126             <
-<a name="l00127"></a>00127             <span class="keyword">typename</span> interior_type<P>::type
-<a name="l00128"></a>00128             >::type iterator_type;
-<a name="l00129"></a>00129 
-<a name="l00130"></a>00130         f = <a class="code" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a" title="Calls functor for geometry.">fe_range<ring_type, F>::for_each_point</a>(<a class="code" href="group__access.html#gf92470d0612da7f0e118d296e7fcfe01" title="Function to get the exterior_ring ring of a polygon.">exterior_ring</a>(poly), f);
-<a name="l00131"></a>00131 
-<a name="l00132"></a>00132         <span class="keywordflow">for</span> (iterator_type it = boost::begin(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly));
-<a name="l00133"></a>00133              it != boost::end(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly)); it++)
-<a name="l00134"></a>00134         {
-<a name="l00135"></a>00135             f = <a class="code" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a" title="Calls functor for geometry.">fe_range<ring_type, F>::for_each_point</a>(*it, f);
-<a name="l00136"></a>00136         }
-<a name="l00137"></a>00137 
-<a name="l00138"></a>00138         <span class="keywordflow">return</span> (f);
-<a name="l00139"></a>00139     }
-<a name="l00140"></a>00140 
-<a name="l00141"></a>00141     <span class="keyword">static</span> <span class="keyword">inline</span> F for_each_const_segment(P <span class="keyword">const</span>& poly, F f)
-<a name="l00142"></a>00142     {
-<a name="l00143"></a>00143         <span class="keyword">typedef</span> <span class="keyword">typename</span> ring_type<P>::type ring_type;
-<a name="l00144"></a>00144         <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::range_const_iterator
-<a name="l00145"></a>00145             <
-<a name="l00146"></a>00146             <span class="keyword">typename</span> interior_type<P>::type
-<a name="l00147"></a>00147             >::type iterator_type;
-<a name="l00148"></a>00148 
-<a name="l00149"></a>00149         f = fe_range<ring_type, F>::for_each_const_segment(<a class="code" href="group__access.html#gf92470d0612da7f0e118d296e7fcfe01" title="Function to get the exterior_ring ring of a polygon.">exterior_ring</a>(poly), f);
-<a name="l00150"></a>00150 
-<a name="l00151"></a>00151         <span class="keywordflow">for</span> (iterator_type it = boost::begin(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly));
-<a name="l00152"></a>00152              it != boost::end(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly)); it++)
-<a name="l00153"></a>00153         {
-<a name="l00154"></a>00154             f = fe_range<ring_type, F>::for_each_const_segment(*it, f);
-<a name="l00155"></a>00155         }
-<a name="l00156"></a>00156 
-<a name="l00157"></a>00157         <span class="keywordflow">return</span> (f);
-<a name="l00158"></a>00158     }
-<a name="l00159"></a>00159 
-<a name="l00160"></a>00160     <span class="keyword">static</span> <span class="keyword">inline</span> F <a class="code" href="group__loop.html#gefcad88c6ee4e308e1003eff7752b3f3" title="Calls functor for segments on linestrings, rings, polygons, ...">for_each_segment</a>(P& poly, F f)
-<a name="l00161"></a>00161     {
-<a name="l00162"></a>00162         <span class="keyword">typedef</span> <span class="keyword">typename</span> ring_type<P>::type ring_type;
-<a name="l00163"></a>00163         <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::range_iterator
-<a name="l00164"></a>00164             <
-<a name="l00165"></a>00165             <span class="keyword">typename</span> interior_type<P>::type
-<a name="l00166"></a>00166             >::type iterator_type;
-<a name="l00167"></a>00167 
-<a name="l00168"></a>00168         f = <a class="code" href="group__loop.html#gefcad88c6ee4e308e1003eff7752b3f3" title="Calls functor for segments on linestrings, rings, polygons, ...">fe_range<ring_type, F>::for_each_segment</a>(<a class="code" href="group__access.html#gf92470d0612da7f0e118d296e7fcfe01" title="Function to get the exterior_ring ring of a polygon.">exterior_ring</a>(poly), f);
-<a name="l00169"></a>00169 
-<a name="l00170"></a>00170         <span class="keywordflow">for</span> (iterator_type it = boost::begin(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly));
-<a name="l00171"></a>00171              it != boost::end(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly)); it++)
-<a name="l00172"></a>00172         {
-<a name="l00173"></a>00173             f = <a class="code" href="group__loop.html#gefcad88c6ee4e308e1003eff7752b3f3" title="Calls functor for segments on linestrings, rings, polygons, ...">fe_range<ring_type, F>::for_each_segment</a>(*it, f);
-<a name="l00174"></a>00174         }
-<a name="l00175"></a>00175 
-<a name="l00176"></a>00176         <span class="keywordflow">return</span> (f);
-<a name="l00177"></a>00177     }
-<a name="l00178"></a>00178 };
-<a name="l00179"></a>00179 
-<a name="l00180"></a>00180 }} <span class="comment">// namespace detail::for_each</span>
-<a name="l00181"></a>00181 <span class="preprocessor">#endif // DOXYGEN_NO_DETAIL</span>
-<a name="l00182"></a>00182 <span class="preprocessor"></span>
-<a name="l00183"></a>00183 
-<a name="l00184"></a>00184 <span class="preprocessor">#ifndef DOXYGEN_NO_DISPATCH</span>
-<a name="l00185"></a>00185 <span class="preprocessor"></span><span class="keyword">namespace </span>dispatch
-<a name="l00186"></a>00186 {
-<a name="l00187"></a>00187 
-<a name="l00188"></a>00188 <span class="keyword">template</span> <<span class="keyword">typename</span> T, <span class="keyword">typename</span> G, <span class="keyword">typename</span> F>
-<a name="l00189"></a>00189 <span class="keyword">struct </span>for_each {};
-<a name="l00190"></a>00190 
-<a name="l00191"></a>00191 <span class="keyword">template</span> <<span class="keyword">typename</span> P, <span class="keyword">typename</span> F>
-<a name="l00192"></a>00192 <span class="keyword">struct </span>for_each<point_tag, P, F> : detail::for_each::fe_point<P, F> {};
-<a name="l00193"></a>00193 
-<a name="l00194"></a>00194 <span class="keyword">template</span> <<span class="keyword">typename</span> L, <span class="keyword">typename</span> F>
-<a name="l00195"></a>00195 <span class="keyword">struct </span>for_each<linestring_tag, L, F> : detail::for_each::fe_range<L, F> {};
-<a name="l00196"></a>00196 
-<a name="l00197"></a>00197 <span class="keyword">template</span> <<span class="keyword">typename</span> R, <span class="keyword">typename</span> F>
-<a name="l00198"></a>00198 <span class="keyword">struct </span>for_each<ring_tag, R, F> : detail::for_each::fe_range<R, F> {};
-<a name="l00199"></a>00199 
-<a name="l00200"></a>00200 <span class="keyword">template</span> <<span class="keyword">typename</span> P, <span class="keyword">typename</span> F>
-<a name="l00201"></a>00201 <span class="keyword">struct </span>for_each<polygon_tag, P, F> : detail::for_each::fe_polygon<P, F> {};
-<a name="l00202"></a>00202 
-<a name="l00203"></a>00203 } <span class="comment">// namespace dispatch</span>
-<a name="l00204"></a>00204 <span class="preprocessor">#endif // DOXYGEN_NO_DISPATCH</span>
-<a name="l00205"></a>00205 <span class="preprocessor"></span>
-<a name="l00213"></a>00213 <span class="keyword">template</span><<span class="keyword">typename</span> G, <span class="keyword">typename</span> F>
-<a name="l00214"></a><a class="code" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a">00214</a> <span class="keyword">inline</span> F <a class="code" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a" title="Calls functor for geometry.">for_each_point</a>(G <span class="keyword">const</span>& geometry, F f)
-<a name="l00215"></a>00215 {
-<a name="l00216"></a>00216     <span class="keyword">typedef</span> <span class="keyword">typename</span> dispatch::for_each
-<a name="l00217"></a>00217         <
-<a name="l00218"></a>00218         <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<G>::type</a>,
-<a name="l00219"></a>00219         G,
-<a name="l00220"></a>00220         F
-<a name="l00221"></a>00221         >::for_each_const_point for_each_type;
-<a name="l00222"></a>00222 
-<a name="l00223"></a>00223     <span class="keywordflow">return</span> for_each_type(geometry, f);
-<a name="l00224"></a>00224 }
-<a name="l00225"></a>00225 
-<a name="l00233"></a>00233 <span class="keyword">template</span><<span class="keyword">typename</span> G, <span class="keyword">typename</span> F>
-<a name="l00234"></a><a class="code" href="group__loop.html#gbce8332305fc715d4587e7d78c21e4aa">00234</a> <span class="keyword">inline</span> F <a class="code" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a" title="Calls functor for geometry.">for_each_point</a>(G& geometry, F f)
-<a name="l00235"></a>00235 {
-<a name="l00236"></a>00236     <span class="keywordflow">return</span> (dispatch::for_each<<span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<G>::type</a>, G, F>::<a class="code" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a" title="Calls functor for geometry.">for_each_point</a>(geometry, f));
-<a name="l00237"></a>00237 }
-<a name="l00238"></a>00238 
-<a name="l00246"></a>00246 <span class="keyword">template</span><<span class="keyword">typename</span> G, <span class="keyword">typename</span> F>
-<a name="l00247"></a><a class="code" href="group__loop.html#gefcad88c6ee4e308e1003eff7752b3f3">00247</a> <span class="keyword">inline</span> F <a class="code" href="group__loop.html#gefcad88c6ee4e308e1003eff7752b3f3" title="Calls functor for segments on linestrings, rings, polygons, ...">for_each_segment</a>(<span class="keyword">const</span> G& geometry, F f)
-<a name="l00248"></a>00248 {
-<a name="l00249"></a>00249     <span class="keywordflow">return</span> (dispatch::for_each<<span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<G>::type</a>, G, F>::for_each_const_segment(geometry, f));
-<a name="l00250"></a>00250 }
-<a name="l00251"></a>00251 
-<a name="l00252"></a>00252 
-<a name="l00260"></a>00260 <span class="keyword">template</span><<span class="keyword">typename</span> G, <span class="keyword">typename</span> F>
-<a name="l00261"></a><a class="code" href="group__loop.html#gf3b5b3004fc802700882f9f4a184564a">00261</a> <span class="keyword">inline</span> F <a class="code" href="group__loop.html#gefcad88c6ee4e308e1003eff7752b3f3" title="Calls functor for segments on linestrings, rings, polygons, ...">for_each_segment</a>(G& geometry, F f)
-<a name="l00262"></a>00262 {
-<a name="l00263"></a>00263     <span class="keywordflow">return</span> (dispatch::for_each<<span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<G>::type</a>, G, F>::<a class="code" href="group__loop.html#gefcad88c6ee4e308e1003eff7752b3f3" title="Calls functor for segments on linestrings, rings, polygons, ...">for_each_segment</a>(geometry, f));
-<a name="l00264"></a>00264 }
-<a name="l00265"></a>00265 
-<a name="l00266"></a>00266 } <span class="comment">// namespace ggl</span>
-<a name="l00267"></a>00267 
-<a name="l00268"></a>00268 <span class="preprocessor">#endif // GGL_ALGORITHMS_FOR_EACH_HPP</span>
-</pre></div></div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/foreach_8hpp.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/foreach_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,136 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li>Classes</li>
-      <li class="current">Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>File List</li>
-      <li>File Members</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
-<h1>ggl/multi/algorithms/foreach.hpp File Reference</h1>
-<p>
-Go to the source code of this file.<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Namespaces</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl.html">ggl</a></td></tr>
-
-<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename Y , template< typename, typename > class V, template< typename > class A, typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#3b3b5c7184cabf25d464055befdf771f">ggl::for_each_point</a> (const multi_polygon< Y, V, A > &mp, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename L , template< typename, typename > class V, template< typename > class A, typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#9d56089829983b18a5647668a81f625d">ggl::for_each_point</a> (const multi_linestring< L, V, A > &ml, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename P , template< typename, typename > class V, template< typename > class A, typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#e8a2e92fd956aa3df683a612f14ba677">ggl::for_each_point</a> (const multi_point< P, V, A > &mp, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename Y , template< typename, typename > class V, template< typename > class A, typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#500ee15ef99a75697def76e4438f24f7">ggl::for_each_point</a> (multi_polygon< Y, V, A > &mp, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename L , template< typename, typename > class V, template< typename > class A, typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#2b3c62431652f833fa2d549c6b7e3c3c">ggl::for_each_point</a> (multi_linestring< L, V, A > &ml, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename P , template< typename, typename > class V, template< typename > class A, typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#cbb57ed0b758231c53971362af3a0761">ggl::for_each_point</a> (multi_point< P, V, A > &mp, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename ML , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#77d4fc4a0165db7675e78b290f93a638">ggl::for_each_point_multi_linestring</a> (const ML &ml, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename ML , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#25386b22f7cdbb3f4cb1f39b5a454e79">ggl::for_each_point_multi_linestring</a> (ML &ml, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename MP , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#e90a5c12e70988e6ab8886a407ded929">ggl::for_each_point_multi_point</a> (const MP &mp, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename MP , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#583292e2af8b5e8c473c66032028924f">ggl::for_each_point_multi_point</a> (MP &mp, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename MY , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#5d6800969a6bf28a35785e3c9eb5b0ea">ggl::for_each_point_multi_polygon</a> (const MY &mp, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename MY , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#0da7e7dff53b5f6382a1bb83efc5b4a8">ggl::for_each_point_multi_polygon</a> (MY &mp, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename Y , template< typename, typename > class V, template< typename > class A, typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#326e05f4a599d0a732b4ee83ec9ea0cc">ggl::for_each_segment</a> (const multi_polygon< Y, V, A > &mp, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename L , template< typename, typename > class V, template< typename > class A, typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#9b9e2763881a4191b54d44ba48b483e2">ggl::for_each_segment</a> (const multi_linestring< L, V, A > &ml, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename Y , template< typename, typename > class V, template< typename > class A, typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#4f2108bb3eff47320d5c2e6c545b7df9">ggl::for_each_segment</a> (multi_polygon< Y, V, A > &mp, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename L , template< typename, typename > class V, template< typename > class A, typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#aab7ca3216793f5eb31dfc7b00294491">ggl::for_each_segment</a> (multi_linestring< L, V, A > &ml, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename ML , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#6dd128fb1487f8b269d888721a10f23b">ggl::for_each_segment_multi_linestring</a> (const ML &ml, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename ML , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#2ff9b5d4ab8ade0181c804bee391b26c">ggl::for_each_segment_multi_linestring</a> (ML &ml, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename MY , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#c16f604abd7cd129b20fa49255a1838e">ggl::for_each_segment_multi_polygon</a> (const MY &mp, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename MY , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#c07b4972809b53d2720a357b57aa840b">ggl::for_each_segment_multi_polygon</a> (MY &mp, F f)</td></tr>
-
-</table>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/foreach_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/foreach_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,287 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li>Classes</li>
-      <li class="current">Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>File List</li>
-      <li>File Members</li>
-    </ul>
-  </div>
-<h1>ggl/multi/algorithms/foreach.hpp</h1>Go to the documentation of this file.<div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">// Generic Geometry Library</span>
-<a name="l00002"></a>00002 <span class="comment">//</span>
-<a name="l00003"></a>00003 <span class="comment">// Copyright Barend Gehrels 1995-2009, Geodan Holding B.V. Amsterdam, the Netherlands.</span>
-<a name="l00004"></a>00004 <span class="comment">// Copyright Bruno Lalande 2008, 2009</span>
-<a name="l00005"></a>00005 <span class="comment">// Use, modification and distribution is subject to the Boost Software License,</span>
-<a name="l00006"></a>00006 <span class="comment">// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at</span>
-<a name="l00007"></a>00007 <span class="comment">// http://www.boost.org/LICENSE_1_0.txt)</span>
-<a name="l00008"></a>00008 
-<a name="l00009"></a>00009 <span class="preprocessor">#ifndef GGL_MULTI_FOREACH_HPP</span>
-<a name="l00010"></a>00010 <span class="preprocessor"></span><span class="preprocessor">#define GGL_MULTI_FOREACH_HPP</span>
-<a name="l00011"></a>00011 <span class="preprocessor"></span>
-<a name="l00012"></a>00012 <span class="preprocessor">#include <vector></span>
-<a name="l00013"></a>00013 
-<a name="l00014"></a>00014 <span class="preprocessor">#include <<a class="code" href="for__each_8hpp.html">ggl/algorithms/for_each.hpp</a>></span>
-<a name="l00015"></a>00015 
-<a name="l00016"></a>00016 FIX ME it is not yet adapted to tag-dispatching
-<a name="l00017"></a>00017 
-<a name="l00018"></a>00018 
-<a name="l00019"></a>00019 <span class="keyword">namespace </span>ggl
-<a name="l00020"></a>00020 {
-<a name="l00021"></a>00021 
-<a name="l00022"></a>00022 <span class="keyword">template</span><<span class="keyword">typename</span> MP, <span class="keyword">typename</span> F>
-<a name="l00023"></a><a class="code" href="namespaceggl.html#583292e2af8b5e8c473c66032028924f">00023</a> <span class="keyword">inline</span> F <a class="code" href="namespaceggl.html#583292e2af8b5e8c473c66032028924f">for_each_point_multi_point</a>(MP& mp, F f)
-<a name="l00024"></a>00024 {
-<a name="l00025"></a>00025     <span class="keywordflow">return</span> (for_each_point_container(mp, f));
-<a name="l00026"></a>00026 }
-<a name="l00027"></a>00027 
-<a name="l00028"></a>00028 <span class="keyword">template</span><<span class="keyword">typename</span> ML, <span class="keyword">typename</span> F>
-<a name="l00029"></a><a class="code" href="namespaceggl.html#25386b22f7cdbb3f4cb1f39b5a454e79">00029</a> <span class="keyword">inline</span> F <a class="code" href="namespaceggl.html#25386b22f7cdbb3f4cb1f39b5a454e79">for_each_point_multi_linestring</a>(ML& ml, F f)
-<a name="l00030"></a>00030 {
-<a name="l00031"></a>00031     <span class="keywordflow">for</span> (<span class="keyword">typename</span> ML::iterator it = ml.begin(); it != ml.end(); it++)
-<a name="l00032"></a>00032     {
-<a name="l00033"></a>00033         f = for_each_point_linestring(*it, f);
-<a name="l00034"></a>00034     }
-<a name="l00035"></a>00035     <span class="keywordflow">return</span> (f);
-<a name="l00036"></a>00036 }
-<a name="l00037"></a>00037 
-<a name="l00038"></a>00038 <span class="keyword">template</span><<span class="keyword">typename</span> MY, <span class="keyword">typename</span> F>
-<a name="l00039"></a><a class="code" href="namespaceggl.html#0da7e7dff53b5f6382a1bb83efc5b4a8">00039</a> <span class="keyword">inline</span> F <a class="code" href="namespaceggl.html#0da7e7dff53b5f6382a1bb83efc5b4a8">for_each_point_multi_polygon</a>(MY& mp, F f)
-<a name="l00040"></a>00040 {
-<a name="l00041"></a>00041     <span class="keywordflow">for</span> (<span class="keyword">typename</span> MY::iterator it = mp.begin(); it != mp.end(); it++)
-<a name="l00042"></a>00042     {
-<a name="l00043"></a>00043         f = for_each_point_polygon(*it, f);
-<a name="l00044"></a>00044     }
-<a name="l00045"></a>00045     <span class="keywordflow">return</span> (f);
-<a name="l00046"></a>00046 }
-<a name="l00047"></a>00047 
-<a name="l00048"></a>00048 
-<a name="l00049"></a>00049 
-<a name="l00050"></a>00050 
-<a name="l00051"></a>00051 <span class="keyword">template</span><<span class="keyword">typename</span> MP, <span class="keyword">typename</span> F>
-<a name="l00052"></a><a class="code" href="namespaceggl.html#e90a5c12e70988e6ab8886a407ded929">00052</a> <span class="keyword">inline</span> F <a class="code" href="namespaceggl.html#583292e2af8b5e8c473c66032028924f">for_each_point_multi_point</a>(<span class="keyword">const</span> MP& mp, F f)
-<a name="l00053"></a>00053 {
-<a name="l00054"></a>00054     <span class="keywordflow">return</span> (for_each_point_container(mp, f));
-<a name="l00055"></a>00055 }
-<a name="l00056"></a>00056 
-<a name="l00057"></a>00057 
-<a name="l00058"></a>00058 <span class="keyword">template</span><<span class="keyword">typename</span> ML, <span class="keyword">typename</span> F>
-<a name="l00059"></a><a class="code" href="namespaceggl.html#77d4fc4a0165db7675e78b290f93a638">00059</a> <span class="keyword">inline</span> F <a class="code" href="namespaceggl.html#25386b22f7cdbb3f4cb1f39b5a454e79">for_each_point_multi_linestring</a>(<span class="keyword">const</span> ML& ml, F f)
-<a name="l00060"></a>00060 {
-<a name="l00061"></a>00061     <span class="keywordflow">for</span> (<span class="keyword">typename</span> ML::const_iterator it = ml.begin(); it != ml.end(); it++)
-<a name="l00062"></a>00062     {
-<a name="l00063"></a>00063         f = for_each_point_linestring(*it, f);
-<a name="l00064"></a>00064     }
-<a name="l00065"></a>00065     <span class="keywordflow">return</span> (f);
-<a name="l00066"></a>00066 }
-<a name="l00067"></a>00067 
-<a name="l00068"></a>00068 <span class="keyword">template</span><<span class="keyword">typename</span> MY, <span class="keyword">typename</span> F>
-<a name="l00069"></a><a class="code" href="namespaceggl.html#5d6800969a6bf28a35785e3c9eb5b0ea">00069</a> <span class="keyword">inline</span> F <a class="code" href="namespaceggl.html#0da7e7dff53b5f6382a1bb83efc5b4a8">for_each_point_multi_polygon</a>(<span class="keyword">const</span> MY& mp, F f)
-<a name="l00070"></a>00070 {
-<a name="l00071"></a>00071     <span class="keywordflow">for</span> (<span class="keyword">typename</span> MY::const_iterator it = mp.begin(); it != mp.end(); it++)
-<a name="l00072"></a>00072     {
-<a name="l00073"></a>00073         f = for_each_point_polygon(*it, f);
-<a name="l00074"></a>00074     }
-<a name="l00075"></a>00075     <span class="keywordflow">return</span> (f);
-<a name="l00076"></a>00076 }
-<a name="l00077"></a>00077 
-<a name="l00078"></a>00078 
-<a name="l00079"></a>00079 
-<a name="l00080"></a>00080 <span class="keyword">template</span><<span class="keyword">typename</span> ML, <span class="keyword">typename</span> F>
-<a name="l00081"></a><a class="code" href="namespaceggl.html#2ff9b5d4ab8ade0181c804bee391b26c">00081</a> <span class="keyword">inline</span> F <a class="code" href="namespaceggl.html#2ff9b5d4ab8ade0181c804bee391b26c">for_each_segment_multi_linestring</a>(ML& ml, F f)
-<a name="l00082"></a>00082 {
-<a name="l00083"></a>00083     <span class="keywordflow">for</span> (<span class="keyword">typename</span> ML::iterator it = ml.begin(); it != ml.end(); it++)
-<a name="l00084"></a>00084     {
-<a name="l00085"></a>00085         f = for_each_segment_linestring(*it, f);
-<a name="l00086"></a>00086     }
-<a name="l00087"></a>00087     <span class="keywordflow">return</span> (f);
-<a name="l00088"></a>00088 }
-<a name="l00089"></a>00089 
-<a name="l00090"></a>00090 <span class="keyword">template</span><<span class="keyword">typename</span> MY, <span class="keyword">typename</span> F>
-<a name="l00091"></a><a class="code" href="namespaceggl.html#c07b4972809b53d2720a357b57aa840b">00091</a> <span class="keyword">inline</span> F <a class="code" href="namespaceggl.html#c07b4972809b53d2720a357b57aa840b">for_each_segment_multi_polygon</a>(MY& mp, F f)
-<a name="l00092"></a>00092 {
-<a name="l00093"></a>00093     <span class="keywordflow">for</span> (<span class="keyword">typename</span> MY::iterator it = mp.begin(); it != mp.end(); it++)
-<a name="l00094"></a>00094     {
-<a name="l00095"></a>00095         f = for_each_segment_polygon(*it, f);
-<a name="l00096"></a>00096     }
-<a name="l00097"></a>00097     <span class="keywordflow">return</span> (f);
-<a name="l00098"></a>00098 }
-<a name="l00099"></a>00099 
-<a name="l00100"></a>00100 
-<a name="l00101"></a>00101 
-<a name="l00102"></a>00102 
-<a name="l00103"></a>00103 
-<a name="l00104"></a>00104 
-<a name="l00105"></a>00105 <span class="keyword">template</span><<span class="keyword">typename</span> ML, <span class="keyword">typename</span> F>
-<a name="l00106"></a><a class="code" href="namespaceggl.html#6dd128fb1487f8b269d888721a10f23b">00106</a> <span class="keyword">inline</span> F <a class="code" href="namespaceggl.html#2ff9b5d4ab8ade0181c804bee391b26c">for_each_segment_multi_linestring</a>(<span class="keyword">const</span> ML& ml, F f)
-<a name="l00107"></a>00107 {
-<a name="l00108"></a>00108     <span class="keywordflow">for</span> (<span class="keyword">typename</span> ML::const_iterator it = ml.begin(); it != ml.end(); it++)
-<a name="l00109"></a>00109     {
-<a name="l00110"></a>00110         f = for_each_segment_linestring(*it, f);
-<a name="l00111"></a>00111     }
-<a name="l00112"></a>00112     <span class="keywordflow">return</span> (f);
-<a name="l00113"></a>00113 }
-<a name="l00114"></a>00114 
-<a name="l00115"></a>00115 <span class="keyword">template</span><<span class="keyword">typename</span> MY, <span class="keyword">typename</span> F>
-<a name="l00116"></a><a class="code" href="namespaceggl.html#c16f604abd7cd129b20fa49255a1838e">00116</a> <span class="keyword">inline</span> F <a class="code" href="namespaceggl.html#c07b4972809b53d2720a357b57aa840b">for_each_segment_multi_polygon</a>(<span class="keyword">const</span> MY& mp, F f)
-<a name="l00117"></a>00117 {
-<a name="l00118"></a>00118     <span class="keywordflow">for</span> (<span class="keyword">typename</span> MY::const_iterator it = mp.begin(); it != mp.end(); it++)
-<a name="l00119"></a>00119     {
-<a name="l00120"></a>00120         f = for_each_segment_polygon(*it, f);
-<a name="l00121"></a>00121     }
-<a name="l00122"></a>00122     <span class="keywordflow">return</span> (f);
-<a name="l00123"></a>00123 }
-<a name="l00124"></a>00124 
-<a name="l00125"></a>00125 
-<a name="l00126"></a>00126 
-<a name="l00127"></a>00127 
-<a name="l00128"></a>00128 
-<a name="l00129"></a>00129 
-<a name="l00130"></a>00130 <span class="keyword">template</span><<span class="keyword">typename</span> P,
-<a name="l00131"></a>00131         <span class="keyword">template</span><<span class="keyword">typename</span>,<span class="keyword">typename</span>> <span class="keyword">class </span>V, <span class="keyword">template</span><<span class="keyword">typename</span>> <span class="keyword">class </span>A,
-<a name="l00132"></a>00132         <span class="keyword">typename</span> F>
-<a name="l00133"></a><a class="code" href="namespaceggl.html#cbb57ed0b758231c53971362af3a0761">00133</a> <span class="keyword">inline</span> F <a class="code" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a" title="Calls functor for geometry.">for_each_point</a>(<a class="code" href="structggl_1_1multi__point.html">multi_point<P, V, A></a>& mp, F f)
-<a name="l00134"></a>00134 {
-<a name="l00135"></a>00135     <span class="keywordflow">return</span> (<a class="code" href="namespaceggl.html#583292e2af8b5e8c473c66032028924f">for_each_point_multi_point</a>(mp, f));
-<a name="l00136"></a>00136 }
-<a name="l00137"></a>00137 
-<a name="l00138"></a>00138 <span class="keyword">template</span><<span class="keyword">typename</span> L,
-<a name="l00139"></a>00139         <span class="keyword">template</span><<span class="keyword">typename</span>,<span class="keyword">typename</span>> <span class="keyword">class </span>V, <span class="keyword">template</span><<span class="keyword">typename</span>> <span class="keyword">class </span>A,
-<a name="l00140"></a>00140         <span class="keyword">typename</span> F>
-<a name="l00141"></a><a class="code" href="namespaceggl.html#2b3c62431652f833fa2d549c6b7e3c3c">00141</a> <span class="keyword">inline</span> F <a class="code" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a" title="Calls functor for geometry.">for_each_point</a>(<a class="code" href="structggl_1_1multi__linestring.html">multi_linestring<L, V, A></a>& ml, F f)
-<a name="l00142"></a>00142 {
-<a name="l00143"></a>00143     <span class="keywordflow">return</span> (<a class="code" href="namespaceggl.html#25386b22f7cdbb3f4cb1f39b5a454e79">for_each_point_multi_linestring</a>(ml, f));
-<a name="l00144"></a>00144 }
-<a name="l00145"></a>00145 
-<a name="l00146"></a>00146 <span class="keyword">template</span><<span class="keyword">typename</span> Y,
-<a name="l00147"></a>00147         <span class="keyword">template</span><<span class="keyword">typename</span>,<span class="keyword">typename</span>> <span class="keyword">class </span>V, <span class="keyword">template</span><<span class="keyword">typename</span>> <span class="keyword">class </span>A,
-<a name="l00148"></a>00148         <span class="keyword">typename</span> F>
-<a name="l00149"></a><a class="code" href="namespaceggl.html#500ee15ef99a75697def76e4438f24f7">00149</a> <span class="keyword">inline</span> F <a class="code" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a" title="Calls functor for geometry.">for_each_point</a>(<a class="code" href="structggl_1_1multi__polygon.html">multi_polygon<Y, V, A></a>& mp, F f)
-<a name="l00150"></a>00150 {
-<a name="l00151"></a>00151     <span class="keywordflow">return</span> (<a class="code" href="namespaceggl.html#0da7e7dff53b5f6382a1bb83efc5b4a8">for_each_point_multi_polygon</a>(mp, f));
-<a name="l00152"></a>00152 }
-<a name="l00153"></a>00153 
-<a name="l00154"></a>00154 
-<a name="l00155"></a>00155 
-<a name="l00156"></a>00156 
-<a name="l00157"></a>00157 <span class="keyword">template</span><<span class="keyword">typename</span> P,
-<a name="l00158"></a>00158         <span class="keyword">template</span><<span class="keyword">typename</span>,<span class="keyword">typename</span>> <span class="keyword">class </span>V, <span class="keyword">template</span><<span class="keyword">typename</span>> <span class="keyword">class </span>A,
-<a name="l00159"></a>00159         <span class="keyword">typename</span> F>
-<a name="l00160"></a><a class="code" href="namespaceggl.html#e8a2e92fd956aa3df683a612f14ba677">00160</a> <span class="keyword">inline</span> F <a class="code" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a" title="Calls functor for geometry.">for_each_point</a>(<span class="keyword">const</span> <a class="code" href="structggl_1_1multi__point.html">multi_point<P, V, A></a>& mp, F f)
-<a name="l00161"></a>00161 {
-<a name="l00162"></a>00162     <span class="keywordflow">return</span> (<a class="code" href="namespaceggl.html#583292e2af8b5e8c473c66032028924f">for_each_point_multi_point</a>(mp, f));
-<a name="l00163"></a>00163 }
-<a name="l00164"></a>00164 
-<a name="l00165"></a>00165 <span class="keyword">template</span><<span class="keyword">typename</span> L,
-<a name="l00166"></a>00166         <span class="keyword">template</span><<span class="keyword">typename</span>,<span class="keyword">typename</span>> <span class="keyword">class </span>V, <span class="keyword">template</span><<span class="keyword">typename</span>> <span class="keyword">class </span>A,
-<a name="l00167"></a>00167         <span class="keyword">typename</span> F>
-<a name="l00168"></a><a class="code" href="namespaceggl.html#9d56089829983b18a5647668a81f625d">00168</a> <span class="keyword">inline</span> F <a class="code" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a" title="Calls functor for geometry.">for_each_point</a>(<span class="keyword">const</span> <a class="code" href="structggl_1_1multi__linestring.html">multi_linestring<L, V, A></a>& ml, F f)
-<a name="l00169"></a>00169 {
-<a name="l00170"></a>00170     <span class="keywordflow">return</span> (<a class="code" href="namespaceggl.html#25386b22f7cdbb3f4cb1f39b5a454e79">for_each_point_multi_linestring</a>(ml, f));
-<a name="l00171"></a>00171 }
-<a name="l00172"></a>00172 
-<a name="l00173"></a>00173 
-<a name="l00174"></a>00174 <span class="keyword">template</span><<span class="keyword">typename</span> Y,
-<a name="l00175"></a>00175         <span class="keyword">template</span><<span class="keyword">typename</span>,<span class="keyword">typename</span>> <span class="keyword">class </span>V, <span class="keyword">template</span><<span class="keyword">typename</span>> <span class="keyword">class </span>A,
-<a name="l00176"></a>00176         <span class="keyword">typename</span> F>
-<a name="l00177"></a><a class="code" href="namespaceggl.html#3b3b5c7184cabf25d464055befdf771f">00177</a> <span class="keyword">inline</span> F <a class="code" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a" title="Calls functor for geometry.">for_each_point</a>(<span class="keyword">const</span> <a class="code" href="structggl_1_1multi__polygon.html">multi_polygon<Y, V, A></a>& mp, F f)
-<a name="l00178"></a>00178 {
-<a name="l00179"></a>00179     <span class="keywordflow">return</span> (<a class="code" href="namespaceggl.html#0da7e7dff53b5f6382a1bb83efc5b4a8">for_each_point_multi_polygon</a>(mp, f));
-<a name="l00180"></a>00180 }
-<a name="l00181"></a>00181 
-<a name="l00182"></a>00182 
-<a name="l00183"></a>00183 
-<a name="l00184"></a>00184 
-<a name="l00185"></a>00185 <span class="keyword">template</span><<span class="keyword">typename</span> L,
-<a name="l00186"></a>00186         <span class="keyword">template</span><<span class="keyword">typename</span>,<span class="keyword">typename</span>> <span class="keyword">class </span>V, <span class="keyword">template</span><<span class="keyword">typename</span>> <span class="keyword">class </span>A,
-<a name="l00187"></a>00187         <span class="keyword">typename</span> F>
-<a name="l00188"></a><a class="code" href="namespaceggl.html#aab7ca3216793f5eb31dfc7b00294491">00188</a> <span class="keyword">inline</span> F <a class="code" href="group__loop.html#gefcad88c6ee4e308e1003eff7752b3f3" title="Calls functor for segments on linestrings, rings, polygons, ...">for_each_segment</a>(<a class="code" href="structggl_1_1multi__linestring.html">multi_linestring<L, V, A></a>& ml, F f)
-<a name="l00189"></a>00189 {
-<a name="l00190"></a>00190     <span class="keywordflow">return</span> (<a class="code" href="namespaceggl.html#2ff9b5d4ab8ade0181c804bee391b26c">for_each_segment_multi_linestring</a>(ml, f));
-<a name="l00191"></a>00191 }
-<a name="l00192"></a>00192 
-<a name="l00193"></a>00193 <span class="keyword">template</span><<span class="keyword">typename</span> Y,
-<a name="l00194"></a>00194         <span class="keyword">template</span><<span class="keyword">typename</span>,<span class="keyword">typename</span>> <span class="keyword">class </span>V, <span class="keyword">template</span><<span class="keyword">typename</span>> <span class="keyword">class </span>A,
-<a name="l00195"></a>00195         <span class="keyword">typename</span> F>
-<a name="l00196"></a><a class="code" href="namespaceggl.html#4f2108bb3eff47320d5c2e6c545b7df9">00196</a> <span class="keyword">inline</span> F <a class="code" href="group__loop.html#gefcad88c6ee4e308e1003eff7752b3f3" title="Calls functor for segments on linestrings, rings, polygons, ...">for_each_segment</a>(<a class="code" href="structggl_1_1multi__polygon.html">multi_polygon<Y, V, A></a>& mp, F f)
-<a name="l00197"></a>00197 {
-<a name="l00198"></a>00198     <span class="keywordflow">return</span> (<a class="code" href="namespaceggl.html#c07b4972809b53d2720a357b57aa840b">for_each_segment_multi_polygon</a>(mp, f));
-<a name="l00199"></a>00199 }
-<a name="l00200"></a>00200 
-<a name="l00201"></a>00201 
-<a name="l00202"></a>00202 
-<a name="l00203"></a>00203 
-<a name="l00204"></a>00204 <span class="keyword">template</span><<span class="keyword">typename</span> L,
-<a name="l00205"></a>00205         <span class="keyword">template</span><<span class="keyword">typename</span>,<span class="keyword">typename</span>> <span class="keyword">class </span>V, <span class="keyword">template</span><<span class="keyword">typename</span>> <span class="keyword">class </span>A,
-<a name="l00206"></a>00206         <span class="keyword">typename</span> F>
-<a name="l00207"></a><a class="code" href="namespaceggl.html#9b9e2763881a4191b54d44ba48b483e2">00207</a> <span class="keyword">inline</span> F <a class="code" href="group__loop.html#gefcad88c6ee4e308e1003eff7752b3f3" title="Calls functor for segments on linestrings, rings, polygons, ...">for_each_segment</a>(<span class="keyword">const</span> <a class="code" href="structggl_1_1multi__linestring.html">multi_linestring<L, V, A></a>& ml, F f)
-<a name="l00208"></a>00208 {
-<a name="l00209"></a>00209     <span class="keywordflow">return</span> (<a class="code" href="namespaceggl.html#2ff9b5d4ab8ade0181c804bee391b26c">for_each_segment_multi_linestring</a>(ml, f));
-<a name="l00210"></a>00210 }
-<a name="l00211"></a>00211 
-<a name="l00212"></a>00212 <span class="keyword">template</span><<span class="keyword">typename</span> Y,
-<a name="l00213"></a>00213         <span class="keyword">template</span><<span class="keyword">typename</span>,<span class="keyword">typename</span>> <span class="keyword">class </span>V, <span class="keyword">template</span><<span class="keyword">typename</span>> <span class="keyword">class </span>A,
-<a name="l00214"></a>00214         <span class="keyword">typename</span> F>
-<a name="l00215"></a><a class="code" href="namespaceggl.html#326e05f4a599d0a732b4ee83ec9ea0cc">00215</a> <span class="keyword">inline</span> F <a class="code" href="group__loop.html#gefcad88c6ee4e308e1003eff7752b3f3" title="Calls functor for segments on linestrings, rings, polygons, ...">for_each_segment</a>(<span class="keyword">const</span> <a class="code" href="structggl_1_1multi__polygon.html">multi_polygon<Y, V, A></a>& mp, F f)
-<a name="l00216"></a>00216 {
-<a name="l00217"></a>00217     <span class="keywordflow">return</span> (<a class="code" href="namespaceggl.html#c07b4972809b53d2720a357b57aa840b">for_each_segment_multi_polygon</a>(mp, f));
-<a name="l00218"></a>00218 }
-<a name="l00219"></a>00219 } <span class="comment">// namespace ggl</span>
-<a name="l00220"></a>00220 
-<a name="l00221"></a>00221 
-<a name="l00222"></a>00222 <span class="preprocessor">#endif // GGL_MULTI_FOREACH_HPP</span>
-</pre></div></div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -87,7 +87,7 @@
 <li>add_range()
 : <a class="el" href="classggl_1_1strategy_1_1convex__hull_1_1graham.html#5fdc022ecff10cfbea0d8d0f0dc4bcad">ggl::strategy::convex_hull::graham< P ></a>
 <li>apply()
-: <a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#45491352f7c455ea801781c8b7c812d9">ggl::strategy::simplify::douglas_peucker< R, O_IT, PSDS ></a>
+: <a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#8ec9dbc06a92fb822cddba949e067ae2">ggl::strategy::simplify::douglas_peucker< Point, PointDistanceStrategy ></a>
 <li>as_char()
 : <a class="el" href="structggl_1_1de9im.html#4c3906863083abf88d79d67d9346026b">ggl::de9im</a>
 </ul>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x62.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x62.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x62.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -124,7 +124,7 @@
 <li>bounding_box
 : <a class="el" href="structggl_1_1section.html#dbdec35a5e0878ecc3ac31d28dd12f6f">ggl::section< Box, DimensionCount ></a>
 <li>box()
-: <a class="el" href="classggl_1_1box.html#c7888e7869f90177bbc524467fa9e6c4">ggl::box< P ></a>
+: <a class="el" href="classggl_1_1box.html#33c77af2d104a1faec5e98603d5ded17">ggl::box< Point ></a>
 <li>box_type
 : <a class="el" href="structggl_1_1sections.html#9ad75a29e07d632e85847e4f206715ba">ggl::sections< Box, DimensionCount ></a>
 , <a class="el" href="structggl_1_1section.html#da71a242258d79119fb6df06d290095e">ggl::section< Box, DimensionCount ></a>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x64.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x64.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x64.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -99,13 +99,13 @@
 <li>dir_b
 : <a class="el" href="structggl_1_1policies_1_1relate_1_1direction__type.html#c41c730c67f5c22191f62d5b0a9eb28b">ggl::policies::relate::direction_type</a>
 <li>direction_type()
-: <a class="el" href="structggl_1_1policies_1_1relate_1_1direction__type.html#5a1947e3f282bcfb2907fc42375789ef">ggl::policies::relate::direction_type</a>
+: <a class="el" href="structggl_1_1policies_1_1relate_1_1direction__type.html#164985c8c74343da6fde819a46348368">ggl::policies::relate::direction_type</a>
 <li>directions
 : <a class="el" href="structggl_1_1section.html#685294c3e7107f87fcb7def9e2a6f430">ggl::section< Box, DimensionCount ></a>
 <li>disjoint()
 : <a class="el" href="structggl_1_1de9im.html#80e3fee3098017c06891ec7690d9154b">ggl::de9im</a>
 <li>distance_strategy_type
-: <a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#d9c2f3932590f7088e2cdf032c41458b">ggl::strategy::simplify::douglas_peucker< R, O_IT, PSDS ></a>
+: <a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#c1a18c53b124af6e3f49e61589eef15d">ggl::strategy::simplify::douglas_peucker< Point, PointDistanceStrategy ></a>
 <li>dsv_manipulator()
 : <a class="el" href="classggl_1_1dsv__manipulator.html#5bbe82845f3e20b44d2b75cc8faebf43">ggl::dsv_manipulator< Geometry ></a>
 <li>duplicate
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x66.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x66.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x66.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -83,7 +83,7 @@
 <p>
 <h3><a class="anchor" name="index_f">- f -</a></h3><ul>
 <li>first
-: <a class="el" href="structggl_1_1segment.html#3f8aa8a3542ebf499e4987ef3ccfd5b1">ggl::segment< P ></a>
+: <a class="el" href="classggl_1_1segment.html#76c7f18dd19699ccb7353137b8981c65">ggl::segment< ConstOrNonConstPoint ></a>
 </ul>
 </div>
 <hr size="1">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x67.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x67.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x67.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -83,7 +83,7 @@
 <p>
 <h3><a class="anchor" name="index_g">- g -</a></h3><ul>
 <li>get()
-: <a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html#a25393c19c53fae14f51f6be484113b9">ggl::traits::access< ggl::detail::intersection::intersection_point< P > ></a>
+: <a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html#82a62232a7a2092e0a3850771871e9ee">ggl::traits::access< ggl::detail::intersection::intersection_point< P >, Dimension ></a>
 , <a class="el" href="classggl_1_1point.html#1feea795639ff3f2d985cc9ca32d2f9e">ggl::point< T, D, C ></a>
 , <a class="el" href="classggl_1_1strategy_1_1convex__hull_1_1graham.html#67876d356c1bf48171f46c116510f166">ggl::strategy::convex_hull::graham< P ></a>
 <li>graham()
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x6c.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x6c.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x6c.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -84,8 +84,6 @@
 <h3><a class="anchor" name="index_l">- l -</a></h3><ul>
 <li>larger()
 : <a class="el" href="structggl_1_1strategy_1_1compare_1_1euclidian.html#2348861bfb7eee153354bb81e633ea3a">ggl::strategy::compare::euclidian< P, D ></a>
-<li>ll_point_segment()
-: <a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#bd6a906cc460c9073ed833922392407c">ggl::strategy::distance::ll_point_segment< P, S ></a>
 </ul>
 </div>
 <hr size="1">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x6d.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x6d.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x6d.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -98,7 +98,7 @@
 : <a class="el" href="classggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_012_00_012_01_4.html#12592e67623e7963a17010ad3441389b">ggl::strategy::transform::ublas_transformer< P1, P2, 2, 2 ></a>
 , <a class="el" href="classggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_013_00_013_01_4.html#a76b6324f5b389154d46f685e0d87780">ggl::strategy::transform::ublas_transformer< P1, P2, 3, 3 ></a>
 <li>max_corner()
-: <a class="el" href="classggl_1_1box.html#ad3ec53ea62b0bfa3cb897cea62ea0f0">ggl::box< P ></a>
+: <a class="el" href="classggl_1_1box.html#63a9905a364d6b5bef828cc04b9970f7">ggl::box< Point ></a>
 <li>max_lat
 : <a class="el" href="structggl_1_1strategy_1_1envelope_1_1grow__ll_1_1state.html#2201a3f05376ad97399f34bf6d6043d4">ggl::strategy::envelope::grow_ll< P, B >::state</a>
 <li>max_lon1
@@ -108,7 +108,7 @@
 <li>mbr
 : <a class="el" href="structggl_1_1strategy_1_1envelope_1_1grow__ll_1_1state.html#ce5b18d34b88c63c3b35198370dd947e">ggl::strategy::envelope::grow_ll< P, B >::state</a>
 <li>min_corner()
-: <a class="el" href="classggl_1_1box.html#47f607c06a2a5432eac75d8bd5cf4a61">ggl::box< P ></a>
+: <a class="el" href="classggl_1_1box.html#ebc2dece8cd77a23f73ffae3a957f093">ggl::box< Point ></a>
 <li>min_lat
 : <a class="el" href="structggl_1_1strategy_1_1envelope_1_1grow__ll_1_1state.html#f29ab2f455444e3dc92d22ac62add570">ggl::strategy::envelope::grow_ll< P, B >::state</a>
 <li>min_lon1
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x6f.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x6f.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x6f.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -97,16 +97,15 @@
 , <a class="el" href="structggl_1_1strategy_1_1transform_1_1degree__radian__vv.html#152a03b3270b0086b5c8d926fe77f090">ggl::strategy::transform::degree_radian_vv< P1, P2, F ></a>
 , <a class="el" href="structggl_1_1strategy_1_1transform_1_1from__cartesian__3__to__spherical__3.html#ac8f345a72c9fd828dfbf2a2ba836aa4">ggl::strategy::transform::from_cartesian_3_to_spherical_3< P1, P2 ></a>
 , <a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#4e6620683b788431de8942b0376af7af">ggl::strategy::distance::haversine< P1, P2 ></a>
-, <a class="el" href="classggl_1_1strategy_1_1within_1_1winding.html#8ce0e3219bdded9943af7bc594a7f1be">ggl::strategy::within::winding< P, PS ></a>
-, <a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#ded28ff8067850eab6befbf3cec37098">ggl::strategy::distance::ll_point_segment< P, S ></a>
 , <a class="el" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html#b05fba0d842e52d836c6e603045e8f7b">ggl::strategy::area::by_spherical_excess< P ></a>
+, <a class="el" href="classggl_1_1strategy_1_1within_1_1winding.html#8ce0e3219bdded9943af7bc594a7f1be">ggl::strategy::within::winding< P, PS ></a>
+, <a class="el" href="structggl_1_1strategy_1_1envelope_1_1grow__ll.html#0a66b9fd4e7caf701344b9412cf0df5b">ggl::strategy::envelope::grow_ll< P, B ></a>
+, <a class="el" href="classggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_012_00_012_01_4.html#1d0365284596b5f526aef0af1c388649">ggl::strategy::transform::ublas_transformer< P1, P2, 2, 2 ></a>
 , <a class="el" href="structggl_1_1strategy_1_1transform_1_1copy__direct.html#5f0d4eaa1ee3ca9b9719461ce322bd58">ggl::strategy::transform::copy_direct< P ></a>
 , <a class="el" href="structggl_1_1strategy_1_1transform_1_1degree__radian__vv__3.html#b92cb18180679ef616fa34ff8972f937">ggl::strategy::transform::degree_radian_vv_3< P1, P2, F ></a>
-, <a class="el" href="structggl_1_1less.html#d92a2c426998512de2eb68328c0292e5">ggl::less< P ></a>
-, <a class="el" href="classggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_013_00_013_01_4.html#b74d6180b2290096409861046c6b33da">ggl::strategy::transform::ublas_transformer< P1, P2, 3, 3 ></a>
 , <a class="el" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#44a2feaa28620a60ce740cfad2374894">ggl::strategy::area::by_triangles< PS, CalculationType ></a>
-, <a class="el" href="structggl_1_1strategy_1_1envelope_1_1grow__ll.html#0a66b9fd4e7caf701344b9412cf0df5b">ggl::strategy::envelope::grow_ll< P, B ></a>
-, <a class="el" href="classggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_012_00_012_01_4.html#1d0365284596b5f526aef0af1c388649">ggl::strategy::transform::ublas_transformer< P1, P2, 2, 2 ></a>
+, <a class="el" href="classggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_013_00_013_01_4.html#b74d6180b2290096409861046c6b33da">ggl::strategy::transform::ublas_transformer< P1, P2, 3, 3 ></a>
+, <a class="el" href="structggl_1_1less.html#d92a2c426998512de2eb68328c0292e5">ggl::less< P ></a>
 , <a class="el" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html#2b418413c02d508b0f570efff0102ff6">ggl::strategy::centroid::geolib1995< PC, PS ></a>
 , <a class="el" href="structggl_1_1strategy_1_1transform_1_1from__spherical__2__to__cartesian__3.html#49e5776790f87fbe0cdd30e751906ba1">ggl::strategy::transform::from_spherical_2_to_cartesian_3< P1, P2 ></a>
 , <a class="el" href="classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html#328f86d7cd18dbaa435df19c924f98fe">ggl::strategy::centroid::bashein_detmer< CentroidPointType, SegmentPointType, CalculationType ></a>
@@ -121,19 +120,19 @@
 : <a class="el" href="structggl_1_1segment__identifier.html#f8c4506cd779593ac4e369b96927123c">ggl::segment_identifier</a>
 , <a class="el" href="structggl_1_1cartesian__distance.html#51d4f3bf5567b0524530fa7bff0c7b66">ggl::cartesian_distance< T ></a>
 <li>operator<<
-: <a class="el" href="classggl_1_1svg__manipulator.html#7c706fce0e2e9a7ae577f4f2d8062282">ggl::svg_manipulator< G ></a>
-, <a class="el" href="structggl_1_1cartesian__distance.html#5a78899edbed0eae576b6fdc5f784ad2">ggl::cartesian_distance< T ></a>
+: <a class="el" href="structggl_1_1cartesian__distance.html#5a78899edbed0eae576b6fdc5f784ad2">ggl::cartesian_distance< T ></a>
 , <a class="el" href="classggl_1_1dsv__manipulator.html#5aa709742f33df7007f70baffcfc0d48">ggl::dsv_manipulator< Geometry ></a>
+, <a class="el" href="classggl_1_1svg__manipulator.html#7c706fce0e2e9a7ae577f4f2d8062282">ggl::svg_manipulator< G ></a>
 <li>operator==()
-: <a class="el" href="structggl_1_1segment__identifier.html#fcb85b5b91f3c3b9fb67ef8851a154eb">ggl::segment_identifier</a>
-, <a class="el" href="structggl_1_1cartesian__distance.html#951bdb772253f50194a754b7740f54b7">ggl::cartesian_distance< T ></a>
+: <a class="el" href="structggl_1_1cartesian__distance.html#951bdb772253f50194a754b7740f54b7">ggl::cartesian_distance< T ></a>
+, <a class="el" href="structggl_1_1segment__identifier.html#fcb85b5b91f3c3b9fb67ef8851a154eb">ggl::segment_identifier</a>
 <li>operator>()
 : <a class="el" href="structggl_1_1cartesian__distance.html#ceef956ddf49e24629a558758f44c8a6">ggl::cartesian_distance< T ></a>
 <li>opposite
-: <a class="el" href="structggl_1_1policies_1_1relate_1_1direction__type.html#84883a234b8e5bd2a93ef27bc77059e1">ggl::policies::relate::direction_type</a>
-, <a class="el" href="structggl_1_1de9im__segment.html#41e71c0be72985cbf9558b172dddaf6f">ggl::de9im_segment</a>
+: <a class="el" href="structggl_1_1de9im__segment.html#41e71c0be72985cbf9558b172dddaf6f">ggl::de9im_segment</a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1direction__type.html#84883a234b8e5bd2a93ef27bc77059e1">ggl::policies::relate::direction_type</a>
 <li>outer()
-: <a class="el" href="classggl_1_1polygon.html#41e0bbcd9d466a41d8eecd6041f3c22c">ggl::polygon< Point, PointList, RingList, ClockWise, PointAlloc, RingAlloc ></a>
+: <a class="el" href="classggl_1_1polygon.html#5faae375ec2c4b4547da615fa8864e74">ggl::polygon< Point, PointList, RingList, ClockWise, PointAlloc, RingAlloc ></a>
 <li>overlaps()
 : <a class="el" href="structggl_1_1de9im.html#b4bdbb38a70ad671ddd562dd0a41ebb5">ggl::de9im</a>
 </ul>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x70.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x70.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x70.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -98,14 +98,13 @@
 : <a class="el" href="structggl_1_1strategy_1_1distance_1_1xy__point__segment.html#bb6549905e99ca61b13cfc644c91f672">ggl::strategy::distance::xy_point_segment< P, Segment, Strategy ></a>
 , <a class="el" href="classggl_1_1strategy_1_1distance_1_1cross__track.html#bb01d09347d2f4f9bec8ab177592643e">ggl::strategy::distance::cross_track< P, S ></a>
 <li>point_type
-: <a class="el" href="structggl_1_1area__result.html#d6428313802f153cd99b803ecde23872">ggl::area_result< Geometry ></a>
-, <a class="el" href="classggl_1_1polygon.html#662c4458e3099e30097a3fc909d54941">ggl::polygon< Point, PointList, RingList, ClockWise, PointAlloc, RingAlloc ></a>
-, <a class="el" href="structggl_1_1strategy_1_1distance_1_1pythagoras.html#4a6f6649a2e25a6c584c29a5c6a3bee0">ggl::strategy::distance::pythagoras< P1, P2, CalculationType ></a>
+: <a class="el" href="structggl_1_1strategy_1_1distance_1_1pythagoras.html#4a6f6649a2e25a6c584c29a5c6a3bee0">ggl::strategy::distance::pythagoras< P1, P2, CalculationType ></a>
+, <a class="el" href="structggl_1_1strategy_1_1distance_1_1xy__point__segment.html#cfb9d185bcc22815ec15d07389ad03b9">ggl::strategy::distance::xy_point_segment< P, Segment, Strategy ></a>
+, <a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8ee0701ef57352296292047e3dcc3330">ggl::strategy::distance::haversine< P1, P2 ></a>
+, <a class="el" href="structggl_1_1area__result.html#d6428313802f153cd99b803ecde23872">ggl::area_result< Geometry ></a>
 , <a class="el" href="classggl_1_1strategy_1_1distance_1_1cross__track.html#08edd81bdb1f8a1296dbaebfc1ca3932">ggl::strategy::distance::cross_track< P, S ></a>
 , <a class="el" href="structggl_1_1segment__iterator.html#e388acc7d123761a41a0132ed0b19d29">ggl::segment_iterator< Base, Point ></a>
-, <a class="el" href="structggl_1_1segment.html#47f8bba55326d5ae988dc3a5a9f146c7">ggl::segment< P ></a>
-, <a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8ee0701ef57352296292047e3dcc3330">ggl::strategy::distance::haversine< P1, P2 ></a>
-, <a class="el" href="structggl_1_1strategy_1_1distance_1_1xy__point__segment.html#cfb9d185bcc22815ec15d07389ad03b9">ggl::strategy::distance::xy_point_segment< P, Segment, Strategy ></a>
+, <a class="el" href="classggl_1_1polygon.html#662c4458e3099e30097a3fc909d54941">ggl::polygon< Point, PointList, RingList, ClockWise, PointAlloc, RingAlloc ></a>
 <li>point_xy()
 : <a class="el" href="classggl_1_1point__xy.html#844ec61e1186e2bb423a26c01e9a72d6">ggl::point_xy< T, C ></a>
 <li>pointer
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x72.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x72.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x72.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -104,19 +104,16 @@
 <li>reference
 : <a class="el" href="structggl_1_1segment__iterator.html#71b04f78cf84d967d8d11ec092d54dcc">ggl::segment_iterator< Base, Point ></a>
 <li>return_type
-: <a class="el" href="structggl_1_1strategy_1_1distance_1_1xy__point__segment.html#a54175d4c138cd7319c8552f43824621">ggl::strategy::distance::xy_point_segment< P, Segment, Strategy ></a>
-, <a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#f98549b351e37683bc7999d389f170f0">ggl::strategy::distance::ll_point_segment< P, S ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#93b91d42efd81a1b75c016fe886bd3b4">ggl::policies::relate::segments_de9im< S1, S2 ></a>
-, <a class="el" href="structggl_1_1area__result.html#4915057a85bc6a0c7292b3db1e4f33be">ggl::area_result< Geometry ></a>
+: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#93b91d42efd81a1b75c016fe886bd3b4">ggl::policies::relate::segments_de9im< S1, S2 ></a>
+, <a class="el" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#f2ef55e9d5310d400a6e43a25f6c989d">ggl::strategy::area::by_triangles< PS, CalculationType ></a>
+, <a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8fd848a2bbc5857c70fa6bce5ffac5d3">ggl::strategy::distance::haversine< P1, P2 ></a>
 , <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#84941aff66a66a38844da63b99590932">ggl::policies::relate::segments_direction< S1, S2 ></a>
 , <a class="el" href="classggl_1_1strategy_1_1distance_1_1cross__track.html#e62cf6b01d4e29e04700ef45e0b15db3">ggl::strategy::distance::cross_track< P, S ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#6e36f163958d94ece083a97f0e3d659c">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
-, <a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8fd848a2bbc5857c70fa6bce5ffac5d3">ggl::strategy::distance::haversine< P1, P2 ></a>
-, <a class="el" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#f2ef55e9d5310d400a6e43a25f6c989d">ggl::strategy::area::by_triangles< PS, CalculationType ></a>
 , <a class="el" href="structggl_1_1strategy_1_1distance_1_1pythagoras.html#0e3ccd19d8d1c63360ba93be700c39a4">ggl::strategy::distance::pythagoras< P1, P2, CalculationType ></a>
 , <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
+, <a class="el" href="structggl_1_1strategy_1_1distance_1_1xy__point__segment.html#a54175d4c138cd7319c8552f43824621">ggl::strategy::distance::xy_point_segment< P, Segment, Strategy ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#6e36f163958d94ece083a97f0e3d659c">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
 , <a class="el" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html#9378e1ffdce5a34e96aa1ec3245ac718">ggl::strategy::area::by_spherical_excess< P ></a>
-, <a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8fd848a2bbc5857c70fa6bce5ffac5d3">ggl::strategy::distance::haversine< P1, P2 ></a>
 <li>ring_index
 : <a class="el" href="structggl_1_1segment__identifier.html#e5b07896d34536e81448435af4d56112">ggl::segment_identifier</a>
 , <a class="el" href="structggl_1_1section.html#fe6e8096e811d4248d64a0a4a9817edc">ggl::section< Box, DimensionCount ></a>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x73.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x73.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x73.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -88,13 +88,13 @@
 : <a class="el" href="structggl_1_1strategy_1_1transform_1_1scale__transformer_3_01_p1_00_01_p2_00_012_00_012_01_4.html#fd92b640f6aeb776138c3b076b714ae1">ggl::strategy::transform::scale_transformer< P1, P2, 2, 2 ></a>
 , <a class="el" href="structggl_1_1strategy_1_1transform_1_1scale__transformer_3_01_p1_00_01_p2_00_013_00_013_01_4.html#f63cba0849484a91687f20936bfa1761">ggl::strategy::transform::scale_transformer< P1, P2, 3, 3 ></a>
 <li>second
-: <a class="el" href="structggl_1_1segment.html#e5aea8fdfbd0e0dece9b227a8a5cec33">ggl::segment< P ></a>
+: <a class="el" href="classggl_1_1segment.html#543b3806df8d74067157587323917a71">ggl::segment< ConstOrNonConstPoint ></a>
 <li>second_larger
 : <a class="el" href="structggl_1_1select__most__precise.html#0d0774307858675158899fb96abd12ec">ggl::select_most_precise< T1, T2 ></a>
 <li>section()
 : <a class="el" href="structggl_1_1section.html#6b36770260c6a2c89a9a63fc641064c4">ggl::section< Box, DimensionCount ></a>
 <li>segment()
-: <a class="el" href="structggl_1_1segment.html#e8e37a9f4eeacb317a1ce971da6cbd87">ggl::segment< P ></a>
+: <a class="el" href="classggl_1_1segment.html#186525605856fad4270057e760d6c020">ggl::segment< ConstOrNonConstPoint ></a>
 <li>segment_equal()
 : <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#a36b30cceae8d736831ff406707dfd2d">ggl::policies::relate::segments_de9im< S1, S2 ></a>
 , <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#38fbcf5e765fdff2104b206978a793a9">ggl::policies::relate::segments_direction< S1, S2 ></a>
@@ -121,15 +121,13 @@
 , <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#5765d55937d6cb6edc3a1cfe053f6f96">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
 , <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#192979bbc532077e533e31a827ed473d">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
 <li>set()
-: <a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html#bce25b446714591183532373ceeaf1f7">ggl::traits::access< ggl::detail::intersection::intersection_point< P > ></a>
+: <a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html#840ddd0e5e5719de54570e292d17cfb0">ggl::traits::access< ggl::detail::intersection::intersection_point< P >, Dimension ></a>
 , <a class="el" href="classggl_1_1point.html#f84fee80a5505841b275b1c3f9bc7ddf">ggl::point< T, D, C ></a>
 <li>shift()
 : <a class="el" href="structggl_1_1strategy_1_1envelope_1_1shift_1_1shifted_3_01radian_01_4.html#190d1b26ee176ef44202ae326af8d1b4">ggl::strategy::envelope::shift::shifted< radian ></a>
 , <a class="el" href="structggl_1_1strategy_1_1envelope_1_1shift_1_1shifted_3_01degree_01_4.html#6dc89bfc493d2a8abca5e257729089c3">ggl::strategy::envelope::shift::shifted< degree ></a>
 <li>side()
-: <a class="el" href="structggl_1_1strategy_1_1side_1_1xy__side.html#ef3dcea77c310bdd72a534539ef72edd">ggl::strategy::side::xy_side< P, PS ></a>
-<li>simplify()
-: <a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#dca55aa87f6d5b49df52585fa0f97add">ggl::strategy::simplify::douglas_peucker< R, O_IT, PSDS ></a>
+: <a class="el" href="structggl_1_1strategy_1_1side_1_1xy__side.html#b35869205a5eefee505f491bc1a53f4a">ggl::strategy::side::xy_side< P, PS ></a>
 <li>smaller()
 : <a class="el" href="structggl_1_1strategy_1_1compare_1_1euclidian.html#69e12a7cd92180445c9d6b293a808059">ggl::strategy::compare::euclidian< P, D ></a>
 <li>source_index
@@ -140,14 +138,14 @@
 : <a class="el" href="structggl_1_1strategy_1_1envelope_1_1combine__xy_1_1state.html#d5773c71a966e0389f8976f6a42bda98">ggl::strategy::envelope::combine_xy< P, B >::state</a>
 , <a class="el" href="structggl_1_1strategy_1_1envelope_1_1grow__ll_1_1state.html#e7472309bf08955ee6e41f15f6124516">ggl::strategy::envelope::grow_ll< P, B >::state</a>
 <li>state_type
-: <a class="el" href="classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html#c9134908bec29b94168f6d733a6b2c89">ggl::strategy::centroid::bashein_detmer< CentroidPointType, SegmentPointType, CalculationType ></a>
-, <a class="el" href="structggl_1_1strategy_1_1envelope_1_1combine__xy.html#182ce543f6c73a393e327a281bd5833b">ggl::strategy::envelope::combine_xy< P, B ></a>
-, <a class="el" href="classggl_1_1strategy_1_1within_1_1winding.html#aa5dc8bd530eed3ac8420ccccd2c8e65">ggl::strategy::within::winding< P, PS ></a>
+: <a class="el" href="structggl_1_1strategy_1_1envelope_1_1combine__xy.html#182ce543f6c73a393e327a281bd5833b">ggl::strategy::envelope::combine_xy< P, B ></a>
 , <a class="el" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html#ca224a54396a8ff91a31831888ddc65e">ggl::strategy::area::by_spherical_excess< P ></a>
-, <a class="el" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#b8c68b50c6f0909ab64c6c97f4dd8ea4">ggl::strategy::area::by_triangles< PS, CalculationType ></a>
-, <a class="el" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html#1dd6664e9b804f79ad472e51501568c8">ggl::strategy::centroid::geolib1995< PC, PS ></a>
+, <a class="el" href="classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html#c9134908bec29b94168f6d733a6b2c89">ggl::strategy::centroid::bashein_detmer< CentroidPointType, SegmentPointType, CalculationType ></a>
 , <a class="el" href="structggl_1_1strategy_1_1within_1_1franklin.html#ae1dd9c468a086bdaaa4b1235fc26bce">ggl::strategy::within::franklin< P, PS ></a>
 , <a class="el" href="structggl_1_1strategy_1_1envelope_1_1grow__ll.html#8f49bd3eba8c415f56e24d4085e2b1be">ggl::strategy::envelope::grow_ll< P, B ></a>
+, <a class="el" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html#1dd6664e9b804f79ad472e51501568c8">ggl::strategy::centroid::geolib1995< PC, PS ></a>
+, <a class="el" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#b8c68b50c6f0909ab64c6c97f4dd8ea4">ggl::strategy::area::by_triangles< PS, CalculationType ></a>
+, <a class="el" href="classggl_1_1strategy_1_1within_1_1winding.html#aa5dc8bd530eed3ac8420ccccd2c8e65">ggl::strategy::within::winding< P, PS ></a>
 <li>strategy_type
 : <a class="el" href="structggl_1_1area__result.html#ccb03cf635c157788a99c33d8f3c3a1e">ggl::area_result< Geometry ></a>
 <li>svg_manipulator()
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x74.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x74.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x74.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -106,6 +106,8 @@
 , <a class="el" href="structggl_1_1strategy__distance__segment.html#7f194ba200da0e6da72ac4e14a623a2f">ggl::strategy_distance_segment< CsTag1, CsTag2, Point, Segment ></a>
 , <a class="el" href="structggl_1_1strategy__distance.html#e95dff63729289b7ff265e4311fb54de">ggl::strategy_distance< T1, T2, P1, P2 ></a>
 , <a class="el" href="structggl_1_1strategy__area.html#1e4dc33e378ad99d5ba47807de230a3b">ggl::strategy_area< T, P ></a>
+, <a class="el" href="structggl_1_1length__result.html#804491e987771a8c50f977a209ee0599">ggl::length_result< Geometry ></a>
+, <a class="el" href="structggl_1_1area__result.html#6f843780140b8fa0ac0a4a36c4c00d81">ggl::area_result< Geometry ></a>
 , <a class="el" href="structggl_1_1vertex__iterator.html#5972cd0c976afccdc5a0a5400b998bdf">ggl::vertex_iterator< Geometry, IsConst ></a>
 , <a class="el" href="structggl_1_1traits_1_1tag_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html#02acc738dfcd073102d0c33b600556f9">ggl::traits::tag< ggl::detail::intersection::intersection_point< P > ></a>
 , <a class="el" href="structggl_1_1traits_1_1coordinate__system_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html#b77a740fb26f4ade02637e33c02ead68">ggl::traits::coordinate_system< ggl::detail::intersection::intersection_point< P > ></a>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x76.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x76.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_0x76.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -83,7 +83,7 @@
 <p>
 <h3><a class="anchor" name="index_v">- v -</a></h3><ul>
 <li>value
-: <a class="el" href="structggl_1_1traits_1_1use__std.html#17f62fd601472a4c970adeda2281f145">ggl::traits::use_std< G ></a>
+: <a class="el" href="structggl_1_1traits_1_1use__std.html#53e09180303edd2ec2735f749db2305d">ggl::traits::use_std< Geometry ></a>
 , <a class="el" href="structggl_1_1traits_1_1point__order.html#e9e3962e6119b95889eaa2b810395037">ggl::traits::point_order< G ></a>
 , <a class="el" href="structggl_1_1sections.html#1c9f89074b8fa60cc7c6e11ff323093e">ggl::sections< Box, DimensionCount ></a>
 , <a class="el" href="structggl_1_1point__order.html#2ec9d56b715d2ecd6e6cb55434d40258">ggl::point_order< Geometry ></a>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -52,28 +52,28 @@
   </div>
   <div class="tabs">
     <ul>
-      <li class="current">a</li>
-      <li>b</li>
-      <li>c</li>
-      <li>d</li>
-      <li>e</li>
-      <li>g</li>
-      <li>h</li>
-      <li>i</li>
-      <li>l</li>
-      <li>m</li>
-      <li>n</li>
-      <li>o</li>
-      <li>p</li>
-      <li>r</li>
-      <li>s</li>
-      <li>t</li>
-      <li>u</li>
-      <li>v</li>
-      <li>w</li>
-      <li>x</li>
-      <li>y</li>
-      <li>~</li>
+      <li>a</li>
+      <li>b</li>
+      <li>c</li>
+      <li>d</li>
+      <li>e</li>
+      <li>g</li>
+      <li>h</li>
+      <li>i</li>
+      <li>l</li>
+      <li>m</li>
+      <li>n</li>
+      <li>o</li>
+      <li>p</li>
+      <li>r</li>
+      <li>s</li>
+      <li>t</li>
+      <li>u</li>
+      <li>v</li>
+      <li>w</li>
+      <li>x</li>
+      <li>y</li>
+      <li>~</li>
     </ul>
   </div>
 </div>
@@ -86,10 +86,304 @@
 <li>add_range()
 : <a class="el" href="classggl_1_1strategy_1_1convex__hull_1_1graham.html#5fdc022ecff10cfbea0d8d0f0dc4bcad">ggl::strategy::convex_hull::graham< P ></a>
 <li>apply()
-: <a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#45491352f7c455ea801781c8b7c812d9">ggl::strategy::simplify::douglas_peucker< R, O_IT, PSDS ></a>
+: <a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#8ec9dbc06a92fb822cddba949e067ae2">ggl::strategy::simplify::douglas_peucker< Point, PointDistanceStrategy ></a>
 <li>as_char()
 : <a class="el" href="structggl_1_1de9im.html#4c3906863083abf88d79d67d9346026b">ggl::de9im</a>
 </ul>
+<h3><a class="anchor" name="index_b">- b -</a></h3><ul>
+<li>base()
+: <a class="el" href="structggl_1_1segment__iterator.html#932c0212e2ba798d82d4484c2278150a">ggl::segment_iterator< Base, Point ></a>
+<li>BOOST_CONCEPT_ASSERT()
+: <a class="el" href="structggl_1_1multi__linestring.html#ad0eb4fd23482608a67e61f460615d17">ggl::multi_linestring< L, V, A ></a>
+, <a class="el" href="structggl_1_1multi__polygon.html#867921f0b7c2e26e176a2ded3cd2d05d">ggl::multi_polygon< P, V, A ></a>
+, <a class="el" href="structggl_1_1multi__point.html#e0dbad20fa00c02d4af5e8633937371c">ggl::multi_point< P, V, A ></a>
+<li>BOOST_CONCEPT_USAGE()
+: <a class="el" href="structggl_1_1concept_1_1_simplify_strategy.html#457fbf2fa1075f00c6d8090d47e1fc3d">ggl::concept::SimplifyStrategy< Strategy ></a>
+, <a class="el" href="structggl_1_1concept_1_1_point_segment_distance_strategy.html#91386bae305551b33feb8399bf3ea441">ggl::concept::PointSegmentDistanceStrategy< Strategy ></a>
+, <a class="el" href="structggl_1_1concept_1_1_point_distance_strategy.html#902301c0010222a56dd61cf69d2ee893">ggl::concept::PointDistanceStrategy< Strategy ></a>
+, <a class="el" href="structggl_1_1concept_1_1_const_segment.html#79691668dde1be67b7a497a6b1cd31ce">ggl::concept::ConstSegment< S ></a>
+, <a class="el" href="structggl_1_1concept_1_1_const_linestring.html#8154a02204ad8183d57420846e7b5449">ggl::concept::ConstLinestring< L ></a>
+, <a class="el" href="structggl_1_1concept_1_1_const_ring.html#1b6553b6ed0d5716bbc0044f7f29cfb2">ggl::concept::ConstRing< R ></a>
+, <a class="el" href="structggl_1_1concept_1_1_ring.html#eb5f0045673fa11f20e4b48856a4bf69">ggl::concept::Ring< R ></a>
+, <a class="el" href="structggl_1_1concept_1_1_const_polygon.html#efa7d199dbc8b2e17308e175fe4e33ca">ggl::concept::ConstPolygon< P ></a>
+, <a class="el" href="structggl_1_1concept_1_1_polygon.html#69581c3daae416341fbe72829f567278">ggl::concept::Polygon< P ></a>
+, <a class="el" href="structggl_1_1concept_1_1_segment.html#d2e340dff544a40ed257a1823dfd4749">ggl::concept::Segment< S ></a>
+, <a class="el" href="structggl_1_1concept_1_1_point.html#59ab6c36bc854b94ee2404d084605f7b">ggl::concept::Point< X ></a>
+, <a class="el" href="structggl_1_1concept_1_1_nsphere.html#f7a6ea630944b84202eed0a9de90cff4">ggl::concept::Nsphere< S ></a>
+, <a class="el" href="structggl_1_1concept_1_1_const_nsphere.html#cf6dfbdf9c9bceab4e3b481b95f1fb11">ggl::concept::ConstNsphere< S ></a>
+, <a class="el" href="structggl_1_1concept_1_1_box.html#6fa5d3378f1f34978c07d54abf69f753">ggl::concept::Box< B ></a>
+, <a class="el" href="structggl_1_1concept_1_1_linestring.html#93370176c63ec560ead3a1cd8c8c3693">ggl::concept::Linestring< L ></a>
+, <a class="el" href="structggl_1_1concept_1_1_const_point.html#4fa25bd423c491516e0453c2aad75a0a">ggl::concept::ConstPoint< X ></a>
+, <a class="el" href="structggl_1_1concept_1_1_const_box.html#0deab699f7cecb2854ba52635635405f">ggl::concept::ConstBox< B ></a>
+<li>box()
+: <a class="el" href="classggl_1_1box.html#27556d65c45886911a450e707b8cd633">ggl::box< Point ></a>
+<li>by_spherical_excess()
+: <a class="el" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html#59b71eaa070bf9d8e68e4d4f8263e06e">ggl::strategy::area::by_spherical_excess< P ></a>
+</ul>
+<h3><a class="anchor" name="index_c">- c -</a></h3><ul>
+<li>cartesian_distance()
+: <a class="el" href="structggl_1_1cartesian__distance.html#441dcc3558edeb3bee94c667cfdfbd68">ggl::cartesian_distance< T ></a>
+<li>center()
+: <a class="el" href="classggl_1_1nsphere.html#3f6b59190ffcbc30cbcac55073915674">ggl::nsphere< P, T ></a>
+<li>centroid_exception()
+: <a class="el" href="classggl_1_1centroid__exception.html#60598437eea82fd35bffdbcac8d4b839">ggl::centroid_exception</a>
+<li>circular_iterator()
+: <a class="el" href="structggl_1_1circular__iterator.html#be1c3556eefbae4d3dee51925873bace">ggl::circular_iterator< Iterator ></a>
+<li>clear()
+: <a class="el" href="classggl_1_1polygon.html#45859e712d67f58e5813e87759892bdf">ggl::polygon< Point, PointList, RingList, ClockWise, PointAlloc, RingAlloc ></a>
+<li>clip_segment()
+: <a class="el" href="classggl_1_1strategy_1_1intersection_1_1liang__barsky.html#1a0456b13305792c70cd53b8571db1ef">ggl::strategy::intersection::liang_barsky< B, P ></a>
+<li>collinear_a_in_b()
+: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#f5c67f6d1fb6bc02730f9942c1a24829">ggl::policies::relate::segments_de9im< S1, S2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#a00a443f46cd557c282891c59cc683fb">ggl::policies::relate::segments_direction< S1, S2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#c6ae19aac0a85a1344c591ff2d4b0cbb">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#512bec33f0d13ffe8bdcaa7d2c6cd1ec">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
+<li>collinear_b_in_a()
+: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#f95f9b1c2e967c260d060c24aabf160f">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#e62d1ab6f50141636f04f5ae514e206b">ggl::policies::relate::segments_de9im< S1, S2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#298148121645c574e290081c7cd16995">ggl::policies::relate::segments_direction< S1, S2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#d963f9b96126549f9328bd702e17df0f">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
+<li>collinear_disjoint()
+: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#7e36a5671574be928045baec27dcfe0d">ggl::policies::relate::segments_de9im< S1, S2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#bac75a74d17cdac4e693be8c6a76cd60">ggl::policies::relate::segments_direction< S1, S2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#ac05de9fec4c0ff68b0c70e28f8be442">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#7e99a479fc3e9b45db7ab065305dccc6">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
+<li>collinear_inside()
+: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#fff966d91744b1fa0f0f33680d73df40">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
+<li>collinear_interior_boundary_intersect()
+: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#eb5b99875c3518bb6263b983041c4cf3">ggl::policies::relate::segments_de9im< S1, S2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#1fe7ee7acea8cc077bd98ca260d19bd9">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#036ae4e5762ae6b9f981e7b9d39f0b2a">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#80ce268792c7516aac1c546e8fbd9b24">ggl::policies::relate::segments_direction< S1, S2 ></a>
+<li>collinear_overlaps()
+: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#eb0ebf059d5e294fb18156aac93027cb">ggl::policies::relate::segments_direction< S1, S2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#798750f9c6e3ca554cef83e7ecbdb9cd">ggl::policies::relate::segments_de9im< S1, S2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fc31e769602ef50ec62d22ed157554b4">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#23e3bbadf0217d59dfd71d01ee690ca8">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
+<li>collinear_touch()
+: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#ac5d192f53e833ee39c48dc8954199d9">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#047b8574e173fd4ccb5f32dba6adb904">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#c9112222bb21c8bbc164008c9bdbfa24">ggl::policies::relate::segments_de9im< S1, S2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#46d3001d71d9684f5806911c68d5bff5">ggl::policies::relate::segments_direction< S1, S2 ></a>
+<li>contains()
+: <a class="el" href="structggl_1_1de9im.html#a15591d020883026f28f98f4071b80e5">ggl::de9im</a>
+<li>cross_track()
+: <a class="el" href="classggl_1_1strategy_1_1distance_1_1cross__track.html#06581a2187a083f85b27f19b97366549">ggl::strategy::distance::cross_track< P, S ></a>
+<li>crosses()
+: <a class="el" href="structggl_1_1de9im.html#8cbd11f530d85ec94d9f1a5eeb6f6da4">ggl::de9im</a>
+</ul>
+<h3><a class="anchor" name="index_d">- d -</a></h3><ul>
+<li>de9im()
+: <a class="el" href="structggl_1_1de9im.html#0e63fce9a0f98c1538e4fe41c5088680">ggl::de9im</a>
+<li>de9im_segment()
+: <a class="el" href="structggl_1_1de9im__segment.html#0fe3f361fef06047e7befa1efea254da">ggl::de9im_segment</a>
+<li>degenerate()
+: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#d68c9fa4dbac13be78e0f2d8a099ca6a">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#c38201cbc6a2788b300413a7f90103b2">ggl::policies::relate::segments_de9im< S1, S2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#3cf559644d63441e018d2a590559986e">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#6992882507d5abb3a649db55eeaa01eb">ggl::policies::relate::segments_direction< S1, S2 ></a>
+<li>direction_type()
+: <a class="el" href="structggl_1_1policies_1_1relate_1_1direction__type.html#5a1947e3f282bcfb2907fc42375789ef">ggl::policies::relate::direction_type</a>
+<li>disjoint()
+: <a class="el" href="structggl_1_1de9im.html#80e3fee3098017c06891ec7690d9154b">ggl::de9im</a>
+<li>dsv_manipulator()
+: <a class="el" href="classggl_1_1dsv__manipulator.html#5bbe82845f3e20b44d2b75cc8faebf43">ggl::dsv_manipulator< Geometry ></a>
+</ul>
+<h3><a class="anchor" name="index_e">- e -</a></h3><ul>
+<li>equals()
+: <a class="el" href="structggl_1_1de9im.html#01f365a488218068020af89113cd3745">ggl::de9im</a>
+<li>ever_circling_iterator()
+: <a class="el" href="structggl_1_1ever__circling__iterator.html#a3b3465a611c79f0b33bda06e92ba561">ggl::ever_circling_iterator< Iterator ></a>
+</ul>
+<h3><a class="anchor" name="index_g">- g -</a></h3><ul>
+<li>get()
+: <a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html#82a62232a7a2092e0a3850771871e9ee">ggl::traits::access< ggl::detail::intersection::intersection_point< P >, Dimension ></a>
+, <a class="el" href="classggl_1_1point.html#1feea795639ff3f2d985cc9ca32d2f9e">ggl::point< T, D, C ></a>
+, <a class="el" href="classggl_1_1strategy_1_1convex__hull_1_1graham.html#67876d356c1bf48171f46c116510f166">ggl::strategy::convex_hull::graham< P ></a>
+<li>graham()
+: <a class="el" href="classggl_1_1strategy_1_1convex__hull_1_1graham.html#00ccb1a05057f89cd1d557506e9eba1d">ggl::strategy::convex_hull::graham< P ></a>
+<li>grow()
+: <a class="el" href="structggl_1_1strategy_1_1envelope_1_1grow__ll_1_1state.html#6fc324d20c8daa360438eadd15c4d2ec">ggl::strategy::envelope::grow_ll< P, B >::state</a>
+</ul>
+<h3><a class="anchor" name="index_h">- h -</a></h3><ul>
+<li>handle_input()
+: <a class="el" href="classggl_1_1strategy_1_1convex__hull_1_1graham.html#886de91332db9c491dd1ea63c476a1c3">ggl::strategy::convex_hull::graham< P ></a>
+<li>haversine()
+: <a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#85ea8852c843a8950010229d0da4504a">ggl::strategy::distance::haversine< P1, P2 ></a>
+</ul>
+<h3><a class="anchor" name="index_i">- i -</a></h3><ul>
+<li>inners()
+: <a class="el" href="classggl_1_1polygon.html#5a8564eeeaa4f244e6f70ab10395a63f">ggl::polygon< Point, PointList, RingList, ClockWise, PointAlloc, RingAlloc ></a>
+<li>intersects()
+: <a class="el" href="structggl_1_1de9im.html#2c901db53a08be784689180a944a5762">ggl::de9im</a>
+<li>inverse_transformer()
+: <a class="el" href="structggl_1_1strategy_1_1transform_1_1inverse__transformer.html#4e116b3a139e47ecb7913e19ae0beb67">ggl::strategy::transform::inverse_transformer< P1, P2 ></a>
+</ul>
+<h3><a class="anchor" name="index_l">- l -</a></h3><ul>
+<li>larger()
+: <a class="el" href="structggl_1_1strategy_1_1compare_1_1euclidian.html#2348861bfb7eee153354bb81e633ea3a">ggl::strategy::compare::euclidian< P, D ></a>
+</ul>
+<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
+<li>map_transformer()
+: <a class="el" href="structggl_1_1strategy_1_1transform_1_1map__transformer.html#50548a182f22cf997edb2c1d4b249291">ggl::strategy::transform::map_transformer< P1, P2, Mirror, SameScale, Dimension1, Dimension2 ></a>
+<li>matrix()
+: <a class="el" href="classggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_013_00_013_01_4.html#26c463b304ea38f14d55fcadd4d439a8">ggl::strategy::transform::ublas_transformer< P1, P2, 3, 3 ></a>
+, <a class="el" href="classggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_012_00_012_01_4.html#6b9ff9fc83d6716a7d7aa46916340e45">ggl::strategy::transform::ublas_transformer< P1, P2, 2, 2 ></a>
+<li>max_corner()
+: <a class="el" href="classggl_1_1box.html#63a9905a364d6b5bef828cc04b9970f7">ggl::box< Point ></a>
+<li>min_corner()
+: <a class="el" href="classggl_1_1box.html#ebc2dece8cd77a23f73ffae3a957f093">ggl::box< Point ></a>
+<li>moveto()
+: <a class="el" href="structggl_1_1ever__circling__iterator.html#3bf51f4dfcb1dc644c707fc956551ba4">ggl::ever_circling_iterator< Iterator ></a>
+, <a class="el" href="structggl_1_1circular__iterator.html#7bf49b36a96ab752a363b620bef96d78">ggl::circular_iterator< Iterator ></a>
+</ul>
+<h3><a class="anchor" name="index_n">- n -</a></h3><ul>
+<li>nsphere()
+: <a class="el" href="classggl_1_1nsphere.html#43ce9d06cc8e93f8be4e886e6f468fd6">ggl::nsphere< P, T ></a>
+</ul>
+<h3><a class="anchor" name="index_o">- o -</a></h3><ul>
+<li>operator cast_type()
+: <a class="el" href="structggl_1_1cartesian__distance.html#0f7ef783e29548ca43f47bee6bca108e">ggl::cartesian_distance< T ></a>
+<li>operator()()
+: <a class="el" href="structggl_1_1strategy_1_1transform_1_1copy__direct.html#5f0d4eaa1ee3ca9b9719461ce322bd58">ggl::strategy::transform::copy_direct< P ></a>
+, <a class="el" href="structggl_1_1strategy_1_1transform_1_1degree__radian__vv.html#152a03b3270b0086b5c8d926fe77f090">ggl::strategy::transform::degree_radian_vv< P1, P2, F ></a>
+, <a class="el" href="structggl_1_1strategy_1_1transform_1_1from__cartesian__3__to__spherical__2.html#ec9a93c7157291c5f566158a3345fae7">ggl::strategy::transform::from_cartesian_3_to_spherical_2< P1, P2 ></a>
+, <a class="el" href="structggl_1_1strategy_1_1envelope_1_1combine__xy.html#229d31b6bae851fa277a9f857237c0ab">ggl::strategy::envelope::combine_xy< P, B ></a>
+, <a class="el" href="structggl_1_1strategy_1_1within_1_1franklin.html#bc36ab444ff56273a4536af3f3d4a281">ggl::strategy::within::franklin< P, PS ></a>
+, <a class="el" href="structggl_1_1strategy_1_1transform_1_1from__cartesian__3__to__spherical__3.html#ac8f345a72c9fd828dfbf2a2ba836aa4">ggl::strategy::transform::from_cartesian_3_to_spherical_3< P1, P2 ></a>
+, <a class="el" href="classggl_1_1strategy_1_1distance_1_1cross__track.html#64feaa8d5b329b87c74700e183edcf0b">ggl::strategy::distance::cross_track< P, S ></a>
+, <a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#4e6620683b788431de8942b0376af7af">ggl::strategy::distance::haversine< P1, P2 ></a>
+, <a class="el" href="structggl_1_1strategy_1_1transform_1_1degree__radian__vv__3.html#b92cb18180679ef616fa34ff8972f937">ggl::strategy::transform::degree_radian_vv_3< P1, P2, F ></a>
+, <a class="el" href="classggl_1_1strategy_1_1within_1_1winding.html#8ce0e3219bdded9943af7bc594a7f1be">ggl::strategy::within::winding< P, PS ></a>
+, <a class="el" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html#b05fba0d842e52d836c6e603045e8f7b">ggl::strategy::area::by_spherical_excess< P ></a>
+, <a class="el" href="structggl_1_1strategy_1_1envelope_1_1grow__ll.html#0a66b9fd4e7caf701344b9412cf0df5b">ggl::strategy::envelope::grow_ll< P, B ></a>
+, <a class="el" href="structggl_1_1less.html#d92a2c426998512de2eb68328c0292e5">ggl::less< P ></a>
+, <a class="el" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#44a2feaa28620a60ce740cfad2374894">ggl::strategy::area::by_triangles< PS, CalculationType ></a>
+, <a class="el" href="classggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_012_00_012_01_4.html#1d0365284596b5f526aef0af1c388649">ggl::strategy::transform::ublas_transformer< P1, P2, 2, 2 ></a>
+, <a class="el" href="classggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_013_00_013_01_4.html#b74d6180b2290096409861046c6b33da">ggl::strategy::transform::ublas_transformer< P1, P2, 3, 3 ></a>
+, <a class="el" href="structggl_1_1strategy_1_1transform_1_1copy__per__coordinate.html#30c3026667a9846ecad20909e561a84e">ggl::strategy::transform::copy_per_coordinate< P1, P2 ></a>
+, <a class="el" href="structggl_1_1strategy_1_1transform_1_1from__spherical__2__to__cartesian__3.html#49e5776790f87fbe0cdd30e751906ba1">ggl::strategy::transform::from_spherical_2_to_cartesian_3< P1, P2 ></a>
+, <a class="el" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html#2b418413c02d508b0f570efff0102ff6">ggl::strategy::centroid::geolib1995< PC, PS ></a>
+, <a class="el" href="classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html#328f86d7cd18dbaa435df19c924f98fe">ggl::strategy::centroid::bashein_detmer< CentroidPointType, SegmentPointType, CalculationType ></a>
+, <a class="el" href="structggl_1_1strategy_1_1transform_1_1from__spherical__3__to__cartesian__3.html#feed81c34e4f15791bb63fba042cf5e8">ggl::strategy::transform::from_spherical_3_to_cartesian_3< P1, P2 ></a>
+, <a class="el" href="structggl_1_1strategy_1_1distance_1_1pythagoras.html#da96ada6f45642ee8e773e660cf6fb1a">ggl::strategy::distance::pythagoras< P1, P2, CalculationType ></a>
+, <a class="el" href="structggl_1_1strategy_1_1distance_1_1xy__point__segment.html#7bbdf22f4985080ce60b2efcbf67352b">ggl::strategy::distance::xy_point_segment< P, Segment, Strategy ></a>
+<li>operator*()
+: <a class="el" href="structggl_1_1segment__iterator.html#5f87341660aa48a2807c5d1a1392f4c2">ggl::segment_iterator< Base, Point ></a>
+<li>operator++()
+: <a class="el" href="structggl_1_1segment__iterator.html#63c6edf091022da4e2afee8d395eeeaa">ggl::segment_iterator< Base, Point ></a>
+<li>operator->()
+: <a class="el" href="structggl_1_1segment__iterator.html#2b2dfc371bc599e81a16671a83fc16de">ggl::segment_iterator< Base, Point ></a>
+<li>operator<()
+: <a class="el" href="structggl_1_1cartesian__distance.html#51d4f3bf5567b0524530fa7bff0c7b66">ggl::cartesian_distance< T ></a>
+, <a class="el" href="structggl_1_1segment__identifier.html#f8c4506cd779593ac4e369b96927123c">ggl::segment_identifier</a>
+<li>operator==()
+: <a class="el" href="structggl_1_1segment__identifier.html#fcb85b5b91f3c3b9fb67ef8851a154eb">ggl::segment_identifier</a>
+, <a class="el" href="structggl_1_1cartesian__distance.html#951bdb772253f50194a754b7740f54b7">ggl::cartesian_distance< T ></a>
+<li>operator>()
+: <a class="el" href="structggl_1_1cartesian__distance.html#ceef956ddf49e24629a558758f44c8a6">ggl::cartesian_distance< T ></a>
+<li>outer()
+: <a class="el" href="classggl_1_1polygon.html#41e0bbcd9d466a41d8eecd6041f3c22c">ggl::polygon< Point, PointList, RingList, ClockWise, PointAlloc, RingAlloc ></a>
+<li>overlaps()
+: <a class="el" href="structggl_1_1de9im.html#b4bdbb38a70ad671ddd562dd0a41ebb5">ggl::de9im</a>
+</ul>
+<h3><a class="anchor" name="index_p">- p -</a></h3><ul>
+<li>parallel()
+: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#3887cd4e999e77056841445b19f82628">ggl::policies::relate::segments_de9im< S1, S2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#efcd33b8f82a96582cdd9b3ce3a05eb9">ggl::policies::relate::segments_direction< S1, S2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#970335edc3c8374463b8c0c4296c87f3">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#92164bfd70c2ff6e8d2778594d69b6da">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
+<li>point()
+: <a class="el" href="classggl_1_1point.html#526fb447a893414486fa85caa170cdbf">ggl::point< T, D, C ></a>
+<li>point_xy()
+: <a class="el" href="classggl_1_1point__xy.html#844ec61e1186e2bb423a26c01e9a72d6">ggl::point_xy< T, C ></a>
+</ul>
+<h3><a class="anchor" name="index_r">- r -</a></h3><ul>
+<li>radius()
+: <a class="el" href="classggl_1_1nsphere.html#45501ded4a12c89b95598ca131fc1caa">ggl::nsphere< P, T ></a>
+<li>rays_intersect()
+: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#f82c271b6352c8b4df60172f302a90b6">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#a31565e67fe3205615e88aef3015e550">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#32ede06f7881e263fc42a6cf02f72f68">ggl::policies::relate::segments_direction< S1, S2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#3aab22f63cc115f292a3ddbff5450f43">ggl::policies::relate::segments_de9im< S1, S2 ></a>
+<li>rotate_transformer()
+: <a class="el" href="structggl_1_1strategy_1_1transform_1_1rotate__transformer.html#a38f61b33b815f836459fa1cb7ba1011">ggl::strategy::transform::rotate_transformer< P1, P2, DegreeOrRadian ></a>
+</ul>
+<h3><a class="anchor" name="index_s">- s -</a></h3><ul>
+<li>scale_transformer()
+: <a class="el" href="structggl_1_1strategy_1_1transform_1_1scale__transformer_3_01_p1_00_01_p2_00_012_00_012_01_4.html#fd92b640f6aeb776138c3b076b714ae1">ggl::strategy::transform::scale_transformer< P1, P2, 2, 2 ></a>
+, <a class="el" href="structggl_1_1strategy_1_1transform_1_1scale__transformer_3_01_p1_00_01_p2_00_013_00_013_01_4.html#f63cba0849484a91687f20936bfa1761">ggl::strategy::transform::scale_transformer< P1, P2, 3, 3 ></a>
+<li>section()
+: <a class="el" href="structggl_1_1section.html#6b36770260c6a2c89a9a63fc641064c4">ggl::section< Box, DimensionCount ></a>
+<li>segment()
+: <a class="el" href="classggl_1_1segment.html#186525605856fad4270057e760d6c020">ggl::segment< ConstOrNonConstPoint ></a>
+<li>segment_equal()
+: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#43851ccf0d363d5c0d8a55c520f8c2b8">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#a36b30cceae8d736831ff406707dfd2d">ggl::policies::relate::segments_de9im< S1, S2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#38fbcf5e765fdff2104b206978a793a9">ggl::policies::relate::segments_direction< S1, S2 ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#2fc7e51ab6b17055f8017b9bb276b086">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
+<li>segment_identifier()
+: <a class="el" href="structggl_1_1segment__identifier.html#eacab9f8a085d618b6259cc5233e65b0">ggl::segment_identifier</a>
+<li>segment_intersection_points()
+: <a class="el" href="structggl_1_1segment__intersection__points.html#ebb3f0ded51caefcde6f8e2fddb16c92">ggl::segment_intersection_points< P ></a>
+<li>segment_iterator()
+: <a class="el" href="structggl_1_1segment__iterator.html#64fa7cd0ce95c704f4a40bdc914cffbb">ggl::segment_iterator< Base, Point ></a>
+<li>set()
+: <a class="el" href="classggl_1_1point.html#f84fee80a5505841b275b1c3f9bc7ddf">ggl::point< T, D, C ></a>
+, <a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html#840ddd0e5e5719de54570e292d17cfb0">ggl::traits::access< ggl::detail::intersection::intersection_point< P >, Dimension ></a>
+<li>shift()
+: <a class="el" href="structggl_1_1strategy_1_1envelope_1_1shift_1_1shifted_3_01radian_01_4.html#190d1b26ee176ef44202ae326af8d1b4">ggl::strategy::envelope::shift::shifted< radian ></a>
+, <a class="el" href="structggl_1_1strategy_1_1envelope_1_1shift_1_1shifted_3_01degree_01_4.html#6dc89bfc493d2a8abca5e257729089c3">ggl::strategy::envelope::shift::shifted< degree ></a>
+<li>side()
+: <a class="el" href="structggl_1_1strategy_1_1side_1_1xy__side.html#b35869205a5eefee505f491bc1a53f4a">ggl::strategy::side::xy_side< P, PS ></a>
+<li>smaller()
+: <a class="el" href="structggl_1_1strategy_1_1compare_1_1euclidian.html#69e12a7cd92180445c9d6b293a808059">ggl::strategy::compare::euclidian< P, D ></a>
+<li>squared_value()
+: <a class="el" href="structggl_1_1cartesian__distance.html#4f02e39f538a1bc1551b3e22a08ca94b">ggl::cartesian_distance< T ></a>
+<li>state()
+: <a class="el" href="structggl_1_1strategy_1_1envelope_1_1grow__ll_1_1state.html#e7472309bf08955ee6e41f15f6124516">ggl::strategy::envelope::grow_ll< P, B >::state</a>
+, <a class="el" href="structggl_1_1strategy_1_1envelope_1_1combine__xy_1_1state.html#d5773c71a966e0389f8976f6a42bda98">ggl::strategy::envelope::combine_xy< P, B >::state</a>
+<li>svg_manipulator()
+: <a class="el" href="classggl_1_1svg__manipulator.html#f020707f84912c433297184f758dd908">ggl::svg_manipulator< G ></a>
+</ul>
+<h3><a class="anchor" name="index_t">- t -</a></h3><ul>
+<li>take_minmax()
+: <a class="el" href="structggl_1_1strategy_1_1envelope_1_1grow__ll_1_1state.html#889b7eeef1d373c2895b08a58b2eb386">ggl::strategy::envelope::grow_ll< P, B >::state</a>
+<li>touches()
+: <a class="el" href="structggl_1_1de9im.html#71d48a6fc35f6fd7544fb68396ea3457">ggl::de9im</a>
+<li>translate_transformer()
+: <a class="el" href="structggl_1_1strategy_1_1transform_1_1translate__transformer_3_01_p1_00_01_p2_00_012_00_012_01_4.html#84a76b9962a5f194a83f42a656b6ba3b">ggl::strategy::transform::translate_transformer< P1, P2, 2, 2 ></a>
+, <a class="el" href="structggl_1_1strategy_1_1transform_1_1translate__transformer_3_01_p1_00_01_p2_00_013_00_013_01_4.html#c58e40759cfd721966d862a348e9ddf0">ggl::strategy::transform::translate_transformer< P1, P2, 3, 3 ></a>
+</ul>
+<h3><a class="anchor" name="index_u">- u -</a></h3><ul>
+<li>ublas_transformer()
+: <a class="el" href="classggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_012_00_012_01_4.html#deabcfb90827d666568146854b29ae80">ggl::strategy::transform::ublas_transformer< P1, P2, 2, 2 ></a>
+, <a class="el" href="classggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_013_00_013_01_4.html#c6b30d2d246cd8e4ef439c10c563abba">ggl::strategy::transform::ublas_transformer< P1, P2, 3, 3 ></a>
+, <a class="el" href="structggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_013_00_012_01_4.html#a25611abeabb510caa9f38a68b60590e">ggl::strategy::transform::ublas_transformer< P1, P2, 3, 2 ></a>
+, <a class="el" href="classggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_012_00_012_01_4.html#6f4c5f93e056261368a62866dc1138bc">ggl::strategy::transform::ublas_transformer< P1, P2, 2, 2 ></a>
+</ul>
+<h3><a class="anchor" name="index_v">- v -</a></h3><ul>
+<li>very_small()
+: <a class="el" href="structggl_1_1cartesian__distance.html#26942eda96fb105ee48a9d7c0ae8631c">ggl::cartesian_distance< T ></a>
+</ul>
+<h3><a class="anchor" name="index_w">- w -</a></h3><ul>
+<li>what()
+: <a class="el" href="classggl_1_1centroid__exception.html#bff3b7df94389d48e50390a95dbbde7f">ggl::centroid_exception</a>
+<li>within()
+: <a class="el" href="structggl_1_1de9im.html#2e3559f5402284e4c7ec8382f5c6866d">ggl::de9im</a>
+</ul>
+<h3><a class="anchor" name="index_x">- x -</a></h3><ul>
+<li>x()
+: <a class="el" href="classggl_1_1point__xy.html#a7803d55e0758a659d618583b757b272">ggl::point_xy< T, C ></a>
+</ul>
+<h3><a class="anchor" name="index_y">- y -</a></h3><ul>
+<li>y()
+: <a class="el" href="classggl_1_1point__xy.html#a83e59f4d401b1a4c6f037979c57260f">ggl::point_xy< T, C ></a>
+</ul>
+<h3><a class="anchor" name="index_~">- ~ -</a></h3><ul>
+<li>~state()
+: <a class="el" href="structggl_1_1strategy_1_1envelope_1_1grow__ll_1_1state.html#942d57c72565b6b3dcd03fe213c4ad98">ggl::strategy::envelope::grow_ll< P, B >::state</a>
+</ul>
 </div>
 <hr size="1">
 <table width="100%">
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x62.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x62.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,135 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li class="current">Class Members</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>All</li>
-      <li class="current">Functions</li>
-      <li>Variables</li>
-      <li>Typedefs</li>
-      <li>Related Functions</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>a</li>
-      <li class="current">b</li>
-      <li>c</li>
-      <li>d</li>
-      <li>e</li>
-      <li>g</li>
-      <li>h</li>
-      <li>i</li>
-      <li>l</li>
-      <li>m</li>
-      <li>n</li>
-      <li>o</li>
-      <li>p</li>
-      <li>r</li>
-      <li>s</li>
-      <li>t</li>
-      <li>u</li>
-      <li>v</li>
-      <li>w</li>
-      <li>x</li>
-      <li>y</li>
-      <li>~</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
- 
-<p>
-<h3><a class="anchor" name="index_b">- b -</a></h3><ul>
-<li>base()
-: <a class="el" href="structggl_1_1segment__iterator.html#932c0212e2ba798d82d4484c2278150a">ggl::segment_iterator< Base, Point ></a>
-<li>BOOST_CONCEPT_ASSERT()
-: <a class="el" href="structggl_1_1multi__linestring.html#ad0eb4fd23482608a67e61f460615d17">ggl::multi_linestring< L, V, A ></a>
-, <a class="el" href="structggl_1_1multi__polygon.html#867921f0b7c2e26e176a2ded3cd2d05d">ggl::multi_polygon< P, V, A ></a>
-, <a class="el" href="structggl_1_1multi__point.html#e0dbad20fa00c02d4af5e8633937371c">ggl::multi_point< P, V, A ></a>
-<li>BOOST_CONCEPT_USAGE()
-: <a class="el" href="structggl_1_1concept_1_1_simplify_strategy.html#457fbf2fa1075f00c6d8090d47e1fc3d">ggl::concept::SimplifyStrategy< Strategy ></a>
-, <a class="el" href="structggl_1_1concept_1_1_point_segment_distance_strategy.html#91386bae305551b33feb8399bf3ea441">ggl::concept::PointSegmentDistanceStrategy< Strategy ></a>
-, <a class="el" href="structggl_1_1concept_1_1_point_distance_strategy.html#902301c0010222a56dd61cf69d2ee893">ggl::concept::PointDistanceStrategy< Strategy ></a>
-, <a class="el" href="structggl_1_1concept_1_1_const_segment.html#79691668dde1be67b7a497a6b1cd31ce">ggl::concept::ConstSegment< S ></a>
-, <a class="el" href="structggl_1_1concept_1_1_const_linestring.html#8154a02204ad8183d57420846e7b5449">ggl::concept::ConstLinestring< L ></a>
-, <a class="el" href="structggl_1_1concept_1_1_const_ring.html#1b6553b6ed0d5716bbc0044f7f29cfb2">ggl::concept::ConstRing< R ></a>
-, <a class="el" href="structggl_1_1concept_1_1_ring.html#eb5f0045673fa11f20e4b48856a4bf69">ggl::concept::Ring< R ></a>
-, <a class="el" href="structggl_1_1concept_1_1_const_polygon.html#efa7d199dbc8b2e17308e175fe4e33ca">ggl::concept::ConstPolygon< P ></a>
-, <a class="el" href="structggl_1_1concept_1_1_polygon.html#69581c3daae416341fbe72829f567278">ggl::concept::Polygon< P ></a>
-, <a class="el" href="structggl_1_1concept_1_1_segment.html#d2e340dff544a40ed257a1823dfd4749">ggl::concept::Segment< S ></a>
-, <a class="el" href="structggl_1_1concept_1_1_point.html#59ab6c36bc854b94ee2404d084605f7b">ggl::concept::Point< X ></a>
-, <a class="el" href="structggl_1_1concept_1_1_nsphere.html#f7a6ea630944b84202eed0a9de90cff4">ggl::concept::Nsphere< S ></a>
-, <a class="el" href="structggl_1_1concept_1_1_const_nsphere.html#cf6dfbdf9c9bceab4e3b481b95f1fb11">ggl::concept::ConstNsphere< S ></a>
-, <a class="el" href="structggl_1_1concept_1_1_box.html#6fa5d3378f1f34978c07d54abf69f753">ggl::concept::Box< B ></a>
-, <a class="el" href="structggl_1_1concept_1_1_linestring.html#93370176c63ec560ead3a1cd8c8c3693">ggl::concept::Linestring< L ></a>
-, <a class="el" href="structggl_1_1concept_1_1_const_point.html#4fa25bd423c491516e0453c2aad75a0a">ggl::concept::ConstPoint< X ></a>
-, <a class="el" href="structggl_1_1concept_1_1_const_box.html#0deab699f7cecb2854ba52635635405f">ggl::concept::ConstBox< B ></a>
-<li>box()
-: <a class="el" href="classggl_1_1box.html#40a32b03ef937f268b28716cd3a19ff4">ggl::box< P ></a>
-<li>by_spherical_excess()
-: <a class="el" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html#59b71eaa070bf9d8e68e4d4f8263e06e">ggl::strategy::area::by_spherical_excess< P ></a>
-</ul>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x63.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x63.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,157 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li class="current">Class Members</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>All</li>
-      <li class="current">Functions</li>
-      <li>Variables</li>
-      <li>Typedefs</li>
-      <li>Related Functions</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>a</li>
-      <li>b</li>
-      <li class="current">c</li>
-      <li>d</li>
-      <li>e</li>
-      <li>g</li>
-      <li>h</li>
-      <li>i</li>
-      <li>l</li>
-      <li>m</li>
-      <li>n</li>
-      <li>o</li>
-      <li>p</li>
-      <li>r</li>
-      <li>s</li>
-      <li>t</li>
-      <li>u</li>
-      <li>v</li>
-      <li>w</li>
-      <li>x</li>
-      <li>y</li>
-      <li>~</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
- 
-<p>
-<h3><a class="anchor" name="index_c">- c -</a></h3><ul>
-<li>cartesian_distance()
-: <a class="el" href="structggl_1_1cartesian__distance.html#441dcc3558edeb3bee94c667cfdfbd68">ggl::cartesian_distance< T ></a>
-<li>center()
-: <a class="el" href="classggl_1_1nsphere.html#3f6b59190ffcbc30cbcac55073915674">ggl::nsphere< P, T ></a>
-<li>centroid_exception()
-: <a class="el" href="classggl_1_1centroid__exception.html#60598437eea82fd35bffdbcac8d4b839">ggl::centroid_exception</a>
-<li>circular_iterator()
-: <a class="el" href="structggl_1_1circular__iterator.html#be1c3556eefbae4d3dee51925873bace">ggl::circular_iterator< Iterator ></a>
-<li>clear()
-: <a class="el" href="classggl_1_1polygon.html#45859e712d67f58e5813e87759892bdf">ggl::polygon< Point, PointList, RingList, ClockWise, PointAlloc, RingAlloc ></a>
-<li>clip_segment()
-: <a class="el" href="classggl_1_1strategy_1_1intersection_1_1liang__barsky.html#1a0456b13305792c70cd53b8571db1ef">ggl::strategy::intersection::liang_barsky< B, P ></a>
-<li>collinear_a_in_b()
-: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#f5c67f6d1fb6bc02730f9942c1a24829">ggl::policies::relate::segments_de9im< S1, S2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#a00a443f46cd557c282891c59cc683fb">ggl::policies::relate::segments_direction< S1, S2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#c6ae19aac0a85a1344c591ff2d4b0cbb">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#512bec33f0d13ffe8bdcaa7d2c6cd1ec">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
-<li>collinear_b_in_a()
-: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#f95f9b1c2e967c260d060c24aabf160f">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#e62d1ab6f50141636f04f5ae514e206b">ggl::policies::relate::segments_de9im< S1, S2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#298148121645c574e290081c7cd16995">ggl::policies::relate::segments_direction< S1, S2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#d963f9b96126549f9328bd702e17df0f">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
-<li>collinear_disjoint()
-: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#7e36a5671574be928045baec27dcfe0d">ggl::policies::relate::segments_de9im< S1, S2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#bac75a74d17cdac4e693be8c6a76cd60">ggl::policies::relate::segments_direction< S1, S2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#ac05de9fec4c0ff68b0c70e28f8be442">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#7e99a479fc3e9b45db7ab065305dccc6">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
-<li>collinear_inside()
-: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#fff966d91744b1fa0f0f33680d73df40">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
-<li>collinear_interior_boundary_intersect()
-: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#eb5b99875c3518bb6263b983041c4cf3">ggl::policies::relate::segments_de9im< S1, S2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#1fe7ee7acea8cc077bd98ca260d19bd9">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#036ae4e5762ae6b9f981e7b9d39f0b2a">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#80ce268792c7516aac1c546e8fbd9b24">ggl::policies::relate::segments_direction< S1, S2 ></a>
-<li>collinear_overlaps()
-: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#eb0ebf059d5e294fb18156aac93027cb">ggl::policies::relate::segments_direction< S1, S2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#798750f9c6e3ca554cef83e7ecbdb9cd">ggl::policies::relate::segments_de9im< S1, S2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fc31e769602ef50ec62d22ed157554b4">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#23e3bbadf0217d59dfd71d01ee690ca8">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
-<li>collinear_touch()
-: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#ac5d192f53e833ee39c48dc8954199d9">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#047b8574e173fd4ccb5f32dba6adb904">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#c9112222bb21c8bbc164008c9bdbfa24">ggl::policies::relate::segments_de9im< S1, S2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#46d3001d71d9684f5806911c68d5bff5">ggl::policies::relate::segments_direction< S1, S2 ></a>
-<li>contains()
-: <a class="el" href="structggl_1_1de9im.html#a15591d020883026f28f98f4071b80e5">ggl::de9im</a>
-<li>cross_track()
-: <a class="el" href="classggl_1_1strategy_1_1distance_1_1cross__track.html#06581a2187a083f85b27f19b97366549">ggl::strategy::distance::cross_track< P, S ></a>
-<li>crosses()
-: <a class="el" href="structggl_1_1de9im.html#8cbd11f530d85ec94d9f1a5eeb6f6da4">ggl::de9im</a>
-</ul>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x64.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x64.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,122 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li class="current">Class Members</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>All</li>
-      <li class="current">Functions</li>
-      <li>Variables</li>
-      <li>Typedefs</li>
-      <li>Related Functions</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>a</li>
-      <li>b</li>
-      <li>c</li>
-      <li class="current">d</li>
-      <li>e</li>
-      <li>g</li>
-      <li>h</li>
-      <li>i</li>
-      <li>l</li>
-      <li>m</li>
-      <li>n</li>
-      <li>o</li>
-      <li>p</li>
-      <li>r</li>
-      <li>s</li>
-      <li>t</li>
-      <li>u</li>
-      <li>v</li>
-      <li>w</li>
-      <li>x</li>
-      <li>y</li>
-      <li>~</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
- 
-<p>
-<h3><a class="anchor" name="index_d">- d -</a></h3><ul>
-<li>de9im()
-: <a class="el" href="structggl_1_1de9im.html#0e63fce9a0f98c1538e4fe41c5088680">ggl::de9im</a>
-<li>de9im_segment()
-: <a class="el" href="structggl_1_1de9im__segment.html#0fe3f361fef06047e7befa1efea254da">ggl::de9im_segment</a>
-<li>degenerate()
-: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#d68c9fa4dbac13be78e0f2d8a099ca6a">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#c38201cbc6a2788b300413a7f90103b2">ggl::policies::relate::segments_de9im< S1, S2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#3cf559644d63441e018d2a590559986e">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#6992882507d5abb3a649db55eeaa01eb">ggl::policies::relate::segments_direction< S1, S2 ></a>
-<li>direction_type()
-: <a class="el" href="structggl_1_1policies_1_1relate_1_1direction__type.html#5a1947e3f282bcfb2907fc42375789ef">ggl::policies::relate::direction_type</a>
-<li>disjoint()
-: <a class="el" href="structggl_1_1de9im.html#80e3fee3098017c06891ec7690d9154b">ggl::de9im</a>
-<li>dsv_manipulator()
-: <a class="el" href="classggl_1_1dsv__manipulator.html#5bbe82845f3e20b44d2b75cc8faebf43">ggl::dsv_manipulator< Geometry ></a>
-</ul>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x65.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x65.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,111 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li class="current">Class Members</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>All</li>
-      <li class="current">Functions</li>
-      <li>Variables</li>
-      <li>Typedefs</li>
-      <li>Related Functions</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>a</li>
-      <li>b</li>
-      <li>c</li>
-      <li>d</li>
-      <li class="current">e</li>
-      <li>g</li>
-      <li>h</li>
-      <li>i</li>
-      <li>l</li>
-      <li>m</li>
-      <li>n</li>
-      <li>o</li>
-      <li>p</li>
-      <li>r</li>
-      <li>s</li>
-      <li>t</li>
-      <li>u</li>
-      <li>v</li>
-      <li>w</li>
-      <li>x</li>
-      <li>y</li>
-      <li>~</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
- 
-<p>
-<h3><a class="anchor" name="index_e">- e -</a></h3><ul>
-<li>equals()
-: <a class="el" href="structggl_1_1de9im.html#01f365a488218068020af89113cd3745">ggl::de9im</a>
-<li>ever_circling_iterator()
-: <a class="el" href="structggl_1_1ever__circling__iterator.html#a3b3465a611c79f0b33bda06e92ba561">ggl::ever_circling_iterator< Iterator ></a>
-</ul>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x67.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x67.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,115 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li class="current">Class Members</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>All</li>
-      <li class="current">Functions</li>
-      <li>Variables</li>
-      <li>Typedefs</li>
-      <li>Related Functions</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>a</li>
-      <li>b</li>
-      <li>c</li>
-      <li>d</li>
-      <li>e</li>
-      <li class="current">g</li>
-      <li>h</li>
-      <li>i</li>
-      <li>l</li>
-      <li>m</li>
-      <li>n</li>
-      <li>o</li>
-      <li>p</li>
-      <li>r</li>
-      <li>s</li>
-      <li>t</li>
-      <li>u</li>
-      <li>v</li>
-      <li>w</li>
-      <li>x</li>
-      <li>y</li>
-      <li>~</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
- 
-<p>
-<h3><a class="anchor" name="index_g">- g -</a></h3><ul>
-<li>get()
-: <a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html#a25393c19c53fae14f51f6be484113b9">ggl::traits::access< ggl::detail::intersection::intersection_point< P > ></a>
-, <a class="el" href="classggl_1_1point.html#1feea795639ff3f2d985cc9ca32d2f9e">ggl::point< T, D, C ></a>
-, <a class="el" href="classggl_1_1strategy_1_1convex__hull_1_1graham.html#67876d356c1bf48171f46c116510f166">ggl::strategy::convex_hull::graham< P ></a>
-<li>graham()
-: <a class="el" href="classggl_1_1strategy_1_1convex__hull_1_1graham.html#00ccb1a05057f89cd1d557506e9eba1d">ggl::strategy::convex_hull::graham< P ></a>
-<li>grow()
-: <a class="el" href="structggl_1_1strategy_1_1envelope_1_1grow__ll_1_1state.html#6fc324d20c8daa360438eadd15c4d2ec">ggl::strategy::envelope::grow_ll< P, B >::state</a>
-</ul>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x68.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x68.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,111 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li class="current">Class Members</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>All</li>
-      <li class="current">Functions</li>
-      <li>Variables</li>
-      <li>Typedefs</li>
-      <li>Related Functions</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>a</li>
-      <li>b</li>
-      <li>c</li>
-      <li>d</li>
-      <li>e</li>
-      <li>g</li>
-      <li class="current">h</li>
-      <li>i</li>
-      <li>l</li>
-      <li>m</li>
-      <li>n</li>
-      <li>o</li>
-      <li>p</li>
-      <li>r</li>
-      <li>s</li>
-      <li>t</li>
-      <li>u</li>
-      <li>v</li>
-      <li>w</li>
-      <li>x</li>
-      <li>y</li>
-      <li>~</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
- 
-<p>
-<h3><a class="anchor" name="index_h">- h -</a></h3><ul>
-<li>handle_input()
-: <a class="el" href="classggl_1_1strategy_1_1convex__hull_1_1graham.html#886de91332db9c491dd1ea63c476a1c3">ggl::strategy::convex_hull::graham< P ></a>
-<li>haversine()
-: <a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#85ea8852c843a8950010229d0da4504a">ggl::strategy::distance::haversine< P1, P2 ></a>
-</ul>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x69.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x69.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,113 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li class="current">Class Members</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>All</li>
-      <li class="current">Functions</li>
-      <li>Variables</li>
-      <li>Typedefs</li>
-      <li>Related Functions</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>a</li>
-      <li>b</li>
-      <li>c</li>
-      <li>d</li>
-      <li>e</li>
-      <li>g</li>
-      <li>h</li>
-      <li class="current">i</li>
-      <li>l</li>
-      <li>m</li>
-      <li>n</li>
-      <li>o</li>
-      <li>p</li>
-      <li>r</li>
-      <li>s</li>
-      <li>t</li>
-      <li>u</li>
-      <li>v</li>
-      <li>w</li>
-      <li>x</li>
-      <li>y</li>
-      <li>~</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
- 
-<p>
-<h3><a class="anchor" name="index_i">- i -</a></h3><ul>
-<li>inners()
-: <a class="el" href="classggl_1_1polygon.html#5a8564eeeaa4f244e6f70ab10395a63f">ggl::polygon< Point, PointList, RingList, ClockWise, PointAlloc, RingAlloc ></a>
-<li>intersects()
-: <a class="el" href="structggl_1_1de9im.html#2c901db53a08be784689180a944a5762">ggl::de9im</a>
-<li>inverse_transformer()
-: <a class="el" href="structggl_1_1strategy_1_1transform_1_1inverse__transformer.html#4e116b3a139e47ecb7913e19ae0beb67">ggl::strategy::transform::inverse_transformer< P1, P2 ></a>
-</ul>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x6c.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x6c.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,111 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li class="current">Class Members</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>All</li>
-      <li class="current">Functions</li>
-      <li>Variables</li>
-      <li>Typedefs</li>
-      <li>Related Functions</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>a</li>
-      <li>b</li>
-      <li>c</li>
-      <li>d</li>
-      <li>e</li>
-      <li>g</li>
-      <li>h</li>
-      <li>i</li>
-      <li class="current">l</li>
-      <li>m</li>
-      <li>n</li>
-      <li>o</li>
-      <li>p</li>
-      <li>r</li>
-      <li>s</li>
-      <li>t</li>
-      <li>u</li>
-      <li>v</li>
-      <li>w</li>
-      <li>x</li>
-      <li>y</li>
-      <li>~</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
- 
-<p>
-<h3><a class="anchor" name="index_l">- l -</a></h3><ul>
-<li>larger()
-: <a class="el" href="structggl_1_1strategy_1_1compare_1_1euclidian.html#2348861bfb7eee153354bb81e633ea3a">ggl::strategy::compare::euclidian< P, D ></a>
-<li>ll_point_segment()
-: <a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#bd6a906cc460c9073ed833922392407c">ggl::strategy::distance::ll_point_segment< P, S ></a>
-</ul>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x6d.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x6d.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,119 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li class="current">Class Members</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>All</li>
-      <li class="current">Functions</li>
-      <li>Variables</li>
-      <li>Typedefs</li>
-      <li>Related Functions</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>a</li>
-      <li>b</li>
-      <li>c</li>
-      <li>d</li>
-      <li>e</li>
-      <li>g</li>
-      <li>h</li>
-      <li>i</li>
-      <li>l</li>
-      <li class="current">m</li>
-      <li>n</li>
-      <li>o</li>
-      <li>p</li>
-      <li>r</li>
-      <li>s</li>
-      <li>t</li>
-      <li>u</li>
-      <li>v</li>
-      <li>w</li>
-      <li>x</li>
-      <li>y</li>
-      <li>~</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
- 
-<p>
-<h3><a class="anchor" name="index_m">- m -</a></h3><ul>
-<li>map_transformer()
-: <a class="el" href="structggl_1_1strategy_1_1transform_1_1map__transformer.html#50548a182f22cf997edb2c1d4b249291">ggl::strategy::transform::map_transformer< P1, P2, Mirror, SameScale, Dimension1, Dimension2 ></a>
-<li>matrix()
-: <a class="el" href="classggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_013_00_013_01_4.html#26c463b304ea38f14d55fcadd4d439a8">ggl::strategy::transform::ublas_transformer< P1, P2, 3, 3 ></a>
-, <a class="el" href="classggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_012_00_012_01_4.html#6b9ff9fc83d6716a7d7aa46916340e45">ggl::strategy::transform::ublas_transformer< P1, P2, 2, 2 ></a>
-<li>max_corner()
-: <a class="el" href="classggl_1_1box.html#ad3ec53ea62b0bfa3cb897cea62ea0f0">ggl::box< P ></a>
-<li>min_corner()
-: <a class="el" href="classggl_1_1box.html#47f607c06a2a5432eac75d8bd5cf4a61">ggl::box< P ></a>
-<li>moveto()
-: <a class="el" href="structggl_1_1ever__circling__iterator.html#3bf51f4dfcb1dc644c707fc956551ba4">ggl::ever_circling_iterator< Iterator ></a>
-, <a class="el" href="structggl_1_1circular__iterator.html#7bf49b36a96ab752a363b620bef96d78">ggl::circular_iterator< Iterator ></a>
-</ul>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x6e.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x6e.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,109 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li class="current">Class Members</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>All</li>
-      <li class="current">Functions</li>
-      <li>Variables</li>
-      <li>Typedefs</li>
-      <li>Related Functions</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>a</li>
-      <li>b</li>
-      <li>c</li>
-      <li>d</li>
-      <li>e</li>
-      <li>g</li>
-      <li>h</li>
-      <li>i</li>
-      <li>l</li>
-      <li>m</li>
-      <li class="current">n</li>
-      <li>o</li>
-      <li>p</li>
-      <li>r</li>
-      <li>s</li>
-      <li>t</li>
-      <li>u</li>
-      <li>v</li>
-      <li>w</li>
-      <li>x</li>
-      <li>y</li>
-      <li>~</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
- 
-<p>
-<h3><a class="anchor" name="index_n">- n -</a></h3><ul>
-<li>nsphere()
-: <a class="el" href="classggl_1_1nsphere.html#43ce9d06cc8e93f8be4e886e6f468fd6">ggl::nsphere< P, T ></a>
-</ul>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x6f.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x6f.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,153 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li class="current">Class Members</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>All</li>
-      <li class="current">Functions</li>
-      <li>Variables</li>
-      <li>Typedefs</li>
-      <li>Related Functions</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>a</li>
-      <li>b</li>
-      <li>c</li>
-      <li>d</li>
-      <li>e</li>
-      <li>g</li>
-      <li>h</li>
-      <li>i</li>
-      <li>l</li>
-      <li>m</li>
-      <li>n</li>
-      <li class="current">o</li>
-      <li>p</li>
-      <li>r</li>
-      <li>s</li>
-      <li>t</li>
-      <li>u</li>
-      <li>v</li>
-      <li>w</li>
-      <li>x</li>
-      <li>y</li>
-      <li>~</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
- 
-<p>
-<h3><a class="anchor" name="index_o">- o -</a></h3><ul>
-<li>operator cast_type()
-: <a class="el" href="structggl_1_1cartesian__distance.html#0f7ef783e29548ca43f47bee6bca108e">ggl::cartesian_distance< T ></a>
-<li>operator()()
-: <a class="el" href="structggl_1_1strategy_1_1transform_1_1copy__direct.html#5f0d4eaa1ee3ca9b9719461ce322bd58">ggl::strategy::transform::copy_direct< P ></a>
-, <a class="el" href="structggl_1_1strategy_1_1transform_1_1degree__radian__vv.html#152a03b3270b0086b5c8d926fe77f090">ggl::strategy::transform::degree_radian_vv< P1, P2, F ></a>
-, <a class="el" href="structggl_1_1strategy_1_1transform_1_1from__cartesian__3__to__spherical__2.html#ec9a93c7157291c5f566158a3345fae7">ggl::strategy::transform::from_cartesian_3_to_spherical_2< P1, P2 ></a>
-, <a class="el" href="structggl_1_1strategy_1_1envelope_1_1combine__xy.html#229d31b6bae851fa277a9f857237c0ab">ggl::strategy::envelope::combine_xy< P, B ></a>
-, <a class="el" href="structggl_1_1strategy_1_1within_1_1franklin.html#bc36ab444ff56273a4536af3f3d4a281">ggl::strategy::within::franklin< P, PS ></a>
-, <a class="el" href="structggl_1_1strategy_1_1transform_1_1from__cartesian__3__to__spherical__3.html#ac8f345a72c9fd828dfbf2a2ba836aa4">ggl::strategy::transform::from_cartesian_3_to_spherical_3< P1, P2 ></a>
-, <a class="el" href="classggl_1_1strategy_1_1distance_1_1cross__track.html#64feaa8d5b329b87c74700e183edcf0b">ggl::strategy::distance::cross_track< P, S ></a>
-, <a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#4e6620683b788431de8942b0376af7af">ggl::strategy::distance::haversine< P1, P2 ></a>
-, <a class="el" href="structggl_1_1strategy_1_1transform_1_1degree__radian__vv__3.html#b92cb18180679ef616fa34ff8972f937">ggl::strategy::transform::degree_radian_vv_3< P1, P2, F ></a>
-, <a class="el" href="classggl_1_1strategy_1_1within_1_1winding.html#8ce0e3219bdded9943af7bc594a7f1be">ggl::strategy::within::winding< P, PS ></a>
-, <a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#cfc29c7f64c6136784283fab579fa970">ggl::strategy::distance::haversine< P1, P2 ></a>
-, <a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#ded28ff8067850eab6befbf3cec37098">ggl::strategy::distance::ll_point_segment< P, S ></a>
-, <a class="el" href="structggl_1_1less.html#d92a2c426998512de2eb68328c0292e5">ggl::less< P ></a>
-, <a class="el" href="classggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_013_00_013_01_4.html#b74d6180b2290096409861046c6b33da">ggl::strategy::transform::ublas_transformer< P1, P2, 3, 3 ></a>
-, <a class="el" href="classggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_012_00_012_01_4.html#1d0365284596b5f526aef0af1c388649">ggl::strategy::transform::ublas_transformer< P1, P2, 2, 2 ></a>
-, <a class="el" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#44a2feaa28620a60ce740cfad2374894">ggl::strategy::area::by_triangles< PS, CalculationType ></a>
-, <a class="el" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html#b05fba0d842e52d836c6e603045e8f7b">ggl::strategy::area::by_spherical_excess< P ></a>
-, <a class="el" href="structggl_1_1strategy_1_1envelope_1_1grow__ll.html#0a66b9fd4e7caf701344b9412cf0df5b">ggl::strategy::envelope::grow_ll< P, B ></a>
-, <a class="el" href="structggl_1_1strategy_1_1transform_1_1copy__per__coordinate.html#30c3026667a9846ecad20909e561a84e">ggl::strategy::transform::copy_per_coordinate< P1, P2 ></a>
-, <a class="el" href="structggl_1_1strategy_1_1transform_1_1from__spherical__2__to__cartesian__3.html#49e5776790f87fbe0cdd30e751906ba1">ggl::strategy::transform::from_spherical_2_to_cartesian_3< P1, P2 ></a>
-, <a class="el" href="classggl_1_1strategy_1_1centroid_1_1geolib1995.html#2b418413c02d508b0f570efff0102ff6">ggl::strategy::centroid::geolib1995< PC, PS ></a>
-, <a class="el" href="classggl_1_1strategy_1_1centroid_1_1bashein__detmer.html#328f86d7cd18dbaa435df19c924f98fe">ggl::strategy::centroid::bashein_detmer< CentroidPointType, SegmentPointType, CalculationType ></a>
-, <a class="el" href="structggl_1_1strategy_1_1transform_1_1from__spherical__3__to__cartesian__3.html#feed81c34e4f15791bb63fba042cf5e8">ggl::strategy::transform::from_spherical_3_to_cartesian_3< P1, P2 ></a>
-, <a class="el" href="structggl_1_1strategy_1_1distance_1_1pythagoras.html#da96ada6f45642ee8e773e660cf6fb1a">ggl::strategy::distance::pythagoras< P1, P2, CalculationType ></a>
-, <a class="el" href="structggl_1_1strategy_1_1distance_1_1xy__point__segment.html#7bbdf22f4985080ce60b2efcbf67352b">ggl::strategy::distance::xy_point_segment< P, Segment, Strategy ></a>
-<li>operator*()
-: <a class="el" href="structggl_1_1segment__iterator.html#5f87341660aa48a2807c5d1a1392f4c2">ggl::segment_iterator< Base, Point ></a>
-<li>operator++()
-: <a class="el" href="structggl_1_1segment__iterator.html#63c6edf091022da4e2afee8d395eeeaa">ggl::segment_iterator< Base, Point ></a>
-<li>operator->()
-: <a class="el" href="structggl_1_1segment__iterator.html#2b2dfc371bc599e81a16671a83fc16de">ggl::segment_iterator< Base, Point ></a>
-<li>operator<()
-: <a class="el" href="structggl_1_1cartesian__distance.html#51d4f3bf5567b0524530fa7bff0c7b66">ggl::cartesian_distance< T ></a>
-, <a class="el" href="structggl_1_1segment__identifier.html#f8c4506cd779593ac4e369b96927123c">ggl::segment_identifier</a>
-<li>operator==()
-: <a class="el" href="structggl_1_1segment__identifier.html#fcb85b5b91f3c3b9fb67ef8851a154eb">ggl::segment_identifier</a>
-, <a class="el" href="structggl_1_1cartesian__distance.html#951bdb772253f50194a754b7740f54b7">ggl::cartesian_distance< T ></a>
-<li>operator>()
-: <a class="el" href="structggl_1_1cartesian__distance.html#ceef956ddf49e24629a558758f44c8a6">ggl::cartesian_distance< T ></a>
-<li>outer()
-: <a class="el" href="classggl_1_1polygon.html#41e0bbcd9d466a41d8eecd6041f3c22c">ggl::polygon< Point, PointList, RingList, ClockWise, PointAlloc, RingAlloc ></a>
-<li>overlaps()
-: <a class="el" href="structggl_1_1de9im.html#b4bdbb38a70ad671ddd562dd0a41ebb5">ggl::de9im</a>
-</ul>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x70.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x70.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,116 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li class="current">Class Members</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>All</li>
-      <li class="current">Functions</li>
-      <li>Variables</li>
-      <li>Typedefs</li>
-      <li>Related Functions</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>a</li>
-      <li>b</li>
-      <li>c</li>
-      <li>d</li>
-      <li>e</li>
-      <li>g</li>
-      <li>h</li>
-      <li>i</li>
-      <li>l</li>
-      <li>m</li>
-      <li>n</li>
-      <li>o</li>
-      <li class="current">p</li>
-      <li>r</li>
-      <li>s</li>
-      <li>t</li>
-      <li>u</li>
-      <li>v</li>
-      <li>w</li>
-      <li>x</li>
-      <li>y</li>
-      <li>~</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
- 
-<p>
-<h3><a class="anchor" name="index_p">- p -</a></h3><ul>
-<li>parallel()
-: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#3887cd4e999e77056841445b19f82628">ggl::policies::relate::segments_de9im< S1, S2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#efcd33b8f82a96582cdd9b3ce3a05eb9">ggl::policies::relate::segments_direction< S1, S2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#970335edc3c8374463b8c0c4296c87f3">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#92164bfd70c2ff6e8d2778594d69b6da">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
-<li>point()
-: <a class="el" href="classggl_1_1point.html#526fb447a893414486fa85caa170cdbf">ggl::point< T, D, C ></a>
-<li>point_xy()
-: <a class="el" href="classggl_1_1point__xy.html#844ec61e1186e2bb423a26c01e9a72d6">ggl::point_xy< T, C ></a>
-</ul>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x72.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x72.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,116 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li class="current">Class Members</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>All</li>
-      <li class="current">Functions</li>
-      <li>Variables</li>
-      <li>Typedefs</li>
-      <li>Related Functions</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>a</li>
-      <li>b</li>
-      <li>c</li>
-      <li>d</li>
-      <li>e</li>
-      <li>g</li>
-      <li>h</li>
-      <li>i</li>
-      <li>l</li>
-      <li>m</li>
-      <li>n</li>
-      <li>o</li>
-      <li>p</li>
-      <li class="current">r</li>
-      <li>s</li>
-      <li>t</li>
-      <li>u</li>
-      <li>v</li>
-      <li>w</li>
-      <li>x</li>
-      <li>y</li>
-      <li>~</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
- 
-<p>
-<h3><a class="anchor" name="index_r">- r -</a></h3><ul>
-<li>radius()
-: <a class="el" href="classggl_1_1nsphere.html#45501ded4a12c89b95598ca131fc1caa">ggl::nsphere< P, T ></a>
-<li>rays_intersect()
-: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#f82c271b6352c8b4df60172f302a90b6">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#a31565e67fe3205615e88aef3015e550">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#32ede06f7881e263fc42a6cf02f72f68">ggl::policies::relate::segments_direction< S1, S2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#3aab22f63cc115f292a3ddbff5450f43">ggl::policies::relate::segments_de9im< S1, S2 ></a>
-<li>rotate_transformer()
-: <a class="el" href="structggl_1_1strategy_1_1transform_1_1rotate__transformer.html#a38f61b33b815f836459fa1cb7ba1011">ggl::strategy::transform::rotate_transformer< P1, P2, DegreeOrRadian ></a>
-</ul>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x73.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x73.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,144 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li class="current">Class Members</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>All</li>
-      <li class="current">Functions</li>
-      <li>Variables</li>
-      <li>Typedefs</li>
-      <li>Related Functions</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>a</li>
-      <li>b</li>
-      <li>c</li>
-      <li>d</li>
-      <li>e</li>
-      <li>g</li>
-      <li>h</li>
-      <li>i</li>
-      <li>l</li>
-      <li>m</li>
-      <li>n</li>
-      <li>o</li>
-      <li>p</li>
-      <li>r</li>
-      <li class="current">s</li>
-      <li>t</li>
-      <li>u</li>
-      <li>v</li>
-      <li>w</li>
-      <li>x</li>
-      <li>y</li>
-      <li>~</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
- 
-<p>
-<h3><a class="anchor" name="index_s">- s -</a></h3><ul>
-<li>scale_transformer()
-: <a class="el" href="structggl_1_1strategy_1_1transform_1_1scale__transformer_3_01_p1_00_01_p2_00_012_00_012_01_4.html#fd92b640f6aeb776138c3b076b714ae1">ggl::strategy::transform::scale_transformer< P1, P2, 2, 2 ></a>
-, <a class="el" href="structggl_1_1strategy_1_1transform_1_1scale__transformer_3_01_p1_00_01_p2_00_013_00_013_01_4.html#f63cba0849484a91687f20936bfa1761">ggl::strategy::transform::scale_transformer< P1, P2, 3, 3 ></a>
-<li>section()
-: <a class="el" href="structggl_1_1section.html#6b36770260c6a2c89a9a63fc641064c4">ggl::section< Box, DimensionCount ></a>
-<li>segment()
-: <a class="el" href="structggl_1_1segment.html#e8e37a9f4eeacb317a1ce971da6cbd87">ggl::segment< P ></a>
-<li>segment_equal()
-: <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#43851ccf0d363d5c0d8a55c520f8c2b8">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#a36b30cceae8d736831ff406707dfd2d">ggl::policies::relate::segments_de9im< S1, S2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#38fbcf5e765fdff2104b206978a793a9">ggl::policies::relate::segments_direction< S1, S2 ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#2fc7e51ab6b17055f8017b9bb276b086">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
-<li>segment_identifier()
-: <a class="el" href="structggl_1_1segment__identifier.html#eacab9f8a085d618b6259cc5233e65b0">ggl::segment_identifier</a>
-<li>segment_intersection_points()
-: <a class="el" href="structggl_1_1segment__intersection__points.html#ebb3f0ded51caefcde6f8e2fddb16c92">ggl::segment_intersection_points< P ></a>
-<li>segment_iterator()
-: <a class="el" href="structggl_1_1segment__iterator.html#64fa7cd0ce95c704f4a40bdc914cffbb">ggl::segment_iterator< Base, Point ></a>
-<li>set()
-: <a class="el" href="classggl_1_1point.html#f84fee80a5505841b275b1c3f9bc7ddf">ggl::point< T, D, C ></a>
-, <a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html#bce25b446714591183532373ceeaf1f7">ggl::traits::access< ggl::detail::intersection::intersection_point< P > ></a>
-<li>shift()
-: <a class="el" href="structggl_1_1strategy_1_1envelope_1_1shift_1_1shifted_3_01radian_01_4.html#190d1b26ee176ef44202ae326af8d1b4">ggl::strategy::envelope::shift::shifted< radian ></a>
-, <a class="el" href="structggl_1_1strategy_1_1envelope_1_1shift_1_1shifted_3_01degree_01_4.html#6dc89bfc493d2a8abca5e257729089c3">ggl::strategy::envelope::shift::shifted< degree ></a>
-<li>side()
-: <a class="el" href="structggl_1_1strategy_1_1side_1_1xy__side.html#b35869205a5eefee505f491bc1a53f4a">ggl::strategy::side::xy_side< P, PS ></a>
-<li>simplify()
-: <a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#dca55aa87f6d5b49df52585fa0f97add">ggl::strategy::simplify::douglas_peucker< R, O_IT, PSDS ></a>
-<li>smaller()
-: <a class="el" href="structggl_1_1strategy_1_1compare_1_1euclidian.html#69e12a7cd92180445c9d6b293a808059">ggl::strategy::compare::euclidian< P, D ></a>
-<li>squared_value()
-: <a class="el" href="structggl_1_1cartesian__distance.html#4f02e39f538a1bc1551b3e22a08ca94b">ggl::cartesian_distance< T ></a>
-<li>state()
-: <a class="el" href="structggl_1_1strategy_1_1envelope_1_1grow__ll_1_1state.html#e7472309bf08955ee6e41f15f6124516">ggl::strategy::envelope::grow_ll< P, B >::state</a>
-, <a class="el" href="structggl_1_1strategy_1_1envelope_1_1combine__xy_1_1state.html#d5773c71a966e0389f8976f6a42bda98">ggl::strategy::envelope::combine_xy< P, B >::state</a>
-<li>svg_manipulator()
-: <a class="el" href="classggl_1_1svg__manipulator.html#f020707f84912c433297184f758dd908">ggl::svg_manipulator< G ></a>
-</ul>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x74.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x74.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,114 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li class="current">Class Members</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>All</li>
-      <li class="current">Functions</li>
-      <li>Variables</li>
-      <li>Typedefs</li>
-      <li>Related Functions</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>a</li>
-      <li>b</li>
-      <li>c</li>
-      <li>d</li>
-      <li>e</li>
-      <li>g</li>
-      <li>h</li>
-      <li>i</li>
-      <li>l</li>
-      <li>m</li>
-      <li>n</li>
-      <li>o</li>
-      <li>p</li>
-      <li>r</li>
-      <li>s</li>
-      <li class="current">t</li>
-      <li>u</li>
-      <li>v</li>
-      <li>w</li>
-      <li>x</li>
-      <li>y</li>
-      <li>~</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
- 
-<p>
-<h3><a class="anchor" name="index_t">- t -</a></h3><ul>
-<li>take_minmax()
-: <a class="el" href="structggl_1_1strategy_1_1envelope_1_1grow__ll_1_1state.html#889b7eeef1d373c2895b08a58b2eb386">ggl::strategy::envelope::grow_ll< P, B >::state</a>
-<li>touches()
-: <a class="el" href="structggl_1_1de9im.html#71d48a6fc35f6fd7544fb68396ea3457">ggl::de9im</a>
-<li>translate_transformer()
-: <a class="el" href="structggl_1_1strategy_1_1transform_1_1translate__transformer_3_01_p1_00_01_p2_00_012_00_012_01_4.html#84a76b9962a5f194a83f42a656b6ba3b">ggl::strategy::transform::translate_transformer< P1, P2, 2, 2 ></a>
-, <a class="el" href="structggl_1_1strategy_1_1transform_1_1translate__transformer_3_01_p1_00_01_p2_00_013_00_013_01_4.html#c58e40759cfd721966d862a348e9ddf0">ggl::strategy::transform::translate_transformer< P1, P2, 3, 3 ></a>
-</ul>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x75.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x75.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,112 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li class="current">Class Members</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>All</li>
-      <li class="current">Functions</li>
-      <li>Variables</li>
-      <li>Typedefs</li>
-      <li>Related Functions</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>a</li>
-      <li>b</li>
-      <li>c</li>
-      <li>d</li>
-      <li>e</li>
-      <li>g</li>
-      <li>h</li>
-      <li>i</li>
-      <li>l</li>
-      <li>m</li>
-      <li>n</li>
-      <li>o</li>
-      <li>p</li>
-      <li>r</li>
-      <li>s</li>
-      <li>t</li>
-      <li class="current">u</li>
-      <li>v</li>
-      <li>w</li>
-      <li>x</li>
-      <li>y</li>
-      <li>~</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
- 
-<p>
-<h3><a class="anchor" name="index_u">- u -</a></h3><ul>
-<li>ublas_transformer()
-: <a class="el" href="classggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_012_00_012_01_4.html#deabcfb90827d666568146854b29ae80">ggl::strategy::transform::ublas_transformer< P1, P2, 2, 2 ></a>
-, <a class="el" href="classggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_013_00_013_01_4.html#c6b30d2d246cd8e4ef439c10c563abba">ggl::strategy::transform::ublas_transformer< P1, P2, 3, 3 ></a>
-, <a class="el" href="structggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_013_00_012_01_4.html#a25611abeabb510caa9f38a68b60590e">ggl::strategy::transform::ublas_transformer< P1, P2, 3, 2 ></a>
-, <a class="el" href="classggl_1_1strategy_1_1transform_1_1ublas__transformer_3_01_p1_00_01_p2_00_012_00_012_01_4.html#6f4c5f93e056261368a62866dc1138bc">ggl::strategy::transform::ublas_transformer< P1, P2, 2, 2 ></a>
-</ul>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x76.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x76.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,109 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li class="current">Class Members</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>All</li>
-      <li class="current">Functions</li>
-      <li>Variables</li>
-      <li>Typedefs</li>
-      <li>Related Functions</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>a</li>
-      <li>b</li>
-      <li>c</li>
-      <li>d</li>
-      <li>e</li>
-      <li>g</li>
-      <li>h</li>
-      <li>i</li>
-      <li>l</li>
-      <li>m</li>
-      <li>n</li>
-      <li>o</li>
-      <li>p</li>
-      <li>r</li>
-      <li>s</li>
-      <li>t</li>
-      <li>u</li>
-      <li class="current">v</li>
-      <li>w</li>
-      <li>x</li>
-      <li>y</li>
-      <li>~</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
- 
-<p>
-<h3><a class="anchor" name="index_v">- v -</a></h3><ul>
-<li>very_small()
-: <a class="el" href="structggl_1_1cartesian__distance.html#26942eda96fb105ee48a9d7c0ae8631c">ggl::cartesian_distance< T ></a>
-</ul>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x77.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x77.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,111 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li class="current">Class Members</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>All</li>
-      <li class="current">Functions</li>
-      <li>Variables</li>
-      <li>Typedefs</li>
-      <li>Related Functions</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>a</li>
-      <li>b</li>
-      <li>c</li>
-      <li>d</li>
-      <li>e</li>
-      <li>g</li>
-      <li>h</li>
-      <li>i</li>
-      <li>l</li>
-      <li>m</li>
-      <li>n</li>
-      <li>o</li>
-      <li>p</li>
-      <li>r</li>
-      <li>s</li>
-      <li>t</li>
-      <li>u</li>
-      <li>v</li>
-      <li class="current">w</li>
-      <li>x</li>
-      <li>y</li>
-      <li>~</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
- 
-<p>
-<h3><a class="anchor" name="index_w">- w -</a></h3><ul>
-<li>what()
-: <a class="el" href="classggl_1_1centroid__exception.html#bff3b7df94389d48e50390a95dbbde7f">ggl::centroid_exception</a>
-<li>within()
-: <a class="el" href="structggl_1_1de9im.html#2e3559f5402284e4c7ec8382f5c6866d">ggl::de9im</a>
-</ul>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x78.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x78.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,109 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li class="current">Class Members</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>All</li>
-      <li class="current">Functions</li>
-      <li>Variables</li>
-      <li>Typedefs</li>
-      <li>Related Functions</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>a</li>
-      <li>b</li>
-      <li>c</li>
-      <li>d</li>
-      <li>e</li>
-      <li>g</li>
-      <li>h</li>
-      <li>i</li>
-      <li>l</li>
-      <li>m</li>
-      <li>n</li>
-      <li>o</li>
-      <li>p</li>
-      <li>r</li>
-      <li>s</li>
-      <li>t</li>
-      <li>u</li>
-      <li>v</li>
-      <li>w</li>
-      <li class="current">x</li>
-      <li>y</li>
-      <li>~</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
- 
-<p>
-<h3><a class="anchor" name="index_x">- x -</a></h3><ul>
-<li>x()
-: <a class="el" href="classggl_1_1point__xy.html#a7803d55e0758a659d618583b757b272">ggl::point_xy< T, C ></a>
-</ul>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x79.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x79.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,109 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li class="current">Class Members</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>All</li>
-      <li class="current">Functions</li>
-      <li>Variables</li>
-      <li>Typedefs</li>
-      <li>Related Functions</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>a</li>
-      <li>b</li>
-      <li>c</li>
-      <li>d</li>
-      <li>e</li>
-      <li>g</li>
-      <li>h</li>
-      <li>i</li>
-      <li>l</li>
-      <li>m</li>
-      <li>n</li>
-      <li>o</li>
-      <li>p</li>
-      <li>r</li>
-      <li>s</li>
-      <li>t</li>
-      <li>u</li>
-      <li>v</li>
-      <li>w</li>
-      <li>x</li>
-      <li class="current">y</li>
-      <li>~</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
- 
-<p>
-<h3><a class="anchor" name="index_y">- y -</a></h3><ul>
-<li>y()
-: <a class="el" href="classggl_1_1point__xy.html#a83e59f4d401b1a4c6f037979c57260f">ggl::point_xy< T, C ></a>
-</ul>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x7e.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_func_0x7e.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,109 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li class="current">Class Members</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>All</li>
-      <li class="current">Functions</li>
-      <li>Variables</li>
-      <li>Typedefs</li>
-      <li>Related Functions</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>a</li>
-      <li>b</li>
-      <li>c</li>
-      <li>d</li>
-      <li>e</li>
-      <li>g</li>
-      <li>h</li>
-      <li>i</li>
-      <li>l</li>
-      <li>m</li>
-      <li>n</li>
-      <li>o</li>
-      <li>p</li>
-      <li>r</li>
-      <li>s</li>
-      <li>t</li>
-      <li>u</li>
-      <li>v</li>
-      <li>w</li>
-      <li>x</li>
-      <li>y</li>
-      <li class="current">~</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
- 
-<p>
-<h3><a class="anchor" name="index_~">- ~ -</a></h3><ul>
-<li>~state()
-: <a class="el" href="structggl_1_1strategy_1_1envelope_1_1grow__ll_1_1state.html#942d57c72565b6b3dcd03fe213c4ad98">ggl::strategy::envelope::grow_ll< P, B >::state</a>
-</ul>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_type.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_type.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_type.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -106,7 +106,7 @@
 <li>difference_type
 : <a class="el" href="structggl_1_1segment__iterator.html#e3d45134f345df9ec7aa89f8e2e95bdf">ggl::segment_iterator< Base, Point ></a>
 <li>distance_strategy_type
-: <a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#d9c2f3932590f7088e2cdf032c41458b">ggl::strategy::simplify::douglas_peucker< R, O_IT, PSDS ></a>
+: <a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#c1a18c53b124af6e3f49e61589eef15d">ggl::strategy::simplify::douglas_peucker< Point, PointDistanceStrategy ></a>
 </ul>
 <h3><a class="anchor" name="index_i">- i -</a></h3><ul>
 <li>inner_container_type
@@ -140,12 +140,11 @@
 , <a class="el" href="structggl_1_1strategy_1_1distance_1_1xy__point__segment.html#bb6549905e99ca61b13cfc644c91f672">ggl::strategy::distance::xy_point_segment< P, Segment, Strategy ></a>
 <li>point_type
 : <a class="el" href="structggl_1_1strategy_1_1distance_1_1xy__point__segment.html#cfb9d185bcc22815ec15d07389ad03b9">ggl::strategy::distance::xy_point_segment< P, Segment, Strategy ></a>
-, <a class="el" href="structggl_1_1strategy_1_1distance_1_1pythagoras.html#4a6f6649a2e25a6c584c29a5c6a3bee0">ggl::strategy::distance::pythagoras< P1, P2, CalculationType ></a>
 , <a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8ee0701ef57352296292047e3dcc3330">ggl::strategy::distance::haversine< P1, P2 ></a>
-, <a class="el" href="structggl_1_1segment.html#47f8bba55326d5ae988dc3a5a9f146c7">ggl::segment< P ></a>
-, <a class="el" href="classggl_1_1polygon.html#662c4458e3099e30097a3fc909d54941">ggl::polygon< Point, PointList, RingList, ClockWise, PointAlloc, RingAlloc ></a>
 , <a class="el" href="structggl_1_1area__result.html#d6428313802f153cd99b803ecde23872">ggl::area_result< Geometry ></a>
 , <a class="el" href="structggl_1_1segment__iterator.html#e388acc7d123761a41a0132ed0b19d29">ggl::segment_iterator< Base, Point ></a>
+, <a class="el" href="classggl_1_1polygon.html#662c4458e3099e30097a3fc909d54941">ggl::polygon< Point, PointList, RingList, ClockWise, PointAlloc, RingAlloc ></a>
+, <a class="el" href="structggl_1_1strategy_1_1distance_1_1pythagoras.html#4a6f6649a2e25a6c584c29a5c6a3bee0">ggl::strategy::distance::pythagoras< P1, P2, CalculationType ></a>
 , <a class="el" href="classggl_1_1strategy_1_1distance_1_1cross__track.html#08edd81bdb1f8a1296dbaebfc1ca3932">ggl::strategy::distance::cross_track< P, S ></a>
 <li>pointer
 : <a class="el" href="structggl_1_1segment__iterator.html#fe664c6678e12e841a1c0be1e77e53a0">ggl::segment_iterator< Base, Point ></a>
@@ -158,18 +157,16 @@
 <li>reference
 : <a class="el" href="structggl_1_1segment__iterator.html#71b04f78cf84d967d8d11ec092d54dcc">ggl::segment_iterator< Base, Point ></a>
 <li>return_type
-: <a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#f98549b351e37683bc7999d389f170f0">ggl::strategy::distance::ll_point_segment< P, S ></a>
-, <a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8fd848a2bbc5857c70fa6bce5ffac5d3">ggl::strategy::distance::haversine< P1, P2 ></a>
-, <a class="el" href="structggl_1_1area__result.html#4915057a85bc6a0c7292b3db1e4f33be">ggl::area_result< Geometry ></a>
+: <a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8fd848a2bbc5857c70fa6bce5ffac5d3">ggl::strategy::distance::haversine< P1, P2 ></a>
+, <a class="el" href="classggl_1_1strategy_1_1distance_1_1cross__track.html#e62cf6b01d4e29e04700ef45e0b15db3">ggl::strategy::distance::cross_track< P, S ></a>
 , <a class="el" href="structggl_1_1strategy_1_1distance_1_1xy__point__segment.html#a54175d4c138cd7319c8552f43824621">ggl::strategy::distance::xy_point_segment< P, Segment, Strategy ></a>
 , <a class="el" href="structggl_1_1strategy_1_1distance_1_1pythagoras.html#0e3ccd19d8d1c63360ba93be700c39a4">ggl::strategy::distance::pythagoras< P1, P2, CalculationType ></a>
-, <a class="el" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#f2ef55e9d5310d400a6e43a25f6c989d">ggl::strategy::area::by_triangles< PS, CalculationType ></a>
+, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#93b91d42efd81a1b75c016fe886bd3b4">ggl::policies::relate::segments_de9im< S1, S2 ></a>
 , <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">ggl::policies::relate::segments_tupled< Policy1, Policy2 ></a>
 , <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__intersection__points.html#6e36f163958d94ece083a97f0e3d659c">ggl::policies::relate::segments_intersection_points< S1, S2, ReturnType ></a>
-, <a class="el" href="classggl_1_1strategy_1_1distance_1_1cross__track.html#e62cf6b01d4e29e04700ef45e0b15db3">ggl::strategy::distance::cross_track< P, S ></a>
-, <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#93b91d42efd81a1b75c016fe886bd3b4">ggl::policies::relate::segments_de9im< S1, S2 ></a>
-, <a class="el" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html#9378e1ffdce5a34e96aa1ec3245ac718">ggl::strategy::area::by_spherical_excess< P ></a>
 , <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__direction.html#84941aff66a66a38844da63b99590932">ggl::policies::relate::segments_direction< S1, S2 ></a>
+, <a class="el" href="classggl_1_1strategy_1_1area_1_1by__triangles.html#f2ef55e9d5310d400a6e43a25f6c989d">ggl::strategy::area::by_triangles< PS, CalculationType ></a>
+, <a class="el" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html#9378e1ffdce5a34e96aa1ec3245ac718">ggl::strategy::area::by_spherical_excess< P ></a>
 <li>ring_type
 : <a class="el" href="classggl_1_1polygon.html#6d7c8304fda2d2f1850cf2eb994c441a">ggl::polygon< Point, PointList, RingList, ClockWise, PointAlloc, RingAlloc ></a>
 </ul>
@@ -222,6 +219,8 @@
 , <a class="el" href="structggl_1_1strategy__distance__segment.html#7f194ba200da0e6da72ac4e14a623a2f">ggl::strategy_distance_segment< CsTag1, CsTag2, Point, Segment ></a>
 , <a class="el" href="structggl_1_1strategy__distance.html#e95dff63729289b7ff265e4311fb54de">ggl::strategy_distance< T1, T2, P1, P2 ></a>
 , <a class="el" href="structggl_1_1strategy__area.html#1e4dc33e378ad99d5ba47807de230a3b">ggl::strategy_area< T, P ></a>
+, <a class="el" href="structggl_1_1length__result.html#804491e987771a8c50f977a209ee0599">ggl::length_result< Geometry ></a>
+, <a class="el" href="structggl_1_1area__result.html#6f843780140b8fa0ac0a4a36c4c00d81">ggl::area_result< Geometry ></a>
 , <a class="el" href="structggl_1_1vertex__iterator.html#5972cd0c976afccdc5a0a5400b998bdf">ggl::vertex_iterator< Geometry, IsConst ></a>
 , <a class="el" href="structggl_1_1traits_1_1tag_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html#02acc738dfcd073102d0c33b600556f9">ggl::traits::tag< ggl::detail::intersection::intersection_point< P > ></a>
 , <a class="el" href="structggl_1_1traits_1_1coordinate__system_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html#b77a740fb26f4ade02637e33c02ead68">ggl::traits::coordinate_system< ggl::detail::intersection::intersection_point< P > ></a>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_vars.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_vars.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/functions_vars.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -119,7 +119,7 @@
 </ul>
 <h3><a class="anchor" name="index_f">- f -</a></h3><ul>
 <li>first
-: <a class="el" href="structggl_1_1segment.html#3f8aa8a3542ebf499e4987ef3ccfd5b1">ggl::segment< P ></a>
+: <a class="el" href="classggl_1_1segment.html#76c7f18dd19699ccb7353137b8981c65">ggl::segment< ConstOrNonConstPoint ></a>
 </ul>
 <h3><a class="anchor" name="index_h">- h -</a></h3><ul>
 <li>has_west
@@ -195,7 +195,7 @@
 </ul>
 <h3><a class="anchor" name="index_s">- s -</a></h3><ul>
 <li>second
-: <a class="el" href="structggl_1_1segment.html#e5aea8fdfbd0e0dece9b227a8a5cec33">ggl::segment< P ></a>
+: <a class="el" href="classggl_1_1segment.html#543b3806df8d74067157587323917a71">ggl::segment< ConstOrNonConstPoint ></a>
 <li>second_larger
 : <a class="el" href="structggl_1_1select__most__precise.html#0d0774307858675158899fb96abd12ec">ggl::select_most_precise< T1, T2 ></a>
 <li>segment_index
@@ -205,7 +205,7 @@
 </ul>
 <h3><a class="anchor" name="index_v">- v -</a></h3><ul>
 <li>value
-: <a class="el" href="structggl_1_1traits_1_1use__std.html#17f62fd601472a4c970adeda2281f145">ggl::traits::use_std< G ></a>
+: <a class="el" href="structggl_1_1traits_1_1use__std.html#53e09180303edd2ec2735f749db2305d">ggl::traits::use_std< Geometry ></a>
 , <a class="el" href="structggl_1_1sections.html#1c9f89074b8fa60cc7c6e11ff323093e">ggl::sections< Box, DimensionCount ></a>
 , <a class="el" href="structggl_1_1point__order.html#2ec9d56b715d2ecd6e6cb55434d40258">ggl::point_order< Geometry ></a>
 , <a class="el" href="structggl_1_1traits_1_1point__order.html#e9e3962e6119b95889eaa2b810395037">ggl::traits::point_order< G ></a>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/get__intersection__points_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/get__intersection__points_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/get__intersection__points_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -343,8 +343,8 @@
 <a name="l00301"></a>00301 <span class="keyword">private</span> :
 <a name="l00302"></a>00302     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">ggl::point_type<Geometry1>::type</a> point1_type;
 <a name="l00303"></a>00303     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">ggl::point_type<Geometry2>::type</a> point2_type;
-<a name="l00304"></a>00304     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">ggl::segment<const point1_type></a> segment1_type;
-<a name="l00305"></a>00305     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">ggl::segment<const point2_type></a> segment2_type;
+<a name="l00304"></a>00304     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">ggl::segment<const point1_type></a> segment1_type;
+<a name="l00305"></a>00305     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">ggl::segment<const point2_type></a> segment2_type;
 <a name="l00306"></a>00306 
 <a name="l00307"></a>00307 
 <a name="l00308"></a>00308     <span class="keyword">template</span> <<span class="keywordtype">size_t</span> Dim, <span class="keyword">typename</span> Po<span class="keywordtype">int</span>, <span class="keyword">typename</span> Box>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__access.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__access.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__access.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -82,7 +82,7 @@
 <tr><td class="memTemplParams" nowrap colspan="2">template<std::size_t I, std::size_t D, typename G > </td></tr>
 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">coordinate_type< G >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__access.html#gd3c007fcbae837d56d13aa77ed03f920">ggl::get</a> (const G &geometry, detail::signature_getset_index_dimension *dummy=0)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">get a coordinate value of a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> / <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>  <br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">get a coordinate value of a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> / <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>  <br></td></tr>
 <tr><td class="memTemplParams" nowrap colspan="2">template<std::size_t D, typename G > </td></tr>
 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">coordinate_type< G >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__access.html#g6cf833a7f9622af2fc05fd94aa61153f">ggl::get</a> (const G &geometry, detail::signature_getset_dimension *dummy=0)</td></tr>
 
@@ -130,7 +130,7 @@
 <tr><td class="memTemplParams" nowrap colspan="2">template<std::size_t I, std::size_t D, typename G > </td></tr>
 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__access.html#g6ced3f6383c5e664984c54a36a1d78a2">ggl::set</a> (G &geometry, const typename coordinate_type< G >::type &value, detail::signature_getset_index_dimension *dummy=0)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">assign a coordinate value of a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> / <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>  <br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">assign a coordinate value of a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> / <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>  <br></td></tr>
 <tr><td class="memTemplParams" nowrap colspan="2">template<std::size_t D, typename G > </td></tr>
 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__access.html#g411ad2eab588e3fa0f0a3d35c79cbb4a">ggl::set</a> (G &geometry, const typename coordinate_type< G >::type &value, detail::signature_getset_dimension *dummy=0)</td></tr>
 
@@ -199,7 +199,7 @@
 </dl>
 <dl compact><dt><b>Examples: </b></dt><dd>
 <a class="el" href="07__graph__route__example_8cpp-example.html#a5">07_graph_route_example.cpp</a>.</dl>
-<p>Definition at line <a class="el" href="access_8hpp_source.html#l00182">182</a> of file <a class="el" href="access_8hpp_source.html">access.hpp</a>.</p>
+<p>Definition at line <a class="el" href="access_8hpp_source.html#l00209">209</a> of file <a class="el" href="access_8hpp_source.html">access.hpp</a>.</p>
 
 </div>
 </div><p>
@@ -253,7 +253,7 @@
   </table>
 </dl>
 
-<p>Definition at line <a class="el" href="access_8hpp_source.html#l00211">211</a> of file <a class="el" href="access_8hpp_source.html">access.hpp</a>.</p>
+<p>Definition at line <a class="el" href="access_8hpp_source.html#l00238">238</a> of file <a class="el" href="access_8hpp_source.html">access.hpp</a>.</p>
 
 </div>
 </div><p>
@@ -285,12 +285,12 @@
 <div class="memdoc">
 
 <p>
-get a coordinate value of a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> / <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> 
+get a coordinate value of a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> / <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> 
 <p>
 <dl class="return" compact><dt><b>Returns:</b></dt><dd>coordinate value</dd></dl>
 <dl compact><dt><b>Template Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>I</em> </td><td>index, for boxes: min_corner or max_corner. For <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>: 0 / 1 </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>I</em> </td><td>index, for boxes: min_corner or max_corner. For <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>: 0 / 1 </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>D</em> </td><td><a class="el" href="structggl_1_1dimension.html" title="Meta-function which defines coordinate dimensions, i.e. the number of axes of any...">dimension</a> </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>G</em> </td><td>geometry </td></tr>
   </table>
@@ -302,7 +302,7 @@
   </table>
 </dl>
 
-<p>Definition at line <a class="el" href="access_8hpp_source.html#l00242">242</a> of file <a class="el" href="access_8hpp_source.html">access.hpp</a>.</p>
+<p>Definition at line <a class="el" href="access_8hpp_source.html#l00269">269</a> of file <a class="el" href="access_8hpp_source.html">access.hpp</a>.</p>
 
 </div>
 </div><p>
@@ -340,11 +340,11 @@
 <div class="memdoc">
 
 <p>
-assign a coordinate value of a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> / <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> 
+assign a coordinate value of a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> / <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> 
 <p>
 <dl compact><dt><b>Template Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>I</em> </td><td>index, for boxes: min_corner or max_corner. For <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>: 0 / 1 </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>I</em> </td><td>index, for boxes: min_corner or max_corner. For <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>: 0 / 1 </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>D</em> </td><td><a class="el" href="structggl_1_1dimension.html" title="Meta-function which defines coordinate dimensions, i.e. the number of axes of any...">dimension</a> </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>G</em> </td><td>geometry </td></tr>
   </table>
@@ -357,7 +357,7 @@
   </table>
 </dl>
 
-<p>Definition at line <a class="el" href="access_8hpp_source.html#l00272">272</a> of file <a class="el" href="access_8hpp_source.html">access.hpp</a>.</p>
+<p>Definition at line <a class="el" href="access_8hpp_source.html#l00299">299</a> of file <a class="el" href="access_8hpp_source.html">access.hpp</a>.</p>
 
 </div>
 </div><p>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__area.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__area.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__area.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -39,6 +39,9 @@
 <h1>area calculation</h1><table border="0" cellpadding="0" cellspacing="0">
 <tr><td></td></tr>
 <tr><td colspan="2"><br><h2>Classes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1area__result.html">ggl::area_result< Geometry ></a></td></tr>
+
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Meta-function defining return type of area function.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1strategy__area.html">ggl::strategy_area< T, P ></a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Traits class binding an area <a class="el" href="namespaceggl_1_1strategy.html">strategy</a> to a coordinate system.  More...<br></td></tr>
@@ -48,10 +51,9 @@
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate area of a geometry using a <a class="el" href="namespaceggl_1_1strategy.html">strategy</a>.  <br></td></tr>
 <tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">area_result< Geometry ><br class="typebreak">
-::return_type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3">ggl::area</a> (Geometry const &geometry)</td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">area_result< Geometry >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d">ggl::area</a> (Geometry const &geometry)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate area of a geometry.  <br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate area of a geometry.  <br></td></tr>
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
 <dl class="user" compact><dt><b>Performance</b></dt><dd>2776 * 1000 area calculations are done in 0.11 seconds (other libraries: 0.125 seconds, 0.125 seconds, 0.5 seconds)</dd></dl>
@@ -61,7 +63,7 @@
     <a class="code" href="classggl_1_1polygon.html" title="The polygon contains an outer ring and zero or more inner rings.">ggl::polygon<ggl::point_xy<double></a> > poly;
     ggl::read_wkt(<span class="stringliteral">"POLYGON((0 0,0 7,4 2,2 0,0 0))"</span>, poly);
     std::cout << <span class="stringliteral">"Polygon area is "</span>
-        << <a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">ggl::area</a>(poly)
+        << <a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">ggl::area</a>(poly)
         << <span class="stringliteral">" square units"</span> << std::endl;
 
     <span class="comment">/*</span>
@@ -75,14 +77,14 @@
 }
 </pre></div> </dd></dl>
 <hr><h2>Function Documentation</h2>
-<a class="anchor" name="g3ebfdefe9c756498730b6d93b83338b3"></a><!-- doxytag: member="ggl::area" ref="g3ebfdefe9c756498730b6d93b83338b3" args="(Geometry const &geometry)" -->
+<a class="anchor" name="gaffb471f2ef6dd4842563e533094fa0d"></a><!-- doxytag: member="ggl::area" ref="gaffb471f2ef6dd4842563e533094fa0d" args="(Geometry const &geometry)" -->
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
 template<typename Geometry > </div>
       <table class="memname">
         <tr>
-          <td class="memname">area_result<Geometry>::return_type ggl::area           </td>
+          <td class="memname">area_result<Geometry>::type ggl::area           </td>
           <td>(</td>
           <td class="paramtype">Geometry const & </td>
           <td class="paramname"> <em>geometry</em>          </td>
@@ -104,7 +106,7 @@
 <dl class="return" compact><dt><b>Returns:</b></dt><dd>the area </dd></dl>
 <dl compact><dt><b>Examples: </b></dt><dd>
 <a class="el" href="03__polygon__example_8cpp-example.html#a6">03_polygon_example.cpp</a>, <a class="el" href="c04__a__custom__triangle__example_8cpp-example.html#a2">c04_a_custom_triangle_example.cpp</a>, <a class="el" href="c04__b__custom__triangle__example_8cpp-example.html#a1">c04_b_custom_triangle_example.cpp</a>, and <a class="el" href="x01__qt__example_8cpp-example.html#a2">x01_qt_example.cpp</a>.</dl>
-<p>Definition at line <a class="el" href="algorithms_2area_8hpp_source.html#l00254">254</a> of file <a class="el" href="algorithms_2area_8hpp_source.html">area.hpp</a>.</p>
+<p>Definition at line <a class="el" href="algorithms_2area_8hpp_source.html#l00226">226</a> of file <a class="el" href="algorithms_2area_8hpp_source.html">area.hpp</a>.</p>
 
 </div>
 </div><p>
@@ -146,7 +148,7 @@
 </dl>
 <dl class="return" compact><dt><b>Returns:</b></dt><dd>the area </dd></dl>
 
-<p>Definition at line <a class="el" href="algorithms_2area_8hpp_source.html#l00277">277</a> of file <a class="el" href="algorithms_2area_8hpp_source.html">area.hpp</a>.</p>
+<p>Definition at line <a class="el" href="algorithms_2area_8hpp_source.html#l00249">249</a> of file <a class="el" href="algorithms_2area_8hpp_source.html">area.hpp</a>.</p>
 
 </div>
 </div><p>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__concepts.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__concepts.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__concepts.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -86,7 +86,7 @@
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Checks (linear) <a class="el" href="structggl_1_1concept_1_1_ring.html" title="Checks (linear) Ring concept, using Boost Concept Check Library and metafunctions...">Ring</a> <a class="el" href="namespaceggl_1_1concept.html">concept</a>, using Boost Concept Check Library and metafunctions.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1concept_1_1_segment.html">ggl::concept::Segment< S ></a></td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Checks <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> <a class="el" href="namespaceggl_1_1concept.html">concept</a>, using Boost Concept Check Library and metafunctions.  More...<br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Checks <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> <a class="el" href="namespaceggl_1_1concept.html">concept</a>, using Boost Concept Check Library and metafunctions.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1concept_1_1_simplify_strategy.html">ggl::concept::SimplifyStrategy< Strategy ></a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Checks <a class="el" href="namespaceggl_1_1strategy.html">strategy</a> for simplify.  More...<br></td></tr>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__distance.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__distance.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__distance.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -47,19 +47,16 @@
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Shortcut to define return type of distance <a class="el" href="namespaceggl_1_1strategy.html">strategy</a>.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1distance_1_1cross__track.html">ggl::strategy::distance::cross_track< P, S ></a></td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Strategy functor for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> calculation.  More...<br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Strategy functor for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> calculation.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html">ggl::strategy::distance::haversine< P1, P2 ></a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Distance calculation for spherical coordinates on a perfect sphere using <a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html" title="Distance calculation for spherical coordinates on a perfect sphere using haversine...">haversine</a>.  More...<br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html">ggl::strategy::distance::ll_point_segment< P, S ></a></td></tr>
-
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Strategy functor for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> calculation.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1strategy_1_1distance_1_1pythagoras.html">ggl::strategy::distance::pythagoras< P1, P2, CalculationType ></a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Strategy for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a>: <a class="el" href="structggl_1_1strategy_1_1distance_1_1pythagoras.html" title="Strategy for distance point to point: pythagoras.">pythagoras</a>.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1strategy_1_1distance_1_1xy__point__segment.html">ggl::strategy::distance::xy_point_segment< P, Segment, Strategy ></a></td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Strategy for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>.  More...<br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Strategy for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1strategy__distance.html">ggl::strategy_distance< T1, T2, P1, P2 ></a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Traits class binding a distance <a class="el" href="namespaceggl_1_1strategy.html">strategy</a> to a (possibly two) coordinate system(s).  More...<br></td></tr>
@@ -271,7 +268,7 @@
 </dl>
 <dl class="return" compact><dt><b>Returns:</b></dt><dd>the distance result </dd></dl>
 
-<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00242">242</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
+<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00254">254</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
 
 </div>
 </div><p>
@@ -307,7 +304,7 @@
   </table>
 </dl>
 
-<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00257">257</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
+<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00269">269</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
 
 </div>
 </div><p>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__length.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__length.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__length.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -38,36 +38,40 @@
 <div class="contents">
 <h1>length calculation</h1><table border="0" cellpadding="0" cellspacing="0">
 <tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1length__result.html">ggl::length_result< Geometry ></a></td></tr>
+
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Meta-function defining return type of length function.  More...<br></td></tr>
 <tr><td colspan="2"><br><h2>Functions</h2></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename G , typename S > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">double </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__length.html#ge20f9cdc37ebded2be03934edb05c3dd">ggl::length</a> (G const &geometry, S const &strategy)</td></tr>
+<tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry , typename Strategy > </td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">length_result< Geometry >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__length.html#gc25f493cf56a02b9f0077e18a444bed8">ggl::length</a> (Geometry const &geometry, Strategy const &strategy)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate length of a geometry.  <br></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename G > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">double </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa">ggl::length</a> (const G &geometry)</td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate length of a geometry.  <br></td></tr>
+<tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry > </td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">length_result< Geometry >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf">ggl::length</a> (Geometry const &geometry)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate length of a geometry.  <br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate length of a geometry.  <br></td></tr>
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
 The length algorithm is implemented for the linestring and the multi_linestring geometry and results in the length of the linestring. If the points of a linestring have coordinates expressed in kilometers, the length of the line is expressed in kilometers as well. <dl class="user" compact><dt><b>Example:</b></dt><dd>Example showing length calculation  <div class="fragment"><pre class="fragment">{
     <a class="code" href="classggl_1_1linestring.html" title="A linestring (named so by OGC) is a collection (default a vector) of points.">ggl::linestring<ggl::point_xy<double></a> > line;
     ggl::read_wkt(<span class="stringliteral">"linestring(0 0,1 1,4 8,3 2)"</span>, line);
     std::cout << <span class="stringliteral">"linestring length is "</span>
-        << <a class="code" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa" title="Calculate length of a geometry.">ggl::length</a>(line)
+        << <a class="code" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf" title="Calculate length of a geometry.">ggl::length</a>(line)
         << <span class="stringliteral">" units"</span> << std::endl;
 }
 </pre></div> </dd></dl>
 <hr><h2>Function Documentation</h2>
-<a class="anchor" name="g7e3572634111ae0252a474a7f435c5aa"></a><!-- doxytag: member="ggl::length" ref="g7e3572634111ae0252a474a7f435c5aa" args="(const G &geometry)" -->
+<a class="anchor" name="g3ff05ea6b83363ce847770d3abe156bf"></a><!-- doxytag: member="ggl::length" ref="g3ff05ea6b83363ce847770d3abe156bf" args="(Geometry const &geometry)" -->
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
-template<typename G > </div>
+template<typename Geometry > </div>
       <table class="memname">
         <tr>
-          <td class="memname">double ggl::length           </td>
+          <td class="memname">length_result<Geometry>::type ggl::length           </td>
           <td>(</td>
-          <td class="paramtype">const G & </td>
+          <td class="paramtype">Geometry const & </td>
           <td class="paramname"> <em>geometry</em>          </td>
           <td> ) </td>
           <td></td>
@@ -88,32 +92,32 @@
     std::vector<ggl::point_xy<double> > line;
     ggl::read_wkt<ggl::point_xy<double> >(<span class="stringliteral">"linestring(0 0,1 1,4 8,3 2)"</span>, std::back_inserter(line));
     std::cout << <span class="stringliteral">"linestring length is "</span>
-        << <a class="code" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa" title="Calculate length of a geometry.">ggl::length</a>(line)
+        << <a class="code" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf" title="Calculate length of a geometry.">ggl::length</a>(line)
         << <span class="stringliteral">" units"</span> << std::endl;
 }
 </pre></div> </dd></dl>
 <dl compact><dt><b>Examples: </b></dt><dd>
 <a class="el" href="02__linestring__example_8cpp-example.html#a8">02_linestring_example.cpp</a>, <a class="el" href="07__graph__route__example_8cpp-example.html#a4">07_graph_route_example.cpp</a>, and <a class="el" href="c05__custom__point__pointer__example_8cpp-example.html#a1">c05_custom_point_pointer_example.cpp</a>.</dl>
-<p>Definition at line <a class="el" href="algorithms_2length_8hpp_source.html#l00139">139</a> of file <a class="el" href="algorithms_2length_8hpp_source.html">length.hpp</a>.</p>
+<p>Definition at line <a class="el" href="algorithms_2length_8hpp_source.html#l00147">147</a> of file <a class="el" href="algorithms_2length_8hpp_source.html">length.hpp</a>.</p>
 
 </div>
 </div><p>
-<a class="anchor" name="ge20f9cdc37ebded2be03934edb05c3dd"></a><!-- doxytag: member="ggl::length" ref="ge20f9cdc37ebded2be03934edb05c3dd" args="(G const &geometry, S const &strategy)" -->
+<a class="anchor" name="gc25f493cf56a02b9f0077e18a444bed8"></a><!-- doxytag: member="ggl::length" ref="gc25f493cf56a02b9f0077e18a444bed8" args="(Geometry const &geometry, Strategy const &strategy)" -->
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
-template<typename G , typename S > </div>
+template<typename Geometry , typename Strategy > </div>
       <table class="memname">
         <tr>
-          <td class="memname">double ggl::length           </td>
+          <td class="memname">length_result<Geometry>::type ggl::length           </td>
           <td>(</td>
-          <td class="paramtype">G const & </td>
+          <td class="paramtype">Geometry const & </td>
           <td class="paramname"> <em>geometry</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">S const & </td>
+          <td class="paramtype">Strategy const & </td>
           <td class="paramname"> <em>strategy</em></td><td> </td>
         </tr>
         <tr>
@@ -149,7 +153,7 @@
 }
 </pre></div> </dd></dl>
 
-<p>Definition at line <a class="el" href="algorithms_2length_8hpp_source.html#l00174">174</a> of file <a class="el" href="algorithms_2length_8hpp_source.html">length.hpp</a>.</p>
+<p>Definition at line <a class="el" href="algorithms_2length_8hpp_source.html#l00183">183</a> of file <a class="el" href="algorithms_2length_8hpp_source.html">length.hpp</a>.</p>
 
 </div>
 </div><p>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__loop.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__loop.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__loop.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -39,22 +39,22 @@
 <h1>loops and for-each functionality</h1><table border="0" cellpadding="0" cellspacing="0">
 <tr><td></td></tr>
 <tr><td colspan="2"><br><h2>Functions</h2></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename G , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#gbce8332305fc715d4587e7d78c21e4aa">ggl::for_each_point</a> (G &geometry, F f)</td></tr>
+<tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry , typename Functor > </td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Functor </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#g66bf40f0ee4dc883d9d3b621aeb2e81d">ggl::for_each_point</a> (Geometry &geometry, Functor f)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for geometry.  <br></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename G , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a">ggl::for_each_point</a> (G const &geometry, F f)</td></tr>
-
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for geometry.  <br></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename G , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#gf3b5b3004fc802700882f9f4a184564a">ggl::for_each_segment</a> (G &geometry, F f)</td></tr>
-
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for segments on linestrings, rings, polygons, ...  <br></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename G , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#gefcad88c6ee4e308e1003eff7752b3f3">ggl::for_each_segment</a> (const G &geometry, F f)</td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for geometry.  <br></td></tr>
+<tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry , typename Functor > </td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Functor </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#g0cdb7f23bf7395ba3f385e9cf01a601f">ggl::for_each_point</a> (Geometry const &geometry, Functor f)</td></tr>
+
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for geometry.  <br></td></tr>
+<tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry , typename Functor > </td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Functor </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#g529f5655aa7702e9f143263b484ff91b">ggl::for_each_segment</a> (Geometry &geometry, Functor f)</td></tr>
+
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for segments on linestrings, rings, polygons, ...  <br></td></tr>
+<tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry , typename Functor > </td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Functor </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#ge8453eab0e9db146184d7ccef687a33e">ggl::for_each_segment</a> (Geometry const &geometry, Functor f)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for segments on linestrings, rings, polygons, ...  <br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for segments on linestrings, rings, polygons, ...  <br></td></tr>
 <tr><td class="memTemplParams" nowrap colspan="2">template<typename R , typename F , typename S > </td></tr>
 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#g1ff95a74f261e15dfa714146bdcbf23f">ggl::loop</a> (R const &range, F const &functor, S &state)</td></tr>
 
@@ -62,22 +62,22 @@
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
 There are several algorithms provided which walk through the points or segments of linestrings and polygons. They are called for_each_point, for_each_segment, after the standard library, and <b>loop</b> which is more adapted and of which the functor could break out if necessary. Of the for_each algorithms there is a <b>const</b> and a non-const version provided. <hr><h2>Function Documentation</h2>
-<a class="anchor" name="g71cb52ab6490726f9030b464aa2f5e8a"></a><!-- doxytag: member="ggl::for_each_point" ref="g71cb52ab6490726f9030b464aa2f5e8a" args="(G const &geometry, F f)" -->
+<a class="anchor" name="g0cdb7f23bf7395ba3f385e9cf01a601f"></a><!-- doxytag: member="ggl::for_each_point" ref="g0cdb7f23bf7395ba3f385e9cf01a601f" args="(Geometry const &geometry, Functor f)" -->
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
-template<typename G , typename F > </div>
+template<typename Geometry , typename Functor > </div>
       <table class="memname">
         <tr>
-          <td class="memname">F ggl::for_each_point           </td>
+          <td class="memname">Functor ggl::for_each_point           </td>
           <td>(</td>
-          <td class="paramtype">G const & </td>
+          <td class="paramtype">Geometry const & </td>
           <td class="paramname"> <em>geometry</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">F </td>
+          <td class="paramtype">Functor </td>
           <td class="paramname"> <em>f</em></td><td> </td>
         </tr>
         <tr>
@@ -100,26 +100,26 @@
 </dl>
 <dl compact><dt><b>Examples: </b></dt><dd>
 <a class="el" href="02__linestring__example_8cpp-example.html#a13">02_linestring_example.cpp</a>.</dl>
-<p>Definition at line <a class="el" href="for__each_8hpp_source.html#l00214">214</a> of file <a class="el" href="for__each_8hpp_source.html">for_each.hpp</a>.</p>
+<p>Definition at line <a class="el" href="algorithms_2for__each_8hpp_source.html#l00280">280</a> of file <a class="el" href="algorithms_2for__each_8hpp_source.html">for_each.hpp</a>.</p>
 
 </div>
 </div><p>
-<a class="anchor" name="gbce8332305fc715d4587e7d78c21e4aa"></a><!-- doxytag: member="ggl::for_each_point" ref="gbce8332305fc715d4587e7d78c21e4aa" args="(G &geometry, F f)" -->
+<a class="anchor" name="g66bf40f0ee4dc883d9d3b621aeb2e81d"></a><!-- doxytag: member="ggl::for_each_point" ref="g66bf40f0ee4dc883d9d3b621aeb2e81d" args="(Geometry &geometry, Functor f)" -->
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
-template<typename G , typename F > </div>
+template<typename Geometry , typename Functor > </div>
       <table class="memname">
         <tr>
-          <td class="memname">F ggl::for_each_point           </td>
+          <td class="memname">Functor ggl::for_each_point           </td>
           <td>(</td>
-          <td class="paramtype">G & </td>
+          <td class="paramtype">Geometry & </td>
           <td class="paramname"> <em>geometry</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">F </td>
+          <td class="paramtype">Functor </td>
           <td class="paramname"> <em>f</em></td><td> </td>
         </tr>
         <tr>
@@ -141,26 +141,26 @@
   </table>
 </dl>
 
-<p>Definition at line <a class="el" href="for__each_8hpp_source.html#l00234">234</a> of file <a class="el" href="for__each_8hpp_source.html">for_each.hpp</a>.</p>
+<p>Definition at line <a class="el" href="algorithms_2for__each_8hpp_source.html#l00300">300</a> of file <a class="el" href="algorithms_2for__each_8hpp_source.html">for_each.hpp</a>.</p>
 
 </div>
 </div><p>
-<a class="anchor" name="gefcad88c6ee4e308e1003eff7752b3f3"></a><!-- doxytag: member="ggl::for_each_segment" ref="gefcad88c6ee4e308e1003eff7752b3f3" args="(const G &geometry, F f)" -->
+<a class="anchor" name="ge8453eab0e9db146184d7ccef687a33e"></a><!-- doxytag: member="ggl::for_each_segment" ref="ge8453eab0e9db146184d7ccef687a33e" args="(Geometry const &geometry, Functor f)" -->
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
-template<typename G , typename F > </div>
+template<typename Geometry , typename Functor > </div>
       <table class="memname">
         <tr>
-          <td class="memname">F ggl::for_each_segment           </td>
+          <td class="memname">Functor ggl::for_each_segment           </td>
           <td>(</td>
-          <td class="paramtype">const G & </td>
+          <td class="paramtype">Geometry const & </td>
           <td class="paramname"> <em>geometry</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">F </td>
+          <td class="paramtype">Functor </td>
           <td class="paramname"> <em>f</em></td><td> </td>
         </tr>
         <tr>
@@ -182,26 +182,26 @@
   </table>
 </dl>
 
-<p>Definition at line <a class="el" href="for__each_8hpp_source.html#l00247">247</a> of file <a class="el" href="for__each_8hpp_source.html">for_each.hpp</a>.</p>
+<p>Definition at line <a class="el" href="algorithms_2for__each_8hpp_source.html#l00320">320</a> of file <a class="el" href="algorithms_2for__each_8hpp_source.html">for_each.hpp</a>.</p>
 
 </div>
 </div><p>
-<a class="anchor" name="gf3b5b3004fc802700882f9f4a184564a"></a><!-- doxytag: member="ggl::for_each_segment" ref="gf3b5b3004fc802700882f9f4a184564a" args="(G &geometry, F f)" -->
+<a class="anchor" name="g529f5655aa7702e9f143263b484ff91b"></a><!-- doxytag: member="ggl::for_each_segment" ref="g529f5655aa7702e9f143263b484ff91b" args="(Geometry &geometry, Functor f)" -->
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
-template<typename G , typename F > </div>
+template<typename Geometry , typename Functor > </div>
       <table class="memname">
         <tr>
-          <td class="memname">F ggl::for_each_segment           </td>
+          <td class="memname">Functor ggl::for_each_segment           </td>
           <td>(</td>
-          <td class="paramtype">G & </td>
+          <td class="paramtype">Geometry & </td>
           <td class="paramname"> <em>geometry</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">F </td>
+          <td class="paramtype">Functor </td>
           <td class="paramname"> <em>f</em></td><td> </td>
         </tr>
         <tr>
@@ -223,7 +223,7 @@
   </table>
 </dl>
 
-<p>Definition at line <a class="el" href="for__each_8hpp_source.html#l00261">261</a> of file <a class="el" href="for__each_8hpp_source.html">for_each.hpp</a>.</p>
+<p>Definition at line <a class="el" href="algorithms_2for__each_8hpp_source.html#l00341">341</a> of file <a class="el" href="algorithms_2for__each_8hpp_source.html">for_each.hpp</a>.</p>
 
 </div>
 </div><p>
@@ -276,7 +276,7 @@
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>range</em> </td><td>range (<a class="el" href="classggl_1_1linestring.html" title="A linestring (named so by OGC) is a collection (default a vector) of points.">linestring</a> iterator pair,vector,list,deque) containing points </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>functor</em> </td><td>functor which is called at each const <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>functor</em> </td><td>functor which is called at each const <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>state</em> </td><td>state, specified separately from the <a class="el" href="namespaceggl_1_1strategy.html">strategy</a> functor </td></tr>
   </table>
 </dl>
@@ -285,7 +285,7 @@
 <li><em>V</em> <ul>
 <li>const_iterator begin()</li><li>const_iterator end()</li><li>value_type</li></ul>
 </li><li><em>F</em> <ul>
-<li><em>if it is a function functor</em>: bool <b>function</b> (const <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>&, state&)</li><li><em>if it is a class functor</em>: bool operator()(const segment&, state&) const</li></ul>
+<li><em>if it is a function functor</em>: bool <b>function</b> (const <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>&, state&)</li><li><em>if it is a class functor</em>: bool operator()(const segment&, state&) const</li></ul>
 </li><li><em>S</em> <ul>
 <li>no specific requirements here, requirments given by F </li></ul>
 </li></ul>
@@ -294,7 +294,7 @@
 <dl class="user" compact><dt><b>Examples:</b></dt><dd>First example, using a class functor  <div class="fragment"><pre class="fragment">{
     <span class="comment">// Class functor</span>
     <span class="keyword">template</span> <<span class="keyword">typename</span> P>
-    <span class="keyword">struct </span><a class="code" href="group__perimeter.html#g7d52bc6ace3c3dbc9bdac84e6f0076ba" title="Calculate perimeter of a geometry.">perimeter</a>
+    <span class="keyword">struct </span><a class="code" href="group__perimeter.html#g02588697f4c401400c3007d3ff091df9" title="Calculate perimeter of a geometry.">perimeter</a>
     {
         <span class="keyword">struct </span>summation
         {
@@ -302,10 +302,10 @@
             summation() : sum(0) {}
         };
 
-        <span class="keywordtype">bool</span> operator()(<span class="keyword">const</span> <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">ggl::segment<const P></a>& segment, summation& s)<span class="keyword"> const</span>
+        <span class="keywordtype">bool</span> operator()(<span class="keyword">const</span> <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">ggl::segment<const P></a>& segment, summation& s)<span class="keyword"> const</span>
 <span class="keyword">        </span>{
-            std::cout << <span class="stringliteral">"from "</span> << segment.<a class="code" href="structggl_1_1segment.html#3f8aa8a3542ebf499e4987ef3ccfd5b1">first</a> << <span class="stringliteral">" to "</span> << segment.<a class="code" href="structggl_1_1segment.html#e5aea8fdfbd0e0dece9b227a8a5cec33">second</a> << std::endl;
-            s.sum += <a class="code" href="group__distance.html#g22a618786d2601e9201896a8346c161b" title="Calculate distance between two geometries with a specified strategy.">ggl::distance</a>(segment.<a class="code" href="structggl_1_1segment.html#3f8aa8a3542ebf499e4987ef3ccfd5b1">first</a>, segment.<a class="code" href="structggl_1_1segment.html#e5aea8fdfbd0e0dece9b227a8a5cec33">second</a>);
+            std::cout << <span class="stringliteral">"from "</span> << segment.<a class="code" href="classggl_1_1segment.html#76c7f18dd19699ccb7353137b8981c65">first</a> << <span class="stringliteral">" to "</span> << segment.<a class="code" href="classggl_1_1segment.html#543b3806df8d74067157587323917a71">second</a> << std::endl;
+            s.sum += <a class="code" href="group__distance.html#g22a618786d2601e9201896a8346c161b" title="Calculate distance between two geometries with a specified strategy.">ggl::distance</a>(segment.<a class="code" href="classggl_1_1segment.html#76c7f18dd19699ccb7353137b8981c65">first</a>, segment.<a class="code" href="classggl_1_1segment.html#543b3806df8d74067157587323917a71">second</a>);
             <span class="keywordflow">return</span> <span class="keyword">true</span>;
         }
     };
@@ -329,10 +329,10 @@
 
     <span class="comment">// Function functor</span>
     <span class="keyword">template</span> <<span class="keyword">typename</span> P>
-    <span class="keywordtype">bool</span> <a class="code" href="group__perimeter.html#g7d52bc6ace3c3dbc9bdac84e6f0076ba" title="Calculate perimeter of a geometry.">perimeter</a>(<span class="keyword">const</span> <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">ggl::segment<const P></a>& segment, summation& s)
+    <span class="keywordtype">bool</span> <a class="code" href="group__perimeter.html#g02588697f4c401400c3007d3ff091df9" title="Calculate perimeter of a geometry.">perimeter</a>(<span class="keyword">const</span> <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">ggl::segment<const P></a>& segment, summation& s)
     {
-        std::cout << <span class="stringliteral">"from "</span> << segment.<a class="code" href="structggl_1_1segment.html#3f8aa8a3542ebf499e4987ef3ccfd5b1">first</a> << <span class="stringliteral">" to "</span> << segment.<a class="code" href="structggl_1_1segment.html#e5aea8fdfbd0e0dece9b227a8a5cec33">second</a> << std::endl;
-        s.sum += <a class="code" href="group__distance.html#g22a618786d2601e9201896a8346c161b" title="Calculate distance between two geometries with a specified strategy.">ggl::distance</a>(segment.<a class="code" href="structggl_1_1segment.html#3f8aa8a3542ebf499e4987ef3ccfd5b1">first</a>, segment.<a class="code" href="structggl_1_1segment.html#e5aea8fdfbd0e0dece9b227a8a5cec33">second</a>);
+        std::cout << <span class="stringliteral">"from "</span> << segment.<a class="code" href="classggl_1_1segment.html#76c7f18dd19699ccb7353137b8981c65">first</a> << <span class="stringliteral">" to "</span> << segment.<a class="code" href="classggl_1_1segment.html#543b3806df8d74067157587323917a71">second</a> << std::endl;
+        s.sum += <a class="code" href="group__distance.html#g22a618786d2601e9201896a8346c161b" title="Calculate distance between two geometries with a specified strategy.">ggl::distance</a>(segment.<a class="code" href="classggl_1_1segment.html#76c7f18dd19699ccb7353137b8981c65">first</a>, segment.<a class="code" href="classggl_1_1segment.html#543b3806df8d74067157587323917a71">second</a>);
         <span class="keywordflow">return</span> <span class="keyword">true</span>;
     }
 
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__overlay.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__overlay.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__overlay.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -204,7 +204,7 @@
 <dl class="return" compact><dt><b>Returns:</b></dt><dd>the output iterator </dd></dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>For linestrings: the default clipping <a class="el" href="namespaceggl_1_1strategy.html">strategy</a>, Liang-Barsky, is used. The algorithm is currently only implemented for 2D xy points. It could be generic for most ll cases, but not across the 180 meridian so that issue is still on the todo-list. </dd></dl>
 
-<p>Definition at line <a class="el" href="algorithms_2intersection_8hpp_source.html#l00424">424</a> of file <a class="el" href="algorithms_2intersection_8hpp_source.html">intersection.hpp</a>.</p>
+<p>Definition at line <a class="el" href="algorithms_2intersection_8hpp_source.html#l00427">427</a> of file <a class="el" href="algorithms_2intersection_8hpp_source.html">intersection.hpp</a>.</p>
 
 </div>
 </div><p>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__perimeter.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__perimeter.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__perimeter.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -40,24 +40,24 @@
 <tr><td></td></tr>
 <tr><td colspan="2"><br><h2>Functions</h2></td></tr>
 <tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry , typename Strategy > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">double </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__perimeter.html#g840995936a96075829b48a29a4a33b19">ggl::perimeter</a> (Geometry const &geometry, Strategy const &strategy)</td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">length_result< Geometry >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__perimeter.html#g78c3f8a2c3eed80533521425079cdf55">ggl::perimeter</a> (Geometry const &geometry, Strategy const &strategy)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate perimeter of a geometry.  <br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate perimeter of a geometry.  <br></td></tr>
 <tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">double </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__perimeter.html#g7d52bc6ace3c3dbc9bdac84e6f0076ba">ggl::perimeter</a> (Geometry const &geometry)</td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">length_result< Geometry >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__perimeter.html#g02588697f4c401400c3007d3ff091df9">ggl::perimeter</a> (Geometry const &geometry)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate perimeter of a geometry.  <br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate perimeter of a geometry.  <br></td></tr>
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
 The perimeter algorithm is implemented for polygon,box,linear_ring,multi_polygon <hr><h2>Function Documentation</h2>
-<a class="anchor" name="g7d52bc6ace3c3dbc9bdac84e6f0076ba"></a><!-- doxytag: member="ggl::perimeter" ref="g7d52bc6ace3c3dbc9bdac84e6f0076ba" args="(Geometry const &geometry)" -->
+<a class="anchor" name="g02588697f4c401400c3007d3ff091df9"></a><!-- doxytag: member="ggl::perimeter" ref="g02588697f4c401400c3007d3ff091df9" args="(Geometry const &geometry)" -->
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
 template<typename Geometry > </div>
       <table class="memname">
         <tr>
-          <td class="memname">double ggl::perimeter           </td>
+          <td class="memname">length_result<Geometry>::type ggl::perimeter           </td>
           <td>(</td>
           <td class="paramtype">Geometry const & </td>
           <td class="paramname"> <em>geometry</em>          </td>
@@ -78,18 +78,18 @@
 </dl>
 <dl class="return" compact><dt><b>Returns:</b></dt><dd>the perimeter </dd></dl>
 
-<p>Definition at line <a class="el" href="algorithms_2perimeter_8hpp_source.html#l00100">100</a> of file <a class="el" href="algorithms_2perimeter_8hpp_source.html">perimeter.hpp</a>.</p>
+<p>Definition at line <a class="el" href="algorithms_2perimeter_8hpp_source.html#l00085">85</a> of file <a class="el" href="algorithms_2perimeter_8hpp_source.html">perimeter.hpp</a>.</p>
 
 </div>
 </div><p>
-<a class="anchor" name="g840995936a96075829b48a29a4a33b19"></a><!-- doxytag: member="ggl::perimeter" ref="g840995936a96075829b48a29a4a33b19" args="(Geometry const &geometry, Strategy const &strategy)" -->
+<a class="anchor" name="g78c3f8a2c3eed80533521425079cdf55"></a><!-- doxytag: member="ggl::perimeter" ref="g78c3f8a2c3eed80533521425079cdf55" args="(Geometry const &geometry, Strategy const &strategy)" -->
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
 template<typename Geometry , typename Strategy > </div>
       <table class="memname">
         <tr>
-          <td class="memname">double ggl::perimeter           </td>
+          <td class="memname">length_result<Geometry>::type ggl::perimeter           </td>
           <td>(</td>
           <td class="paramtype">Geometry const & </td>
           <td class="paramname"> <em>geometry</em>, </td>
@@ -120,7 +120,7 @@
 </dl>
 <dl class="return" compact><dt><b>Returns:</b></dt><dd>the perimeter </dd></dl>
 
-<p>Definition at line <a class="el" href="algorithms_2perimeter_8hpp_source.html#l00129">129</a> of file <a class="el" href="algorithms_2perimeter_8hpp_source.html">perimeter.hpp</a>.</p>
+<p>Definition at line <a class="el" href="algorithms_2perimeter_8hpp_source.html#l00115">115</a> of file <a class="el" href="algorithms_2perimeter_8hpp_source.html">perimeter.hpp</a>.</p>
 
 </div>
 </div><p>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__simplify.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__simplify.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__simplify.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -39,7 +39,7 @@
 <h1>simplification (generalization)</h1><table border="0" cellpadding="0" cellspacing="0">
 <tr><td></td></tr>
 <tr><td colspan="2"><br><h2>Classes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker< R, O_IT, PSDS ></a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker< Point, PointDistanceStrategy ></a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Implements the <a class="el" href="namespaceggl_1_1strategy_1_1simplify.html">simplify</a> algorithm.  More...<br></td></tr>
 <tr><td colspan="2"><br><h2>Functions</h2></td></tr>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__traits.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__traits.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/group__traits.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -42,7 +42,7 @@
 <table border="0" cellpadding="0" cellspacing="0">
 <tr><td></td></tr>
 <tr><td colspan="2"><br><h2>Classes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1access.html">ggl::traits::access< G ></a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1access.html">ggl::traits::access< Geometry, Dimension ></a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Traits class which gives <a class="el" href="structggl_1_1traits_1_1access.html" title="Traits class which gives access (get,set) to points.">access</a> (get,set) to points.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1append__point.html">ggl::traits::append_point< G, P ></a></td></tr>
@@ -66,7 +66,7 @@
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1exterior__ring.html">ggl::traits::exterior_ring< P ></a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Traits class defining <a class="el" href="structggl_1_1traits_1_1access.html" title="Traits class which gives access (get,set) to points.">access</a> to <a class="el" href="structggl_1_1traits_1_1exterior__ring.html" title="Traits class defining access to exterior_ring of a polygon.">exterior_ring</a> of a <a class="el" href="classggl_1_1polygon.html" title="The polygon contains an outer ring and zero or more inner rings.">polygon</a>.  More...<br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1indexed__access.html">ggl::traits::indexed_access< G, I, D ></a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1indexed__access.html">ggl::traits::indexed_access< Geometry, Index, Dimension ></a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Traits class defining "get" and "set" to get and set <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> coordinate values.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1interior__rings.html">ggl::traits::interior_rings< G ></a></td></tr>
@@ -93,7 +93,7 @@
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1tag.html">ggl::traits::tag< Geometry ></a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Traits class to attach a <a class="el" href="structggl_1_1traits_1_1tag.html" title="Traits class to attach a tag to a geometry.">tag</a> to a geometry.  More...<br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1use__std.html">ggl::traits::use_std< G ></a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1use__std.html">ggl::traits::use_std< Geometry ></a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Traits class, optional, indicating that the std-library should be used.  More...<br></td></tr>
 </table>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/haversine_8hpp.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/haversine_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,86 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li>Classes</li>
-      <li class="current">Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>File List</li>
-      <li>File Members</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
-<h1>ggl/strategies/spherical/haversine.hpp File Reference</h1>
-<p>
-Go to the source code of this file.<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html">ggl::strategy::distance::haversine< P1, P2 ></a></td></tr>
-
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Distance calculation for spherical coordinates on a perfect sphere using <a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html" title="Distance calculation for spherical coordinates on a perfect sphere using haversine...">haversine</a>.  More...<br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html">ggl::strategy::distance::ll_point_segment< P, S ></a></td></tr>
-
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Strategy functor for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> calculation.  More...<br></td></tr>
-<tr><td colspan="2"><br><h2>Namespaces</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl.html">ggl</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl_1_1strategy.html">ggl::strategy</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl_1_1strategy_1_1distance.html">ggl::strategy::distance</a></td></tr>
-
-</table>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/haversine_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/haversine_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,302 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li>Classes</li>
-      <li class="current">Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>File List</li>
-      <li>File Members</li>
-    </ul>
-  </div>
-<h1>ggl/strategies/spherical/haversine.hpp</h1>Go to the documentation of this file.<div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">// Generic Geometry Library</span>
-<a name="l00002"></a>00002 <span class="comment">//</span>
-<a name="l00003"></a>00003 <span class="comment">// Copyright Barend Gehrels 1995-2009, Geodan Holding B.V. Amsterdam, the Netherlands.</span>
-<a name="l00004"></a>00004 <span class="comment">// Copyright Bruno Lalande 2008, 2009</span>
-<a name="l00005"></a>00005 <span class="comment">// Use, modification and distribution is subject to the Boost Software License,</span>
-<a name="l00006"></a>00006 <span class="comment">// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at</span>
-<a name="l00007"></a>00007 <span class="comment">// http://www.boost.org/LICENSE_1_0.txt)</span>
-<a name="l00008"></a>00008 
-<a name="l00009"></a>00009 <span class="preprocessor">#ifndef GGL_STRATEGY_SPHERICAL_DISTANCE_HPP</span>
-<a name="l00010"></a>00010 <span class="preprocessor"></span><span class="preprocessor">#define GGL_STRATEGY_SPHERICAL_DISTANCE_HPP</span>
-<a name="l00011"></a>00011 <span class="preprocessor"></span>
-<a name="l00012"></a>00012 
-<a name="l00013"></a>00013 <span class="preprocessor">#include <<a class="code" href="cs_8hpp.html">ggl/core/cs.hpp</a>></span>
-<a name="l00014"></a>00014 <span class="preprocessor">#include <<a class="code" href="point__concept_8hpp.html">ggl/core/concepts/point_concept.hpp</a>></span>
-<a name="l00015"></a>00015 <span class="preprocessor">#include <<a class="code" href="access_8hpp.html">ggl/core/access.hpp</a>></span>
-<a name="l00016"></a>00016 <span class="preprocessor">#include <<a class="code" href="radian__access_8hpp.html">ggl/core/radian_access.hpp</a>></span>
-<a name="l00017"></a>00017 
-<a name="l00018"></a>00018 
-<a name="l00019"></a>00019 <span class="preprocessor">#include <<a class="code" href="strategy__traits_8hpp.html">ggl/strategies/strategy_traits.hpp</a>></span>
-<a name="l00020"></a>00020 
-<a name="l00021"></a>00021 <span class="preprocessor">#include <<a class="code" href="distance__result_8hpp.html">ggl/strategies/distance_result.hpp</a>></span>
-<a name="l00022"></a>00022 
-<a name="l00023"></a>00023 <span class="preprocessor">#include <<a class="code" href="get__cs__as__radian_8hpp.html">ggl/util/get_cs_as_radian.hpp</a>></span>
-<a name="l00024"></a>00024 
-<a name="l00025"></a>00025 
-<a name="l00026"></a>00026 
-<a name="l00027"></a>00027 <span class="keyword">namespace </span>ggl
-<a name="l00028"></a>00028 {
-<a name="l00029"></a>00029 <span class="keyword">namespace </span>strategy
-<a name="l00030"></a>00030 {
-<a name="l00031"></a>00031 
-<a name="l00032"></a>00032     <span class="keyword">namespace </span><a class="code" href="group__distance.html#g22a618786d2601e9201896a8346c161b" title="Calculate distance between two geometries with a specified strategy.">distance</a>
-<a name="l00033"></a>00033     {
-<a name="l00034"></a>00034 
-<a name="l00047"></a>00047         <span class="keyword">template</span> <<span class="keyword">typename</span> P1, <span class="keyword">typename</span> P2 = P1>
-<a name="l00048"></a>00048         <span class="keyword">class </span>haversine
-<a name="l00049"></a>00049         {
-<a name="l00050"></a>00050             <span class="keyword">public</span> :
-<a name="l00051"></a>00051                 <span class="comment">//typedef spherical_distance return_type;</span>
-<a name="l00052"></a><a class="code" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8fd848a2bbc5857c70fa6bce5ffac5d3">00052</a>                 <span class="keyword">typedef</span> <span class="keywordtype">double</span> <a class="code" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8fd848a2bbc5857c70fa6bce5ffac5d3">return_type</a>;
-<a name="l00053"></a>00053 
-<a name="l00054"></a><a class="code" href="classggl_1_1strategy_1_1distance_1_1haversine.html#85ea8852c843a8950010229d0da4504a">00054</a>                 <span class="keyword">inline</span> <a class="code" href="classggl_1_1strategy_1_1distance_1_1haversine.html#85ea8852c843a8950010229d0da4504a">haversine</a>(<span class="keywordtype">double</span> r = 1.0)
-<a name="l00055"></a>00055                     : m_radius(r)
-<a name="l00056"></a>00056                 {}
-<a name="l00057"></a>00057 
-<a name="l00058"></a><a class="code" href="classggl_1_1strategy_1_1distance_1_1haversine.html#cfc29c7f64c6136784283fab579fa970">00058</a>                 <span class="keyword">inline</span> <a class="code" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8fd848a2bbc5857c70fa6bce5ffac5d3">return_type</a> <a class="code" href="classggl_1_1strategy_1_1distance_1_1haversine.html#4e6620683b788431de8942b0376af7af">operator()</a>(<span class="keyword">const</span> P1& p1, <span class="keyword">const</span> P2& p2)<span class="keyword"> const</span>
-<a name="l00059"></a>00059 <span class="keyword">                </span>{
-<a name="l00060"></a>00060                     <span class="keywordflow">return</span> calc(get_as_radian<0>(p1), get_as_radian<1>(p1),
-<a name="l00061"></a>00061                                     get_as_radian<0>(p2), get_as_radian<1>(p2));
-<a name="l00062"></a>00062                 }
-<a name="l00063"></a>00063 
-<a name="l00064"></a>00064             <span class="keyword">private</span> :
-<a name="l00065"></a>00065                 <span class="keywordtype">double</span> m_radius;
-<a name="l00066"></a>00066                 <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<P1>::type</a> T1;
-<a name="l00067"></a>00067                 <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<P2>::type</a> T2;
-<a name="l00068"></a>00068 
-<a name="l00069"></a>00069                 <span class="keyword">inline</span> <a class="code" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8fd848a2bbc5857c70fa6bce5ffac5d3">return_type</a> calc(<span class="keyword">const</span> T1& lon1, <span class="keyword">const</span> T1& lat1, <span class="keyword">const</span> T2& lon2, <span class="keyword">const</span> T2& lat2)<span class="keyword"> const</span>
-<a name="l00070"></a>00070 <span class="keyword">                </span>{
-<a name="l00071"></a>00071                     <span class="keywordtype">double</span> a = <a class="code" href="namespaceggl_1_1math.html#eda38de76b567b170a5c9cadbe660311" title="Calculates the haversine of an angle.">math::hav</a>(lat2 - lat1) + cos(lat1) * cos(lat2) * <a class="code" href="namespaceggl_1_1math.html#eda38de76b567b170a5c9cadbe660311" title="Calculates the haversine of an angle.">math::hav</a>(lon2 - lon1);
-<a name="l00072"></a>00072                     <span class="keywordtype">double</span> c = 2.0 * asin(sqrt(a));
-<a name="l00073"></a>00073                     <span class="keywordflow">return</span> <a class="code" href="classggl_1_1strategy_1_1distance_1_1haversine.html#8fd848a2bbc5857c70fa6bce5ffac5d3">return_type</a>(m_radius * c);
-<a name="l00074"></a>00074                 }
-<a name="l00075"></a>00075         };
-<a name="l00076"></a>00076 
-<a name="l00077"></a>00077 
-<a name="l00078"></a>00078 
-<a name="l00086"></a>00086         <span class="keyword">template</span> <<span class="keyword">typename</span> P, <span class="keyword">typename</span> S>
-<a name="l00087"></a><a class="code" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html">00087</a>         <span class="keyword">class </span><a class="code" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html" title="Strategy functor for distance point to segment calculation.">ll_point_segment</a>
-<a name="l00088"></a>00088         {
-<a name="l00089"></a>00089             <span class="keyword">public</span> :
-<a name="l00090"></a><a class="code" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#f98549b351e37683bc7999d389f170f0">00090</a>                 <span class="keyword">typedef</span> <span class="keywordtype">double</span> <a class="code" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#f98549b351e37683bc7999d389f170f0">return_type</a>;
-<a name="l00091"></a>00091 
-<a name="l00092"></a><a class="code" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#bd6a906cc460c9073ed833922392407c">00092</a>                 <span class="keyword">inline</span> <a class="code" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#bd6a906cc460c9073ed833922392407c">ll_point_segment</a>(<span class="keywordtype">double</span> r = 1.0) : m_radius(r)
-<a name="l00093"></a>00093                 {}
-<a name="l00094"></a>00094 
-<a name="l00095"></a><a class="code" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#ded28ff8067850eab6befbf3cec37098">00095</a>                 <span class="keyword">inline</span> <a class="code" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#f98549b351e37683bc7999d389f170f0">return_type</a> <a class="code" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#ded28ff8067850eab6befbf3cec37098">operator()</a>(P <span class="keyword">const</span>& p, S <span class="keyword">const</span>& s)<span class="keyword"> const</span>
-<a name="l00096"></a>00096 <span class="keyword">                </span>{
-<a name="l00097"></a>00097                     <a class="code" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">PR</a> pr, ps1, ps2;
-<a name="l00098"></a>00098 
-<a name="l00099"></a>00099                     <span class="comment">// Select transformation strategy and transform to radians (if necessary)</span>
-<a name="l00100"></a>00100                     <span class="keyword">typename</span> <a class="code" href="structggl_1_1strategy__transform.html" title="Traits class binding a transformation strategy to a coordinate system.">strategy_transform</a><
-<a name="l00101"></a>00101                                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1cs__tag.html" title="Meta-function returning coordinate system tag (cs family) of any geometry.">cs_tag<P>::type</a>,
-<a name="l00102"></a>00102                                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1cs__tag.html" title="Meta-function returning coordinate system tag (cs family) of any geometry.">cs_tag<PR>::type</a>,
-<a name="l00103"></a>00103                                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__system.html" title="Meta-function which defines coordinate system for any geometry.">coordinate_system<P>::type</a>,
-<a name="l00104"></a>00104                                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__system.html" title="Meta-function which defines coordinate system for any geometry.">coordinate_system<PR>::type</a>,
-<a name="l00105"></a>00105                                 <a class="code" href="structggl_1_1dimension.html" title="Meta-function which defines coordinate dimensions, i.e. the number of axes of any...">dimension<P>::value</a>,
-<a name="l00106"></a>00106                                 <a class="code" href="structggl_1_1dimension.html" title="Meta-function which defines coordinate dimensions, i.e. the number of axes of any...">dimension<PR>::value</a>,
-<a name="l00107"></a>00107                                 P, <a class="code" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">PR</a>>::type transform_strategy;
-<a name="l00108"></a>00108 
-<a name="l00109"></a>00109 
-<a name="l00110"></a>00110                     <span class="comment">// TODO</span>
-<a name="l00111"></a>00111                     <span class="comment">// ASSUMPTION: segment</span>
-<a name="l00112"></a>00112                     <span class="comment">// SOLVE THIS USING OTHER FUNCTIONS using get<,></span>
-<a name="l00113"></a>00113                     transform_strategy(p, pr);
-<a name="l00114"></a>00114                     transform_strategy(s.first, ps1);
-<a name="l00115"></a>00115                     transform_strategy(s.second, ps2);
-<a name="l00116"></a>00116                     <span class="keywordflow">return</span> calc(pr, ps1, ps2);
-<a name="l00117"></a>00117                 }
-<a name="l00118"></a>00118 
-<a name="l00119"></a>00119             <span class="keyword">private</span> :
-<a name="l00120"></a>00120                 <span class="keyword">typedef</span> <a class="code" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a>
-<a name="l00121"></a>00121                     <
-<a name="l00122"></a>00122                         <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<P>::type</a>,
-<a name="l00123"></a>00123                         <a class="code" href="structggl_1_1dimension.html" title="Meta-function which defines coordinate dimensions, i.e. the number of axes of any...">ggl::dimension<P>::type::value</a>,
-<a name="l00124"></a>00124                         <span class="keyword">typename</span> ggl::detail::get_cs_as_radian
-<a name="l00125"></a>00125                             <
-<a name="l00126"></a>00126                                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__system.html" title="Meta-function which defines coordinate system for any geometry.">coordinate_system<P>::type</a>
-<a name="l00127"></a>00127                             >::type
-<a name="l00128"></a>00128                     > PR;
-<a name="l00129"></a>00129                 <span class="keywordtype">double</span> m_radius;
-<a name="l00130"></a>00130 
-<a name="l00132"></a>00132                 <span class="keyword">inline</span> <span class="keywordtype">double</span> course(PR <span class="keyword">const</span>& p1, PR <span class="keyword">const</span>& p2)<span class="keyword"> const</span>
-<a name="l00133"></a>00133 <span class="keyword">                </span>{
-<a name="l00134"></a>00134                     <span class="comment">/***</span>
-<a name="l00135"></a>00135 <span class="comment">                        Course between points</span>
-<a name="l00136"></a>00136 <span class="comment"></span>
-<a name="l00137"></a>00137 <span class="comment">                        We obtain the initial course, tc1, (at point 1) from point 1 to point 2 by the following. The formula fails if the initial point is a pole. We can special case this with:</span>
-<a name="l00138"></a>00138 <span class="comment"></span>
-<a name="l00139"></a>00139 <span class="comment">                        IF (cos(lat1) < EPS)   // EPS a small number ~ machine precision</span>
-<a name="l00140"></a>00140 <span class="comment">                          IF (lat1 > 0): tc1= pi        //  starting from N pole</span>
-<a name="l00141"></a>00141 <span class="comment">                          ELSE: tc1= 2*pi         //  starting from S pole</span>
-<a name="l00142"></a>00142 <span class="comment">                          ENDIF</span>
-<a name="l00143"></a>00143 <span class="comment">                        ENDIF</span>
-<a name="l00144"></a>00144 <span class="comment"></span>
-<a name="l00145"></a>00145 <span class="comment">                        For starting points other than the poles:</span>
-<a name="l00146"></a>00146 <span class="comment">                        IF sin(lon2-lon1)<0: tc1=acos((sin(lat2)-sin(lat1)*cos(d))/(sin(d)*cos(lat1)))</span>
-<a name="l00147"></a>00147 <span class="comment">                        ELSE: tc1=2*pi-acos((sin(lat2)-sin(lat1)*cos(d))/(sin(d)*cos(lat1)))</span>
-<a name="l00148"></a>00148 <span class="comment">                        ENDIF</span>
-<a name="l00149"></a>00149 <span class="comment"></span>
-<a name="l00150"></a>00150 <span class="comment">                        An alternative formula, not requiring the pre-computation of d, the distance between the points, is:</span>
-<a name="l00151"></a>00151 <span class="comment">                           tc1=mod(atan2(sin(lon1-lon2)*cos(lat2),</span>
-<a name="l00152"></a>00152 <span class="comment">                                   cos(lat1)*sin(lat2)-sin(lat1)*cos(lat2)*cos(lon1-lon2))</span>
-<a name="l00153"></a>00153 <span class="comment">                                   , 2*pi)</span>
-<a name="l00154"></a>00154 <span class="comment">                     ***/</span>
-<a name="l00155"></a>00155                     <span class="keywordtype">double</span> dlon = get<0>(p2) - get<0>(p1);
-<a name="l00156"></a>00156                     <span class="keywordtype">double</span> cos_p2lat = cos(get<1>(p2));
-<a name="l00157"></a>00157                     <span class="keywordflow">return</span> atan2(sin(dlon) * cos_p2lat,
-<a name="l00158"></a>00158                         cos(get<1>(p1)) * sin(get<1>(p2))
-<a name="l00159"></a>00159                         - sin(get<1>(p1)) * cos_p2lat * cos(dlon));
-<a name="l00160"></a>00160                 }
-<a name="l00161"></a>00161 
-<a name="l00162"></a>00162                 <span class="keyword">inline</span> <a class="code" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#f98549b351e37683bc7999d389f170f0">return_type</a> calc(PR <span class="keyword">const</span>& p, PR <span class="keyword">const</span>& sp1, PR <span class="keyword">const</span>& sp2)<span class="keyword"> const</span>
-<a name="l00163"></a>00163 <span class="keyword">                </span>{
-<a name="l00164"></a>00164                     <span class="comment">/***</span>
-<a name="l00165"></a>00165 <span class="comment">                    Cross track error:</span>
-<a name="l00166"></a>00166 <span class="comment">                    Suppose you are proceeding on a great circle route from A to B (course =crs_AB) and end up at D, perhaps off course.</span>
-<a name="l00167"></a>00167 <span class="comment">                    (We presume that A is ot a pole!) You can calculate the course from A to D (crs_AD) and the distance from A to D (dist_AD)</span>
-<a name="l00168"></a>00168 <span class="comment">                    using the formulae above. In shifteds of these the cross track error, XTD, (distance off course) is given by</span>
-<a name="l00169"></a>00169 <span class="comment"></span>
-<a name="l00170"></a>00170 <span class="comment">                               XTD =asin(sin(dist_AD)*sin(crs_AD-crs_AB))</span>
-<a name="l00171"></a>00171 <span class="comment"></span>
-<a name="l00172"></a>00172 <span class="comment">                    (positive XTD means right of course, negative means left)</span>
-<a name="l00173"></a>00173 <span class="comment">                    (If the point A is the N. or S. Pole replace crs_AD-crs_AB with</span>
-<a name="l00174"></a>00174 <span class="comment">                    lon_D-lon_B or lon_B-lon_D, respectively.)</span>
-<a name="l00175"></a>00175 <span class="comment">                     ***/</span>
-<a name="l00176"></a>00176 
-<a name="l00177"></a>00177                     <span class="comment">// Calculate distances, in radians, on the unit sphere</span>
-<a name="l00178"></a>00178                     <span class="comment">// It seems not useful to let this strategy be templatized, it should be in radians and on the unit sphere</span>
-<a name="l00179"></a>00179                     <a class="code" href="classggl_1_1strategy_1_1distance_1_1haversine.html" title="Distance calculation for spherical coordinates on a perfect sphere using haversine...">strategy::distance::haversine<PR, PR></a> strategy(1.0);
-<a name="l00180"></a>00180                     <span class="keywordtype">double</span> d1 = strategy(sp1, p);
-<a name="l00181"></a>00181 
-<a name="l00182"></a>00182                     <span class="comment">// Actually, calculation of d2 not necessary if we know that the projected point is on the great circle...</span>
-<a name="l00183"></a>00183                     <span class="keywordtype">double</span> d2 = strategy(sp2, p);
-<a name="l00184"></a>00184 
-<a name="l00185"></a>00185                     <span class="comment">// Source: http://williams.best.vwh.net/avform.htm>
-<a name="l00186"></a>00186 
-<a name="l00187"></a>00187                     <span class="keywordtype">double</span> crs_AD = course(sp1, p);
-<a name="l00188"></a>00188                     <span class="keywordtype">double</span> crs_AB = course(sp1, sp2);
-<a name="l00189"></a>00189                     <span class="keywordtype">double</span> XTD = fabs(asin(sin(d1) * sin(crs_AD - crs_AB)));
-<a name="l00190"></a>00190 
-<a name="l00191"></a>00191                     <span class="comment">// Return shortest distance, either to projected point on segment sp1-sp2, or to sp1, or to sp2</span>
-<a name="l00192"></a>00192                     <span class="keywordflow">return</span> <a class="code" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html#f98549b351e37683bc7999d389f170f0">return_type</a>(m_radius * (std::min)((std::min)(d1, d2), XTD));
-<a name="l00193"></a>00193                 }
-<a name="l00194"></a>00194         };
-<a name="l00195"></a>00195 
-<a name="l00196"></a>00196 
-<a name="l00197"></a>00197 
-<a name="l00198"></a>00198 
-<a name="l00199"></a>00199 
-<a name="l00200"></a>00200     } <span class="comment">// namespace distance</span>
-<a name="l00201"></a>00201 
-<a name="l00202"></a>00202 
-<a name="l00203"></a>00203 
-<a name="l00204"></a>00204 
-<a name="l00205"></a>00205 } <span class="comment">// namespace strategy</span>
-<a name="l00206"></a>00206 
-<a name="l00207"></a>00207 
-<a name="l00208"></a>00208 <span class="preprocessor">#ifndef DOXYGEN_NO_STRATEGY_SPECIALIZATIONS</span>
-<a name="l00209"></a>00209 <span class="preprocessor"></span><span class="keyword">template</span> <<span class="keyword">typename</span> P1, <span class="keyword">typename</span> P2>
-<a name="l00210"></a>00210 <span class="keyword">struct </span>strategy_distance<spherical_tag, spherical_tag, P1, P2>
-<a name="l00211"></a>00211 {
-<a name="l00212"></a>00212     <span class="keyword">typedef</span> strategy::distance::haversine<P1, P2> <a class="code" href="structggl_1_1strategy__distance.html#e95dff63729289b7ff265e4311fb54de">type</a>;
-<a name="l00213"></a>00213 };
-<a name="l00214"></a>00214 
-<a name="l00215"></a>00215 
-<a name="l00216"></a>00216 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>, <span class="keyword">typename</span> Segment>
-<a name="l00217"></a>00217 <span class="keyword">struct </span>strategy_distance_segment<spherical_tag, spherical_tag, Point, Segment>
-<a name="l00218"></a>00218 {
-<a name="l00219"></a>00219     <span class="keyword">typedef</span> strategy::distance::ll_point_segment<Point, Segment> <a class="code" href="structggl_1_1strategy__distance__segment.html#7f194ba200da0e6da72ac4e14a623a2f">type</a>;
-<a name="l00220"></a>00220 };
-<a name="l00221"></a>00221 
-<a name="l00222"></a>00222 
-<a name="l00223"></a>00223 <span class="comment">// Use this point-segment for geographic as well. TODO: change this, extension!</span>
-<a name="l00224"></a>00224 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>, <span class="keyword">typename</span> Segment>
-<a name="l00225"></a>00225 <span class="keyword">struct </span>strategy_distance_segment<geographic_tag, geographic_tag, Point, Segment>
-<a name="l00226"></a>00226 {
-<a name="l00227"></a>00227     <span class="keyword">typedef</span> strategy::distance::ll_point_segment<Point, Segment> <a class="code" href="structggl_1_1strategy__distance__segment.html#7f194ba200da0e6da72ac4e14a623a2f">type</a>;
-<a name="l00228"></a>00228 };
-<a name="l00229"></a>00229 
-<a name="l00230"></a>00230 
-<a name="l00231"></a>00231 
-<a name="l00232"></a>00232 
-<a name="l00233"></a>00233 <span class="keyword">template</span> <<span class="keyword">typename</span> P1, <span class="keyword">typename</span> P2>
-<a name="l00234"></a>00234 <span class="keyword">struct </span>strategy_tag<strategy::<a class="code" href="group__distance.html#g22a618786d2601e9201896a8346c161b" title="Calculate distance between two geometries with a specified strategy.">distance</a>::haversine<P1, P2> >
-<a name="l00235"></a>00235 {
-<a name="l00236"></a>00236     <span class="keyword">typedef</span> strategy_tag_distance_point_point <a class="code" href="structggl_1_1strategy__tag.html#5b87fe714131125577390960840bd65c">type</a>;
-<a name="l00237"></a>00237 };
-<a name="l00238"></a>00238 
-<a name="l00239"></a>00239 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>, <span class="keyword">typename</span> Segment>
-<a name="l00240"></a>00240 <span class="keyword">struct </span>strategy_tag<strategy::<a class="code" href="group__distance.html#g22a618786d2601e9201896a8346c161b" title="Calculate distance between two geometries with a specified strategy.">distance</a>::ll_point_segment<Point, Segment> >
-<a name="l00241"></a>00241 {
-<a name="l00242"></a>00242     <span class="keyword">typedef</span> strategy_tag_distance_point_segment <a class="code" href="structggl_1_1strategy__tag.html#5b87fe714131125577390960840bd65c">type</a>;
-<a name="l00243"></a>00243 };
-<a name="l00244"></a>00244 
-<a name="l00245"></a>00245 
-<a name="l00246"></a>00246 
-<a name="l00247"></a>00247 <span class="preprocessor">#endif</span>
-<a name="l00248"></a>00248 <span class="preprocessor"></span>
-<a name="l00249"></a>00249 
-<a name="l00250"></a>00250 
-<a name="l00251"></a>00251 
-<a name="l00252"></a>00252 
-<a name="l00253"></a>00253 
-<a name="l00254"></a>00254 } <span class="comment">// namespace ggl</span>
-<a name="l00255"></a>00255 
-<a name="l00256"></a>00256 
-<a name="l00257"></a>00257 <span class="preprocessor">#endif // GGL_STRATEGY_SPHERICAL_DISTANCE_HPP</span>
-</pre></div></div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/hierarchy.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/hierarchy.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/hierarchy.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -53,7 +53,7 @@
 </ul>
 <li><a class="el" href="structggl_1_1area__result.html">ggl::area_result< Geometry ></a>
 <li><a class="el" href="structggl_1_1as__range__type.html">ggl::as_range_type< Geometry ></a>
-<li><a class="el" href="classggl_1_1box.html">ggl::box< P ></a>
+<li><a class="el" href="classggl_1_1box.html">ggl::box< Point ></a>
 <li><a class="el" href="structggl_1_1box__tag.html">ggl::box_tag</a>
 <li><a class="el" href="structggl_1_1cartesian__distance.html">ggl::cartesian_distance< T ></a>
 <li><a class="el" href="structggl_1_1cartesian__tag.html">ggl::cartesian_tag</a>
@@ -103,6 +103,7 @@
 <li><a class="el" href="structggl_1_1is__linear.html">ggl::is_linear< Geometry ></a>
 <li><a class="el" href="structggl_1_1is__multi.html">ggl::is_multi< Geometry ></a>
 <li><a class="el" href="structggl_1_1is__radian.html">ggl::is_radian< CoordinateSystem ></a>
+<li><a class="el" href="structggl_1_1length__result.html">ggl::length_result< Geometry ></a>
 <li><a class="el" href="structggl_1_1less.html">ggl::less< P ></a>
 <li><a class="el" href="classggl_1_1linear__ring.html">ggl::linear_ring< P, V, ClockWise, A ></a>
 <li><a class="el" href="classggl_1_1linestring.html">ggl::linestring< P, V, A ></a>
@@ -134,13 +135,14 @@
 <li><a class="el" href="structggl_1_1ring__type.html">ggl::ring_type< Geometry ></a>
 <li><a class="el" href="structggl_1_1section.html">ggl::section< Box, DimensionCount ></a>
 <li><a class="el" href="structggl_1_1sections.html">ggl::sections< Box, DimensionCount ></a>
-<li><a class="el" href="structggl_1_1segment.html">ggl::segment< P ></a>
+<li><a class="el" href="classggl_1_1segment.html">ggl::segment< ConstOrNonConstPoint ></a>
 <li><a class="el" href="structggl_1_1segment__identifier.html">ggl::segment_identifier</a>
 <li><a class="el" href="structggl_1_1segment__intersection__points.html">ggl::segment_intersection_points< P ></a>
 <li><a class="el" href="structggl_1_1segment__iterator.html">ggl::segment_iterator< Base, Point ></a>
 <li><a class="el" href="structggl_1_1segment__tag.html">ggl::segment_tag</a>
 <li><a class="el" href="structggl_1_1select__coordinate__type.html">ggl::select_coordinate_type< T1, T2 ></a>
 <li><a class="el" href="structggl_1_1select__most__precise.html">ggl::select_most_precise< T1, T2 ></a>
+<li><a class="el" href="structggl_1_1single__tag.html">ggl::single_tag< Tag ></a>
 <li><a class="el" href="structggl_1_1spherical__tag.html">ggl::spherical_tag</a>
 <li><a class="el" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html">ggl::strategy::area::by_spherical_excess< P ></a>
 <li><a class="el" href="classggl_1_1strategy_1_1area_1_1by__triangles.html">ggl::strategy::area::by_triangles< PS, CalculationType ></a>
@@ -150,7 +152,6 @@
 <li><a class="el" href="classggl_1_1strategy_1_1convex__hull_1_1graham.html">ggl::strategy::convex_hull::graham< P ></a>
 <li><a class="el" href="classggl_1_1strategy_1_1distance_1_1cross__track.html">ggl::strategy::distance::cross_track< P, S ></a>
 <li><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html">ggl::strategy::distance::haversine< P1, P2 ></a>
-<li><a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html">ggl::strategy::distance::ll_point_segment< P, S ></a>
 <li><a class="el" href="structggl_1_1strategy_1_1distance_1_1pythagoras.html">ggl::strategy::distance::pythagoras< P1, P2, CalculationType ></a>
 <li><a class="el" href="structggl_1_1strategy_1_1distance_1_1xy__point__segment.html">ggl::strategy::distance::xy_point_segment< P, Segment, Strategy ></a>
 <li><a class="el" href="structggl_1_1strategy_1_1envelope_1_1combine__xy.html">ggl::strategy::envelope::combine_xy< P, B ></a>
@@ -163,7 +164,7 @@
 <li><a class="el" href="classggl_1_1strategy_1_1intersection_1_1liang__barsky.html">ggl::strategy::intersection::liang_barsky< B, P ></a>
 <li><a class="el" href="structggl_1_1strategy_1_1not__implemented.html">ggl::strategy::not_implemented</a>
 <li><a class="el" href="structggl_1_1strategy_1_1side_1_1xy__side.html">ggl::strategy::side::xy_side< P, PS ></a>
-<li><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker< R, O_IT, PSDS ></a>
+<li><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker< Point, PointDistanceStrategy ></a>
 <li><a class="el" href="structggl_1_1strategy_1_1transform_1_1copy__direct.html">ggl::strategy::transform::copy_direct< P ></a>
 <li><a class="el" href="structggl_1_1strategy_1_1transform_1_1copy__per__coordinate.html">ggl::strategy::transform::copy_per_coordinate< P1, P2 ></a>
 <li><a class="el" href="structggl_1_1strategy_1_1transform_1_1degree__radian__vv.html">ggl::strategy::transform::degree_radian_vv< P1, P2, F ></a>
@@ -209,8 +210,8 @@
 <li><a class="el" href="classggl_1_1svg__manipulator.html">ggl::svg_manipulator< G ></a>
 <li><a class="el" href="structggl_1_1tag.html">ggl::tag< Geometry ></a>
 <li><a class="el" href="structggl_1_1topological__dimension.html">ggl::topological_dimension< Geometry ></a>
-<li><a class="el" href="structggl_1_1traits_1_1access.html">ggl::traits::access< G ></a>
-<li><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html">ggl::traits::access< ggl::detail::intersection::intersection_point< P > ></a>
+<li><a class="el" href="structggl_1_1traits_1_1access.html">ggl::traits::access< Geometry, Dimension ></a>
+<li><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html">ggl::traits::access< ggl::detail::intersection::intersection_point< P >, Dimension ></a>
 <li><a class="el" href="structggl_1_1traits_1_1append__point.html">ggl::traits::append_point< G, P ></a>
 <li><a class="el" href="structggl_1_1traits_1_1clear.html">ggl::traits::clear< G ></a>
 <li><a class="el" href="structggl_1_1traits_1_1coordinate__system.html">ggl::traits::coordinate_system< P ></a>
@@ -220,7 +221,7 @@
 <li><a class="el" href="structggl_1_1traits_1_1cs__tag.html">ggl::traits::cs_tag< CoordinateSystem ></a>
 <li><a class="el" href="structggl_1_1traits_1_1dimension.html">ggl::traits::dimension< P ></a>
 <li><a class="el" href="structggl_1_1traits_1_1exterior__ring.html">ggl::traits::exterior_ring< P ></a>
-<li><a class="el" href="structggl_1_1traits_1_1indexed__access.html">ggl::traits::indexed_access< G, I, D ></a>
+<li><a class="el" href="structggl_1_1traits_1_1indexed__access.html">ggl::traits::indexed_access< Geometry, Index, Dimension ></a>
 <li><a class="el" href="structggl_1_1traits_1_1interior__rings.html">ggl::traits::interior_rings< G ></a>
 <li><a class="el" href="structggl_1_1traits_1_1interior__type.html">ggl::traits::interior_type< G ></a>
 <li><a class="el" href="structggl_1_1traits_1_1point__order.html">ggl::traits::point_order< G ></a>
@@ -230,7 +231,7 @@
 <li><a class="el" href="structggl_1_1traits_1_1ring__type.html">ggl::traits::ring_type< G ></a>
 <li><a class="el" href="structggl_1_1traits_1_1tag.html">ggl::traits::tag< Geometry ></a>
 <li><a class="el" href="structggl_1_1traits_1_1tag_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html">ggl::traits::tag< ggl::detail::intersection::intersection_point< P > ></a>
-<li><a class="el" href="structggl_1_1traits_1_1use__std.html">ggl::traits::use_std< G ></a>
+<li><a class="el" href="structggl_1_1traits_1_1use__std.html">ggl::traits::use_std< Geometry ></a>
 <li><a class="el" href="structggl_1_1vertex__iterator.html">ggl::vertex_iterator< Geometry, IsConst ></a>
 <li><a class="el" href="classggl_1_1point.html">ggl::point< T, 2, C ></a>
 <ul>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/index.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/index.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/index.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -70,7 +70,7 @@
     boost::tuple<double, double> p = boost::make_tuple(3.7, 2.0);
     std::cout << <span class="stringliteral">"Point p is in polygon? "</span> << (<a class="code" href="group__boolean__relations.html#g95d6465a12b762c77df41369a039f6dc" title="Within check.">within</a>(p, poly) ? <span class="stringliteral">"YES"</span> : <span class="stringliteral">"NO"</span>)  << std::endl;
 </pre></div><p>
-or area: <div class="fragment"><pre class="fragment">    std::cout << <span class="stringliteral">"Area: "</span> << <a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">area</a>(poly) << std::endl;
+or area: <div class="fragment"><pre class="fragment">    std::cout << <span class="stringliteral">"Area: "</span> << <a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">area</a>(poly) << std::endl;
 </pre></div><p>
 It is possible, by the nature of a template library, to mix the point types declared above: <div class="fragment"><pre class="fragment">    <span class="keywordtype">double</span> d2 = <a class="code" href="group__distance.html#g22a618786d2601e9201896a8346c161b" title="Calculate distance between two geometries with a specified strategy.">distance</a>(a, p);
     std::cout << <span class="stringliteral">"Distance a-p is:"</span> << d2 << std::endl;
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/intersection__linestring_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/intersection__linestring_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/intersection__linestring_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -69,7 +69,7 @@
 <a name="l00039"></a><a class="code" href="classggl_1_1strategy_1_1intersection_1_1liang__barsky.html">00039</a> <span class="keyword">class </span><a class="code" href="classggl_1_1strategy_1_1intersection_1_1liang__barsky.html" title="Strategy: line clipping algorithm after Liang Barsky.">liang_barsky</a>
 <a name="l00040"></a>00040 {
 <a name="l00041"></a>00041 <span class="keyword">private</span>:
-<a name="l00042"></a>00042     <span class="keyword">typedef</span> <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">ggl::segment<P></a> <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment_type</a>;
+<a name="l00042"></a>00042     <span class="keyword">typedef</span> <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">ggl::segment<P></a> <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment_type</a>;
 <a name="l00043"></a>00043 
 <a name="l00044"></a>00044     <span class="keyword">inline</span> <span class="keywordtype">bool</span> check_edge(<span class="keywordtype">double</span> <span class="keyword">const</span>& p, <span class="keywordtype">double</span> <span class="keyword">const</span>& q, <span class="keywordtype">double</span>& t1, <span class="keywordtype">double</span>& t2)<span class="keyword"> const</span>
 <a name="l00045"></a>00045 <span class="keyword">    </span>{
@@ -103,7 +103,7 @@
 <a name="l00073"></a>00073 
 <a name="l00074"></a>00074 <span class="keyword">public</span>:
 <a name="l00075"></a>00075 
-<a name="l00076"></a><a class="code" href="classggl_1_1strategy_1_1intersection_1_1liang__barsky.html#1a0456b13305792c70cd53b8571db1ef">00076</a>     <span class="keywordtype">bool</span> <a class="code" href="classggl_1_1strategy_1_1intersection_1_1liang__barsky.html#1a0456b13305792c70cd53b8571db1ef">clip_segment</a>(B <span class="keyword">const</span>& b, <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment_type</a>& s, <span class="keywordtype">bool</span>& sp1_clipped, <span class="keywordtype">bool</span>& sp2_clipped)<span class="keyword"> const</span>
+<a name="l00076"></a><a class="code" href="classggl_1_1strategy_1_1intersection_1_1liang__barsky.html#1a0456b13305792c70cd53b8571db1ef">00076</a>     <span class="keywordtype">bool</span> <a class="code" href="classggl_1_1strategy_1_1intersection_1_1liang__barsky.html#1a0456b13305792c70cd53b8571db1ef">clip_segment</a>(B <span class="keyword">const</span>& b, <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment_type</a>& s, <span class="keywordtype">bool</span>& sp1_clipped, <span class="keywordtype">bool</span>& sp2_clipped)<span class="keyword"> const</span>
 <a name="l00077"></a>00077 <span class="keyword">    </span>{
 <a name="l00078"></a>00078         <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1select__coordinate__type.html" title="Utility selecting the most precise coordinate type of two geometries.">select_coordinate_type<B, P>::type</a> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type</a>;
 <a name="l00079"></a>00079 
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/intersection__point_8hpp.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/intersection__point_8hpp.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/intersection__point_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -47,7 +47,7 @@
 <a href="intersection__point_8hpp_source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
 <tr><td></td></tr>
 <tr><td colspan="2"><br><h2>Classes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html">ggl::traits::access< ggl::detail::intersection::intersection_point< P > ></a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html">ggl::traits::access< ggl::detail::intersection::intersection_point< P >, Dimension ></a></td></tr>
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1coordinate__system_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html">ggl::traits::coordinate_system< ggl::detail::intersection::intersection_point< P > ></a></td></tr>
 
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/intersection__point_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/intersection__point_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/intersection__point_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -251,50 +251,48 @@
 <a name="l00209"></a><a class="code" href="structggl_1_1traits_1_1tag_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html#02acc738dfcd073102d0c33b600556f9">00209</a>         <span class="keyword">typedef</span> <a class="code" href="structggl_1_1point__tag.html" title="OGC Point identifying tag.">point_tag</a> <a class="code" href="structggl_1_1point__tag.html" title="OGC Point identifying tag.">type</a>;
 <a name="l00210"></a>00210     };
 <a name="l00211"></a>00211 
-<a name="l00212"></a>00212     <span class="keyword">template</span> <<span class="keyword">typename</span> P>
-<a name="l00213"></a><a class="code" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html">00213</a>     <span class="keyword">struct </span><a class="code" href="structggl_1_1traits_1_1access.html" title="Traits class which gives access (get,set) to points.">access</a><ggl::detail::<a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a>::intersection_point<P> >
+<a name="l00212"></a>00212     <span class="keyword">template</span> <<span class="keyword">typename</span> P, std::<span class="keywordtype">size_t</span> Dimension>
+<a name="l00213"></a><a class="code" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html">00213</a>     <span class="keyword">struct </span><a class="code" href="structggl_1_1traits_1_1access.html" title="Traits class which gives access (get,set) to points.">access</a><ggl::detail::<a class="code" href="group__overlay.html#g60644b53b334602956f0722e9dfb69b5" title="Intersects two geometries which each other.">intersection</a>::intersection_point<P>, Dimension>
 <a name="l00214"></a>00214     {
-<a name="l00215"></a>00215         <span class="keyword">template</span> <<span class="keywordtype">int</span> Index>
-<a name="l00216"></a><a class="code" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html#a25393c19c53fae14f51f6be484113b9">00216</a>         <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1traits_1_1coordinate__type.html" title="Traits class which indicate the coordinate type (double,float,...) of a point.">coordinate_type<P>::type</a> <span class="keyword">get</span>(
-<a name="l00217"></a>00217                 ggl::detail::intersection::intersection_point<P> <span class="keyword">const</span>& p)
-<a name="l00218"></a>00218         {
-<a name="l00219"></a>00219             <span class="keywordflow">return</span> ggl::get<Index>(p.point);
-<a name="l00220"></a>00220         }
-<a name="l00221"></a>00221 
-<a name="l00222"></a>00222         <span class="keyword">template</span> <<span class="keywordtype">int</span> Index>
-<a name="l00223"></a><a class="code" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html#bce25b446714591183532373ceeaf1f7">00223</a>         <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(ggl::detail::intersection::intersection_point<P>& p,
-<a name="l00224"></a>00224                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1traits_1_1coordinate__type.html" title="Traits class which indicate the coordinate type (double,float,...) of a point.">coordinate_type<P>::type</a> <span class="keyword">const</span>& value)
-<a name="l00225"></a>00225         {
-<a name="l00226"></a>00226             ggl::set<Index>(p.point, value);
-<a name="l00227"></a>00227         }
-<a name="l00228"></a>00228     };
+<a name="l00215"></a><a class="code" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html#82a62232a7a2092e0a3850771871e9ee">00215</a>         <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1traits_1_1coordinate__type.html" title="Traits class which indicate the coordinate type (double,float,...) of a point.">coordinate_type<P>::type</a> <span class="keyword">get</span>(
+<a name="l00216"></a>00216                 ggl::detail::intersection::intersection_point<P> <span class="keyword">const</span>& p)
+<a name="l00217"></a>00217         {
+<a name="l00218"></a>00218             <span class="keywordflow">return</span> ggl::get<Dimension>(p.point);
+<a name="l00219"></a>00219         }
+<a name="l00220"></a>00220 
+<a name="l00221"></a><a class="code" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html#840ddd0e5e5719de54570e292d17cfb0">00221</a>         <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(ggl::detail::intersection::intersection_point<P>& p,
+<a name="l00222"></a>00222                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1traits_1_1coordinate__type.html" title="Traits class which indicate the coordinate type (double,float,...) of a point.">coordinate_type<P>::type</a> <span class="keyword">const</span>& value)
+<a name="l00223"></a>00223         {
+<a name="l00224"></a>00224             ggl::set<Dimension>(p.point, value);
+<a name="l00225"></a>00225         }
+<a name="l00226"></a>00226     };
+<a name="l00227"></a>00227 
+<a name="l00228"></a>00228 }
 <a name="l00229"></a>00229 
-<a name="l00230"></a>00230 }
-<a name="l00231"></a>00231 
-<a name="l00232"></a>00232 
-<a name="l00233"></a>00233 <span class="preprocessor">#ifdef GGL_DEBUG_INTERSECTION</span>
-<a name="l00234"></a>00234 <span class="preprocessor"></span>
-<a name="l00235"></a>00235 <span class="keyword">template</span> <<span class="keyword">typename</span> V>
-<a name="l00236"></a>00236 <span class="keyword">inline</span> <span class="keywordtype">void</span> report_ip(V <span class="keyword">const</span>& intersection_points)
-<a name="l00237"></a>00237 {
-<a name="l00238"></a>00238     <span class="keyword">typedef</span> <span class="keyword">typename</span> V::const_iterator iterator_type;
-<a name="l00239"></a>00239 
-<a name="l00240"></a>00240     <span class="keywordflow">for</span> (iterator_type it = intersection_points.begin();
-<a name="l00241"></a>00241          it != intersection_points.end();
-<a name="l00242"></a>00242          ++it)
-<a name="l00243"></a>00243     {
-<a name="l00244"></a>00244         <span class="keywordflow">if</span> (! it->flagged)
-<a name="l00245"></a>00245         {
-<a name="l00246"></a>00246             std::cout << *it;
-<a name="l00247"></a>00247         }
-<a name="l00248"></a>00248     }
-<a name="l00249"></a>00249 }
-<a name="l00250"></a>00250 <span class="preprocessor">#endif // GGL_DEBUG_INTERSECTION</span>
-<a name="l00251"></a>00251 <span class="preprocessor"></span>
+<a name="l00230"></a>00230 
+<a name="l00231"></a>00231 <span class="preprocessor">#ifdef GGL_DEBUG_INTERSECTION</span>
+<a name="l00232"></a>00232 <span class="preprocessor"></span>
+<a name="l00233"></a>00233 <span class="keyword">template</span> <<span class="keyword">typename</span> V>
+<a name="l00234"></a>00234 <span class="keyword">inline</span> <span class="keywordtype">void</span> report_ip(V <span class="keyword">const</span>& intersection_points)
+<a name="l00235"></a>00235 {
+<a name="l00236"></a>00236     <span class="keyword">typedef</span> <span class="keyword">typename</span> V::const_iterator iterator_type;
+<a name="l00237"></a>00237 
+<a name="l00238"></a>00238     <span class="keywordflow">for</span> (iterator_type it = intersection_points.begin();
+<a name="l00239"></a>00239          it != intersection_points.end();
+<a name="l00240"></a>00240          ++it)
+<a name="l00241"></a>00241     {
+<a name="l00242"></a>00242         <span class="keywordflow">if</span> (! it->flagged)
+<a name="l00243"></a>00243         {
+<a name="l00244"></a>00244             std::cout << *it;
+<a name="l00245"></a>00245         }
+<a name="l00246"></a>00246     }
+<a name="l00247"></a>00247 }
+<a name="l00248"></a>00248 <span class="preprocessor">#endif // GGL_DEBUG_INTERSECTION</span>
+<a name="l00249"></a>00249 <span class="preprocessor"></span>
+<a name="l00250"></a>00250 
+<a name="l00251"></a>00251 } <span class="comment">// namespace ggl</span>
 <a name="l00252"></a>00252 
-<a name="l00253"></a>00253 } <span class="comment">// namespace ggl</span>
-<a name="l00254"></a>00254 
-<a name="l00255"></a>00255 <span class="preprocessor">#endif // GGL_ALGORITHMS_INTERSECTION_POINT_HPP</span>
+<a name="l00253"></a>00253 <span class="preprocessor">#endif // GGL_ALGORITHMS_INTERSECTION_POINT_HPP</span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Added: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/length__result_8hpp.html
==============================================================================
--- (empty file)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/length__result_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -0,0 +1,79 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Generic Geometry Library</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head>
+<body style="background-image: url(images/draft.png);">
+
+<table cellpadding="2" width="100%">
+<tbody>
+<tr>
+<td valign="top">
+<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
+  
+</td>
+<td valign="top" align="right">
+<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
+</td>
+</tr>
+</tbody>
+</table>
+<!-- Generated by Doxygen 1.5.9 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li>Main Page</li>
+      <li>Related Pages</li>
+      <li>Modules</li>
+      <li>Namespaces</li>
+      <li>Classes</li>
+      <li class="current">Files</li>
+      <li>Examples</li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li>File List</li>
+      <li>File Members</li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+<h1>ggl/strategies/length_result.hpp File Reference</h1>
+<p>
+Go to the source code of this file.<table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1length__result.html">ggl::length_result< Geometry ></a></td></tr>
+
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Meta-function defining return type of length function.  More...<br></td></tr>
+<tr><td colspan="2"><br><h2>Namespaces</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl.html">ggl</a></td></tr>
+
+</table>
+</div>
+<hr size="1">
+<table width="100%">
+<tbody>
+<tr>
+<td align="left"><small>
+<p>October 13, 2009</p>
+</small></td>
+<td align="right">
+<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
+Copyright © 2008-2009 Bruno Lalande, Paris<br>
+Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
+</small>
+</td>
+</tr>
+</tbody>
+</table>
+
+<address style="text-align: right;"><small>
+Documentation is generated by Doxygen
+</small></address>
+</body>
+</html>
Added: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/length__result_8hpp_source.html
==============================================================================
--- (empty file)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/length__result_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -0,0 +1,97 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Generic Geometry Library</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head>
+<body style="background-image: url(images/draft.png);">
+
+<table cellpadding="2" width="100%">
+<tbody>
+<tr>
+<td valign="top">
+<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
+  
+</td>
+<td valign="top" align="right">
+<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
+</td>
+</tr>
+</tbody>
+</table>
+<!-- Generated by Doxygen 1.5.9 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li>Main Page</li>
+      <li>Related Pages</li>
+      <li>Modules</li>
+      <li>Namespaces</li>
+      <li>Classes</li>
+      <li class="current">Files</li>
+      <li>Examples</li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li>File List</li>
+      <li>File Members</li>
+    </ul>
+  </div>
+<h1>ggl/strategies/length_result.hpp</h1>Go to the documentation of this file.<div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">// Generic Geometry Library</span>
+<a name="l00002"></a>00002 <span class="comment">//</span>
+<a name="l00003"></a>00003 <span class="comment">// Copyright Barend Gehrels 1995-2009, Geodan Holding B.V. Amsterdam, the Netherlands.</span>
+<a name="l00004"></a>00004 <span class="comment">// Use, modification and distribution is subject to the Boost Software License,</span>
+<a name="l00005"></a>00005 <span class="comment">// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at</span>
+<a name="l00006"></a>00006 <span class="comment">// http://www.boost.org/LICENSE_1_0.txt)</span>
+<a name="l00007"></a>00007 
+<a name="l00008"></a>00008 <span class="preprocessor">#ifndef GGL_LENGTH_RESULT_HPP</span>
+<a name="l00009"></a>00009 <span class="preprocessor"></span><span class="preprocessor">#define GGL_LENGTH_RESULT_HPP</span>
+<a name="l00010"></a>00010 <span class="preprocessor"></span>
+<a name="l00011"></a>00011 
+<a name="l00012"></a>00012 <span class="preprocessor">#include <<a class="code" href="coordinate__type_8hpp.html">ggl/core/coordinate_type.hpp</a>></span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include <<a class="code" href="select__most__precise_8hpp.html">ggl/util/select_most_precise.hpp</a>></span>
+<a name="l00014"></a>00014 
+<a name="l00015"></a>00015 
+<a name="l00016"></a>00016 <span class="keyword">namespace </span>ggl
+<a name="l00017"></a>00017 {
+<a name="l00018"></a>00018 
+<a name="l00027"></a>00027 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry>
+<a name="l00028"></a><a class="code" href="structggl_1_1length__result.html">00028</a> <span class="keyword">struct </span><a class="code" href="structggl_1_1length__result.html" title="Meta-function defining return type of length function.">length_result</a>
+<a name="l00029"></a>00029 {
+<a name="l00030"></a>00030     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1select__most__precise.html" title="Traits class to select, of two types, the most accurate type for calculations.">select_most_precise</a>
+<a name="l00031"></a>00031         <
+<a name="l00032"></a>00032             <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">coordinate_type<Geometry>::type</a>,
+<a name="l00033"></a>00033             <span class="keywordtype">long</span> <span class="keywordtype">double</span>
+<a name="l00034"></a><a class="code" href="structggl_1_1length__result.html#804491e987771a8c50f977a209ee0599">00034</a>         ><a class="code" href="structggl_1_1length__result.html#804491e987771a8c50f977a209ee0599">::type</a> <a class="code" href="structggl_1_1length__result.html#804491e987771a8c50f977a209ee0599">type</a>;
+<a name="l00035"></a>00035 };
+<a name="l00036"></a>00036 
+<a name="l00037"></a>00037 } <span class="comment">// namespace ggl</span>
+<a name="l00038"></a>00038 
+<a name="l00039"></a>00039 
+<a name="l00040"></a>00040 <span class="preprocessor">#endif // GGL_LENGTH_RESULT_HPP</span>
+</pre></div></div>
+<hr size="1">
+<table width="100%">
+<tbody>
+<tr>
+<td align="left"><small>
+<p>October 13, 2009</p>
+</small></td>
+<td align="right">
+<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
+Copyright © 2008-2009 Bruno Lalande, Paris<br>
+Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
+</small>
+</td>
+</tr>
+</tbody>
+</table>
+
+<address style="text-align: right;"><small>
+Documentation is generated by Doxygen
+</small></address>
+</body>
+</html>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/loop_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/loop_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/loop_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -70,7 +70,7 @@
 <a name="l00069"></a>00069         iterator_type previous = it++;
 <a name="l00070"></a>00070         <span class="keywordflow">while</span>(it != boost::end(range))
 <a name="l00071"></a>00071         {
-<a name="l00072"></a>00072             <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment<const typename boost::range_value<R>::type</a>> s(*previous, *it);
+<a name="l00072"></a>00072             <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment<const typename boost::range_value<R>::type</a>> s(*previous, *it);
 <a name="l00073"></a>00073             <span class="keywordflow">if</span> (! functor(s, state))
 <a name="l00074"></a>00074             {
 <a name="l00075"></a>00075                 <span class="keywordflow">return</span> <span class="keyword">false</span>;
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2algorithms_2area_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2algorithms_2area_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2algorithms_2area_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -61,22 +61,32 @@
 <a name="l00019"></a>00019 <span class="preprocessor">#ifndef DOXYGEN_NO_DISPATCH</span>
 <a name="l00020"></a>00020 <span class="preprocessor"></span><span class="keyword">namespace </span>dispatch
 <a name="l00021"></a>00021 {
-<a name="l00022"></a>00022     <span class="keyword">template</span> <<span class="keyword">typename</span> MultiGeometry, order_selector Order, <span class="keyword">typename</span> Strategy>
-<a name="l00023"></a>00023     <span class="keyword">struct </span><a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">area</a><multi_polygon_tag, MultiGeometry, Order, Strategy>
-<a name="l00024"></a>00024         : detail::multi_sum<double, MultiGeometry, Strategy,
-<a name="l00025"></a>00025             detail::area::polygon_area<
-<a name="l00026"></a>00026                 typename boost::range_value<MultiGeometry>::type, Order, Strategy> >
-<a name="l00027"></a>00027     {};
-<a name="l00028"></a>00028 
-<a name="l00029"></a>00029 
-<a name="l00030"></a>00030 } <span class="comment">// namespace dispatch</span>
-<a name="l00031"></a>00031 <span class="preprocessor">#endif</span>
-<a name="l00032"></a>00032 <span class="preprocessor"></span>
-<a name="l00033"></a>00033 
-<a name="l00034"></a>00034 } <span class="comment">// namespace ggl</span>
-<a name="l00035"></a>00035 
-<a name="l00036"></a>00036 
-<a name="l00037"></a>00037 <span class="preprocessor">#endif // GGL_MULTI_ALGORITHMS_AREA_HPP</span>
+<a name="l00022"></a>00022 <span class="keyword">template</span> <<span class="keyword">typename</span> MultiGeometry, order_selector Order, <span class="keyword">typename</span> Strategy>
+<a name="l00023"></a>00023 <span class="keyword">struct </span><a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">area</a><multi_polygon_tag, MultiGeometry, Order, Strategy>
+<a name="l00024"></a>00024     : detail::multi_sum
+<a name="l00025"></a>00025         <
+<a name="l00026"></a>00026             typename Strategy::return_type, 
+<a name="l00027"></a>00027             MultiGeometry, 
+<a name="l00028"></a>00028             Strategy,
+<a name="l00029"></a>00029             area
+<a name="l00030"></a>00030                 <
+<a name="l00031"></a>00031                     polygon_tag,
+<a name="l00032"></a>00032                     typename boost::range_value<MultiGeometry>::type, 
+<a name="l00033"></a>00033                     Order, 
+<a name="l00034"></a>00034                     Strategy
+<a name="l00035"></a>00035                 > 
+<a name="l00036"></a>00036     >
+<a name="l00037"></a>00037 {};
+<a name="l00038"></a>00038 
+<a name="l00039"></a>00039 
+<a name="l00040"></a>00040 } <span class="comment">// namespace dispatch</span>
+<a name="l00041"></a>00041 <span class="preprocessor">#endif</span>
+<a name="l00042"></a>00042 <span class="preprocessor"></span>
+<a name="l00043"></a>00043 
+<a name="l00044"></a>00044 } <span class="comment">// namespace ggl</span>
+<a name="l00045"></a>00045 
+<a name="l00046"></a>00046 
+<a name="l00047"></a>00047 <span class="preprocessor">#endif // GGL_MULTI_ALGORITHMS_AREA_HPP</span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Added: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2algorithms_2for__each_8hpp.html
==============================================================================
--- (empty file)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2algorithms_2for__each_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -0,0 +1,75 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Generic Geometry Library</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head>
+<body style="background-image: url(images/draft.png);">
+
+<table cellpadding="2" width="100%">
+<tbody>
+<tr>
+<td valign="top">
+<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
+  
+</td>
+<td valign="top" align="right">
+<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
+</td>
+</tr>
+</tbody>
+</table>
+<!-- Generated by Doxygen 1.5.9 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li>Main Page</li>
+      <li>Related Pages</li>
+      <li>Modules</li>
+      <li>Namespaces</li>
+      <li>Classes</li>
+      <li class="current">Files</li>
+      <li>Examples</li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li>File List</li>
+      <li>File Members</li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+<h1>ggl/multi/algorithms/for_each.hpp File Reference</h1>
+<p>
+Go to the source code of this file.<table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Namespaces</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl.html">ggl</a></td></tr>
+
+</table>
+</div>
+<hr size="1">
+<table width="100%">
+<tbody>
+<tr>
+<td align="left"><small>
+<p>October 13, 2009</p>
+</small></td>
+<td align="right">
+<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
+Copyright © 2008-2009 Bruno Lalande, Paris<br>
+Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
+</small>
+</td>
+</tr>
+</tbody>
+</table>
+
+<address style="text-align: right;"><small>
+Documentation is generated by Doxygen
+</small></address>
+</body>
+</html>
Added: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2algorithms_2for__each_8hpp_source.html
==============================================================================
--- (empty file)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2algorithms_2for__each_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -0,0 +1,191 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Generic Geometry Library</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head>
+<body style="background-image: url(images/draft.png);">
+
+<table cellpadding="2" width="100%">
+<tbody>
+<tr>
+<td valign="top">
+<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
+  
+</td>
+<td valign="top" align="right">
+<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
+</td>
+</tr>
+</tbody>
+</table>
+<!-- Generated by Doxygen 1.5.9 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li>Main Page</li>
+      <li>Related Pages</li>
+      <li>Modules</li>
+      <li>Namespaces</li>
+      <li>Classes</li>
+      <li class="current">Files</li>
+      <li>Examples</li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li>File List</li>
+      <li>File Members</li>
+    </ul>
+  </div>
+<h1>ggl/multi/algorithms/for_each.hpp</h1>Go to the documentation of this file.<div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">// Generic Geometry Library</span>
+<a name="l00002"></a>00002 <span class="comment">//</span>
+<a name="l00003"></a>00003 <span class="comment">// Copyright Barend Gehrels 1995-2009, Geodan Holding B.V. Amsterdam, the Netherlands.</span>
+<a name="l00004"></a>00004 <span class="comment">// Use, modification and distribution is subject to the Boost Software License,</span>
+<a name="l00005"></a>00005 <span class="comment">// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at</span>
+<a name="l00006"></a>00006 <span class="comment">// http://www.boost.org/LICENSE_1_0.txt)</span>
+<a name="l00007"></a>00007 
+<a name="l00008"></a>00008 <span class="preprocessor">#ifndef GGL_MULTI_ALGORITHMS_FOR_EACH_HPP</span>
+<a name="l00009"></a>00009 <span class="preprocessor"></span><span class="preprocessor">#define GGL_MULTI_ALGORITHMS_FOR_EACH_HPP</span>
+<a name="l00010"></a>00010 <span class="preprocessor"></span>
+<a name="l00011"></a>00011 
+<a name="l00012"></a>00012 <span class="preprocessor">#include <<a class="code" href="multi_2core_2tags_8hpp.html">ggl/multi/core/tags.hpp</a>></span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include <<a class="code" href="multi_2core_2is__multi_8hpp.html">ggl/multi/core/is_multi.hpp</a>></span>
+<a name="l00014"></a>00014 <span class="preprocessor">#include <<a class="code" href="multi_2core_2point__type_8hpp.html">ggl/multi/core/point_type.hpp</a>></span>
+<a name="l00015"></a>00015 
+<a name="l00016"></a>00016 
+<a name="l00017"></a>00017 <span class="preprocessor">#include <<a class="code" href="algorithms_2for__each_8hpp.html">ggl/algorithms/for_each.hpp</a>></span>
+<a name="l00018"></a>00018 
+<a name="l00019"></a>00019 
+<a name="l00020"></a>00020 
+<a name="l00021"></a>00021 <span class="keyword">namespace </span>ggl
+<a name="l00022"></a>00022 {
+<a name="l00023"></a>00023 
+<a name="l00024"></a>00024 
+<a name="l00025"></a>00025 <span class="preprocessor">#ifndef DOXYGEN_NO_DETAIL</span>
+<a name="l00026"></a>00026 <span class="preprocessor"></span><span class="keyword">namespace </span>detail { <span class="keyword">namespace </span>for_each {
+<a name="l00027"></a>00027 
+<a name="l00028"></a>00028 <span class="comment">// Implementation of multi, for both point and segment,</span>
+<a name="l00029"></a>00029 <span class="comment">// just calling the single version.</span>
+<a name="l00030"></a>00030 <span class="keyword">template</span>
+<a name="l00031"></a>00031 <
+<a name="l00032"></a>00032     <span class="keyword">typename</span> MultiGeometry,
+<a name="l00033"></a>00033     <span class="keyword">typename</span> Functor,
+<a name="l00034"></a>00034     <span class="keywordtype">bool</span> IsConst,
+<a name="l00035"></a>00035     <span class="keyword">typename</span> Policy
+<a name="l00036"></a>00036 >
+<a name="l00037"></a>00037 <span class="keyword">struct </span>for_each_multi
+<a name="l00038"></a>00038 {
+<a name="l00039"></a>00039     <span class="keyword">static</span> <span class="keyword">inline</span> Functor apply(
+<a name="l00040"></a>00040                     <span class="keyword">typename</span> c_nc<MultiGeometry, IsConst>::type& multi,
+<a name="l00041"></a>00041                     Functor f)
+<a name="l00042"></a>00042     {
+<a name="l00043"></a>00043         <span class="keyword">typedef</span> <span class="keyword">typename</span> c_nc_range
+<a name="l00044"></a>00044             <
+<a name="l00045"></a>00045                 MultiGeometry,
+<a name="l00046"></a>00046                 IsConst
+<a name="l00047"></a>00047             >::type iterator_type;
+<a name="l00048"></a>00048 
+<a name="l00049"></a>00049         <span class="keywordflow">for</span>(iterator_type it = boost::begin(multi);
+<a name="l00050"></a>00050             it != boost::end(multi);
+<a name="l00051"></a>00051             ++it)
+<a name="l00052"></a>00052         {
+<a name="l00053"></a>00053             f = Policy::apply(*it, f);
+<a name="l00054"></a>00054         }
+<a name="l00055"></a>00055         <span class="keywordflow">return</span> f;
+<a name="l00056"></a>00056     }
+<a name="l00057"></a>00057 };
+<a name="l00058"></a>00058 
+<a name="l00059"></a>00059 
+<a name="l00060"></a>00060 }} <span class="comment">// namespace detail::for_each</span>
+<a name="l00061"></a>00061 <span class="preprocessor">#endif // DOXYGEN_NO_DETAIL</span>
+<a name="l00062"></a>00062 <span class="preprocessor"></span>
+<a name="l00063"></a>00063 
+<a name="l00064"></a>00064 <span class="preprocessor">#ifndef DOXYGEN_NO_DISPATCH</span>
+<a name="l00065"></a>00065 <span class="preprocessor"></span><span class="keyword">namespace </span>dispatch
+<a name="l00066"></a>00066 {
+<a name="l00067"></a>00067 
+<a name="l00068"></a>00068 <span class="keyword">template</span> 
+<a name="l00069"></a>00069 <
+<a name="l00070"></a>00070     <span class="keyword">typename</span> MultiTag, 
+<a name="l00071"></a>00071     <span class="keyword">typename</span> MultiGeometry, 
+<a name="l00072"></a>00072     <span class="keyword">typename</span> Functor, 
+<a name="l00073"></a>00073     <span class="keywordtype">bool</span> IsConst
+<a name="l00074"></a>00074 >
+<a name="l00075"></a>00075 <span class="keyword">struct </span><a class="code" href="group__loop.html#g0cdb7f23bf7395ba3f385e9cf01a601f" title="Calls functor for geometry.">for_each_point</a><MultiTag, true, MultiGeometry, Functor, IsConst>
+<a name="l00076"></a>00076     : detail::for_each::for_each_multi
+<a name="l00077"></a>00077         <
+<a name="l00078"></a>00078             MultiGeometry, 
+<a name="l00079"></a>00079             Functor, 
+<a name="l00080"></a>00080             IsConst,
+<a name="l00081"></a>00081             <span class="comment">// Specify the dispatch of the single-version as policy</span>
+<a name="l00082"></a>00082             for_each_point
+<a name="l00083"></a>00083                 <
+<a name="l00084"></a>00084                     typename single_tag<MultiTag>::type,
+<a name="l00085"></a>00085                     false,
+<a name="l00086"></a>00086                     typename boost::range_value<MultiGeometry>::type,
+<a name="l00087"></a>00087                     Functor,
+<a name="l00088"></a>00088                     IsConst
+<a name="l00089"></a>00089                 >
+<a name="l00090"></a>00090         >
+<a name="l00091"></a>00091 {};
+<a name="l00092"></a>00092 
+<a name="l00093"></a>00093 
+<a name="l00094"></a>00094 <span class="keyword">template</span> 
+<a name="l00095"></a>00095 <
+<a name="l00096"></a>00096     <span class="keyword">typename</span> MultiTag, 
+<a name="l00097"></a>00097     <span class="keyword">typename</span> MultiGeometry, 
+<a name="l00098"></a>00098     <span class="keyword">typename</span> Functor, 
+<a name="l00099"></a>00099     <span class="keywordtype">bool</span> IsConst
+<a name="l00100"></a>00100 >
+<a name="l00101"></a>00101 <span class="keyword">struct </span><a class="code" href="group__loop.html#ge8453eab0e9db146184d7ccef687a33e" title="Calls functor for segments on linestrings, rings, polygons, ...">for_each_segment</a><MultiTag, true, MultiGeometry, Functor, IsConst>
+<a name="l00102"></a>00102     : detail::for_each::for_each_multi
+<a name="l00103"></a>00103         <
+<a name="l00104"></a>00104             MultiGeometry, 
+<a name="l00105"></a>00105             Functor, 
+<a name="l00106"></a>00106             IsConst,
+<a name="l00107"></a>00107             <span class="comment">// Specify the dispatch of the single-version as policy</span>
+<a name="l00108"></a>00108             for_each_segment
+<a name="l00109"></a>00109                 <
+<a name="l00110"></a>00110                     typename single_tag<MultiTag>::type,
+<a name="l00111"></a>00111                     false,
+<a name="l00112"></a>00112                     typename boost::range_value<MultiGeometry>::type,
+<a name="l00113"></a>00113                     Functor,
+<a name="l00114"></a>00114                     IsConst
+<a name="l00115"></a>00115                 >
+<a name="l00116"></a>00116         >
+<a name="l00117"></a>00117 {};
+<a name="l00118"></a>00118 
+<a name="l00119"></a>00119 
+<a name="l00120"></a>00120 } <span class="comment">// namespace dispatch</span>
+<a name="l00121"></a>00121 <span class="preprocessor">#endif // DOXYGEN_NO_DISPATCH</span>
+<a name="l00122"></a>00122 <span class="preprocessor"></span>
+<a name="l00123"></a>00123 } <span class="comment">// namespace ggl</span>
+<a name="l00124"></a>00124 
+<a name="l00125"></a>00125 
+<a name="l00126"></a>00126 <span class="preprocessor">#endif // GGL_MULTI_ALGORITHMS_FOR_EACH_HPP</span>
+</pre></div></div>
+<hr size="1">
+<table width="100%">
+<tbody>
+<tr>
+<td align="left"><small>
+<p>October 13, 2009</p>
+</small></td>
+<td align="right">
+<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
+Copyright © 2008-2009 Bruno Lalande, Paris<br>
+Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
+</small>
+</td>
+</tr>
+</tbody>
+</table>
+
+<address style="text-align: right;"><small>
+Documentation is generated by Doxygen
+</small></address>
+</body>
+</html>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2algorithms_2length_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2algorithms_2length_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2algorithms_2length_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -43,35 +43,48 @@
 <h1>ggl/multi/algorithms/length.hpp</h1>Go to the documentation of this file.<div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">// Generic Geometry Library</span>
 <a name="l00002"></a>00002 <span class="comment">//</span>
 <a name="l00003"></a>00003 <span class="comment">// Copyright Barend Gehrels 1995-2009, Geodan Holding B.V. Amsterdam, the Netherlands.</span>
-<a name="l00004"></a>00004 <span class="comment">// Copyright Bruno Lalande 2008, 2009</span>
-<a name="l00005"></a>00005 <span class="comment">// Use, modification and distribution is subject to the Boost Software License,</span>
-<a name="l00006"></a>00006 <span class="comment">// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at</span>
-<a name="l00007"></a>00007 <span class="comment">// http://www.boost.org/LICENSE_1_0.txt)</span>
-<a name="l00008"></a>00008 
-<a name="l00009"></a>00009 <span class="preprocessor">#ifndef GGL_MULTI_LENGTH_HPP</span>
-<a name="l00010"></a>00010 <span class="preprocessor"></span><span class="preprocessor">#define GGL_MULTI_LENGTH_HPP</span>
-<a name="l00011"></a>00011 <span class="preprocessor"></span>
-<a name="l00012"></a>00012 <span class="preprocessor">#include <<a class="code" href="algorithms_2length_8hpp.html">ggl/algorithms/length.hpp</a>></span>
+<a name="l00004"></a>00004 <span class="comment">// Use, modification and distribution is subject to the Boost Software License,</span>
+<a name="l00005"></a>00005 <span class="comment">// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at</span>
+<a name="l00006"></a>00006 <span class="comment">// http://www.boost.org/LICENSE_1_0.txt)</span>
+<a name="l00007"></a>00007 
+<a name="l00008"></a>00008 <span class="preprocessor">#ifndef GGL_MULTI_ALGORITHMS_LENGTH_HPP</span>
+<a name="l00009"></a>00009 <span class="preprocessor"></span><span class="preprocessor">#define GGL_MULTI_ALGORITHMS_LENGTH_HPP</span>
+<a name="l00010"></a>00010 <span class="preprocessor"></span>
+<a name="l00011"></a>00011 <span class="preprocessor">#include <<a class="code" href="algorithms_2length_8hpp.html">ggl/algorithms/length.hpp</a>></span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include <<a class="code" href="multi_2core_2tags_8hpp.html">ggl/multi/core/tags.hpp</a>></span>
 <a name="l00013"></a>00013 <span class="preprocessor">#include <<a class="code" href="multi__sum_8hpp.html">ggl/multi/algorithms/detail/multi_sum.hpp</a>></span>
 <a name="l00014"></a>00014 
 <a name="l00015"></a>00015 <span class="keyword">namespace </span>ggl
 <a name="l00016"></a>00016 {
-<a name="l00017"></a>00017 <span class="preprocessor">#ifndef DOXYGEN_NO_DISPATCH</span>
-<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="keyword">namespace </span>dispatch
-<a name="l00019"></a>00019 {
-<a name="l00020"></a>00020     <span class="keyword">template</span> <<span class="keyword">typename</span> MG, <span class="keyword">typename</span> S>
-<a name="l00021"></a>00021     <span class="keyword">struct </span><a class="code" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa" title="Calculate length of a geometry.">length</a><multi_linestring_tag, MG, S>
-<a name="l00022"></a>00022             : detail::multi_sum<double, MG, S,
-<a name="l00023"></a>00023                     detail::length::range_length<typename boost::range_value<MG>::type, S> > {};
-<a name="l00024"></a>00024 
-<a name="l00025"></a>00025 } <span class="comment">// namespace dispatch</span>
-<a name="l00026"></a>00026 <span class="preprocessor">#endif</span>
-<a name="l00027"></a>00027 <span class="preprocessor"></span>
-<a name="l00028"></a>00028 
-<a name="l00029"></a>00029 } <span class="comment">// namespace ggl</span>
-<a name="l00030"></a>00030 
-<a name="l00031"></a>00031 
-<a name="l00032"></a>00032 <span class="preprocessor">#endif // GGL_MULTI_LENGTH_HPP</span>
+<a name="l00017"></a>00017 
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef DOXYGEN_NO_DISPATCH</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="keyword">namespace </span>dispatch
+<a name="l00020"></a>00020 {
+<a name="l00021"></a>00021 
+<a name="l00022"></a>00022 <span class="keyword">template</span> <<span class="keyword">typename</span> MultiLine<span class="keywordtype">string</span>, <span class="keyword">typename</span> Strategy>
+<a name="l00023"></a>00023 <span class="keyword">struct </span><a class="code" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf" title="Calculate length of a geometry.">length</a><multi_linestring_tag, MultiLinestring, Strategy>
+<a name="l00024"></a>00024     : detail::multi_sum
+<a name="l00025"></a>00025         <
+<a name="l00026"></a>00026             typename length_result<MultiLinestring>::type,
+<a name="l00027"></a>00027             MultiLinestring,
+<a name="l00028"></a>00028             Strategy,
+<a name="l00029"></a>00029             detail::length::range_length
+<a name="l00030"></a>00030                 <
+<a name="l00031"></a>00031                     typename boost::range_value<MultiLinestring>::type,
+<a name="l00032"></a>00032                     Strategy
+<a name="l00033"></a>00033                 >
+<a name="l00034"></a>00034         >
+<a name="l00035"></a>00035 {};
+<a name="l00036"></a>00036 
+<a name="l00037"></a>00037 
+<a name="l00038"></a>00038 } <span class="comment">// namespace dispatch</span>
+<a name="l00039"></a>00039 <span class="preprocessor">#endif</span>
+<a name="l00040"></a>00040 <span class="preprocessor"></span>
+<a name="l00041"></a>00041 
+<a name="l00042"></a>00042 } <span class="comment">// namespace ggl</span>
+<a name="l00043"></a>00043 
+<a name="l00044"></a>00044 
+<a name="l00045"></a>00045 <span class="preprocessor">#endif // GGL_MULTI_ALGORITHMS_LENGTH_HPP</span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2algorithms_2perimeter_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2algorithms_2perimeter_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2algorithms_2perimeter_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -48,31 +48,45 @@
 <a name="l00006"></a>00006 <span class="comment">// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at</span>
 <a name="l00007"></a>00007 <span class="comment">// http://www.boost.org/LICENSE_1_0.txt)</span>
 <a name="l00008"></a>00008 
-<a name="l00009"></a>00009 <span class="preprocessor">#ifndef GGL_MULTI_PERIMETER_HPP</span>
-<a name="l00010"></a>00010 <span class="preprocessor"></span><span class="preprocessor">#define GGL_MULTI_PERIMETER_HPP</span>
+<a name="l00009"></a>00009 <span class="preprocessor">#ifndef GGL_MULTI_ALGORITHMS_PERIMETER_HPP</span>
+<a name="l00010"></a>00010 <span class="preprocessor"></span><span class="preprocessor">#define GGL_MULTI_ALGORITHMS_PERIMETER_HPP</span>
 <a name="l00011"></a>00011 <span class="preprocessor"></span>
 <a name="l00012"></a>00012 <span class="preprocessor">#include <<a class="code" href="algorithms_2perimeter_8hpp.html">ggl/algorithms/perimeter.hpp</a>></span>
-<a name="l00013"></a>00013 <span class="preprocessor">#include <<a class="code" href="multi__sum_8hpp.html">ggl/multi/algorithms/detail/multi_sum.hpp</a>></span>
-<a name="l00014"></a>00014 
-<a name="l00015"></a>00015 <span class="keyword">namespace </span>ggl
-<a name="l00016"></a>00016 {
+<a name="l00013"></a>00013 
+<a name="l00014"></a>00014 <span class="preprocessor">#include <<a class="code" href="multi_2core_2tags_8hpp.html">ggl/multi/core/tags.hpp</a>></span>
+<a name="l00015"></a>00015 
+<a name="l00016"></a>00016 <span class="preprocessor">#include <<a class="code" href="multi__sum_8hpp.html">ggl/multi/algorithms/detail/multi_sum.hpp</a>></span>
 <a name="l00017"></a>00017 
-<a name="l00018"></a>00018 <span class="preprocessor">#ifndef DOXYGEN_NO_DISPATCH</span>
-<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="keyword">namespace </span>dispatch
-<a name="l00020"></a>00020 {
-<a name="l00021"></a>00021     <span class="keyword">template</span> <<span class="keyword">typename</span> MG, <span class="keyword">typename</span> S>
-<a name="l00022"></a>00022     <span class="keyword">struct </span><a class="code" href="group__perimeter.html#g7d52bc6ace3c3dbc9bdac84e6f0076ba" title="Calculate perimeter of a geometry.">perimeter</a><multi_polygon_tag, MG, S>
-<a name="l00023"></a>00023             : detail::multi_sum<double, MG, S,
-<a name="l00024"></a>00024                     detail::perimeter::polygon_perimeter<typename boost::range_value<MG>::type, S> > {};
-<a name="l00025"></a>00025 
-<a name="l00026"></a>00026 } <span class="comment">// namespace dispatch</span>
-<a name="l00027"></a>00027 <span class="preprocessor">#endif</span>
-<a name="l00028"></a>00028 <span class="preprocessor"></span>
-<a name="l00029"></a>00029 
-<a name="l00030"></a>00030 } <span class="comment">// namespace ggl</span>
-<a name="l00031"></a>00031 
-<a name="l00032"></a>00032 
-<a name="l00033"></a>00033 <span class="preprocessor">#endif // GGL_MULTI_PERIMETER_HPP</span>
+<a name="l00018"></a>00018 <span class="keyword">namespace </span>ggl
+<a name="l00019"></a>00019 {
+<a name="l00020"></a>00020 
+<a name="l00021"></a>00021 <span class="preprocessor">#ifndef DOXYGEN_NO_DISPATCH</span>
+<a name="l00022"></a>00022 <span class="preprocessor"></span><span class="keyword">namespace </span>dispatch
+<a name="l00023"></a>00023 {
+<a name="l00024"></a>00024 <span class="keyword">template</span> <<span class="keyword">typename</span> MultiPolygon, <span class="keyword">typename</span> Strategy>
+<a name="l00025"></a>00025 <span class="keyword">struct </span><a class="code" href="group__perimeter.html#g02588697f4c401400c3007d3ff091df9" title="Calculate perimeter of a geometry.">perimeter</a><multi_polygon_tag, MultiPolygon, Strategy>
+<a name="l00026"></a>00026     : detail::multi_sum
+<a name="l00027"></a>00027         <
+<a name="l00028"></a>00028             typename length_result<MultiPolygon>::type, 
+<a name="l00029"></a>00029             MultiPolygon, 
+<a name="l00030"></a>00030             Strategy,
+<a name="l00031"></a>00031             perimeter
+<a name="l00032"></a>00032                 <
+<a name="l00033"></a>00033                     polygon_tag,
+<a name="l00034"></a>00034                     typename boost::range_value<MultiPolygon>::type, 
+<a name="l00035"></a>00035                     Strategy
+<a name="l00036"></a>00036                 >
+<a name="l00037"></a>00037         > 
+<a name="l00038"></a>00038 {};
+<a name="l00039"></a>00039 
+<a name="l00040"></a>00040 } <span class="comment">// namespace dispatch</span>
+<a name="l00041"></a>00041 <span class="preprocessor">#endif</span>
+<a name="l00042"></a>00042 <span class="preprocessor"></span>
+<a name="l00043"></a>00043 
+<a name="l00044"></a>00044 } <span class="comment">// namespace ggl</span>
+<a name="l00045"></a>00045 
+<a name="l00046"></a>00046 
+<a name="l00047"></a>00047 <span class="preprocessor">#endif // GGL_MULTI_ALGORITHMS_PERIMETER_HPP</span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2core_2tags_8hpp.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2core_2tags_8hpp.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2core_2tags_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -59,6 +59,9 @@
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1multi__polygon__tag.html">ggl::multi_polygon_tag</a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">OGC Multi <a class="el" href="classggl_1_1polygon.html" title="The polygon contains an outer ring and zero or more inner rings.">polygon</a> identifying <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a>.  More...<br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1single__tag.html">ggl::single_tag< Tag ></a></td></tr>
+
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Meta-function to get for a <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a> of a multi-geometry the <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a> of the corresponding single-geometry.  More...<br></td></tr>
 <tr><td colspan="2"><br><h2>Namespaces</h2></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl.html">ggl</a></td></tr>
 
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2core_2tags_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2core_2tags_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi_2core_2tags_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -52,20 +52,52 @@
 <a name="l00010"></a>00010 <span class="preprocessor">#ifndef GGL_MULTI_CORE_TAGS_HPP</span>
 <a name="l00011"></a>00011 <span class="preprocessor"></span><span class="preprocessor">#define GGL_MULTI_CORE_TAGS_HPP</span>
 <a name="l00012"></a>00012 <span class="preprocessor"></span>
-<a name="l00013"></a>00013 <span class="keyword">namespace </span>ggl
-<a name="l00014"></a>00014 {
-<a name="l00015"></a>00015 
-<a name="l00017"></a><a class="code" href="structggl_1_1multi__point__tag.html">00017</a> <span class="keyword">struct </span><a class="code" href="structggl_1_1multi__point__tag.html" title="OGC Multi point identifying tag.">multi_point_tag</a> {};
-<a name="l00018"></a>00018 
-<a name="l00020"></a><a class="code" href="structggl_1_1multi__linestring__tag.html">00020</a> <span class="keyword">struct </span><a class="code" href="structggl_1_1multi__linestring__tag.html" title="OGC Multi linestring identifying tag.">multi_linestring_tag</a> {};
-<a name="l00021"></a>00021 
-<a name="l00023"></a><a class="code" href="structggl_1_1multi__polygon__tag.html">00023</a> <span class="keyword">struct </span><a class="code" href="structggl_1_1multi__polygon__tag.html" title="OGC Multi polygon identifying tag.">multi_polygon_tag</a> {};
-<a name="l00024"></a>00024 
-<a name="l00026"></a><a class="code" href="structggl_1_1geometry__collection__tag.html">00026</a> <span class="keyword">struct </span><a class="code" href="structggl_1_1geometry__collection__tag.html" title="OGC Geometry Collection identifying tag.">geometry_collection_tag</a> {};
-<a name="l00027"></a>00027 
-<a name="l00028"></a>00028 } <span class="comment">// namespace ggl</span>
+<a name="l00013"></a>00013 <span class="preprocessor">#include <<a class="code" href="core_2tags_8hpp.html">ggl/core/tags.hpp</a>></span>
+<a name="l00014"></a>00014 
+<a name="l00015"></a>00015 <span class="keyword">namespace </span>ggl
+<a name="l00016"></a>00016 {
+<a name="l00017"></a>00017 
+<a name="l00019"></a><a class="code" href="structggl_1_1multi__point__tag.html">00019</a> <span class="keyword">struct </span><a class="code" href="structggl_1_1multi__point__tag.html" title="OGC Multi point identifying tag.">multi_point_tag</a> {};
+<a name="l00020"></a>00020 
+<a name="l00022"></a><a class="code" href="structggl_1_1multi__linestring__tag.html">00022</a> <span class="keyword">struct </span><a class="code" href="structggl_1_1multi__linestring__tag.html" title="OGC Multi linestring identifying tag.">multi_linestring_tag</a> {};
+<a name="l00023"></a>00023 
+<a name="l00025"></a><a class="code" href="structggl_1_1multi__polygon__tag.html">00025</a> <span class="keyword">struct </span><a class="code" href="structggl_1_1multi__polygon__tag.html" title="OGC Multi polygon identifying tag.">multi_polygon_tag</a> {};
+<a name="l00026"></a>00026 
+<a name="l00028"></a><a class="code" href="structggl_1_1geometry__collection__tag.html">00028</a> <span class="keyword">struct </span><a class="code" href="structggl_1_1geometry__collection__tag.html" title="OGC Geometry Collection identifying tag.">geometry_collection_tag</a> {};
 <a name="l00029"></a>00029 
-<a name="l00030"></a>00030 <span class="preprocessor">#endif // GGL_MULTI_CORE_TAGS_HPP</span>
+<a name="l00030"></a>00030 
+<a name="l00031"></a>00031 
+<a name="l00032"></a>00032 
+<a name="l00037"></a>00037 <span class="keyword">template</span> <<span class="keyword">typename</span> Tag>
+<a name="l00038"></a><a class="code" href="structggl_1_1single__tag.html">00038</a> <span class="keyword">struct </span><a class="code" href="structggl_1_1single__tag.html" title="Meta-function to get for a tag of a multi-geometry the tag of the corresponding single-geometry...">single_tag</a>
+<a name="l00039"></a>00039 {};
+<a name="l00040"></a>00040 
+<a name="l00041"></a>00041 <span class="preprocessor">#ifndef DOXYGEN_NO_DETAIL</span>
+<a name="l00042"></a>00042 <span class="preprocessor"></span>
+<a name="l00043"></a>00043 <span class="keyword">template</span> <>
+<a name="l00044"></a>00044 <span class="keyword">struct </span><a class="code" href="structggl_1_1single__tag.html" title="Meta-function to get for a tag of a multi-geometry the tag of the corresponding single-geometry...">single_tag</a><<a class="code" href="structggl_1_1multi__point__tag.html" title="OGC Multi point identifying tag.">multi_point_tag</a>>
+<a name="l00045"></a>00045 {
+<a name="l00046"></a>00046     <span class="keyword">typedef</span> <a class="code" href="structggl_1_1point__tag.html" title="OGC Point identifying tag.">point_tag</a> type;
+<a name="l00047"></a>00047 };
+<a name="l00048"></a>00048 
+<a name="l00049"></a>00049 <span class="keyword">template</span> <>
+<a name="l00050"></a>00050 <span class="keyword">struct </span>single_tag<multi_linestring_tag>
+<a name="l00051"></a>00051 {
+<a name="l00052"></a>00052     <span class="keyword">typedef</span> linestring_tag type;
+<a name="l00053"></a>00053 };
+<a name="l00054"></a>00054 
+<a name="l00055"></a>00055 <span class="keyword">template</span> <>
+<a name="l00056"></a>00056 <span class="keyword">struct </span>single_tag<multi_polygon_tag>
+<a name="l00057"></a>00057 {
+<a name="l00058"></a>00058     <span class="keyword">typedef</span> polygon_tag type;
+<a name="l00059"></a>00059 };
+<a name="l00060"></a>00060 
+<a name="l00061"></a>00061 <span class="preprocessor">#endif</span>
+<a name="l00062"></a>00062 <span class="preprocessor"></span>
+<a name="l00063"></a>00063 
+<a name="l00064"></a>00064 } <span class="comment">// namespace ggl</span>
+<a name="l00065"></a>00065 
+<a name="l00066"></a>00066 <span class="preprocessor">#endif // GGL_MULTI_CORE_TAGS_HPP</span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi__sum_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi__sum_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/multi__sum_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -62,38 +62,37 @@
 <a name="l00020"></a>00020 
 <a name="l00021"></a>00021 <span class="keyword">template</span>
 <a name="l00022"></a>00022 <
-<a name="l00023"></a>00023     <span class="keyword">typename</span> T,
+<a name="l00023"></a>00023     <span class="keyword">typename</span> ReturnType,
 <a name="l00024"></a>00024     <span class="keyword">typename</span> MultiGeometry,
 <a name="l00025"></a>00025     <span class="keyword">typename</span> Strategy,
 <a name="l00026"></a>00026     <span class="keyword">typename</span> Policy
 <a name="l00027"></a>00027 >
 <a name="l00028"></a>00028 <span class="keyword">struct </span>multi_sum
 <a name="l00029"></a>00029 {
-<a name="l00030"></a>00030     <span class="keyword">static</span> <span class="keyword">inline</span> T apply(MultiGeometry <span class="keyword">const</span>& geometry, Strategy <span class="keyword">const</span>& strategy)
+<a name="l00030"></a>00030     <span class="keyword">static</span> <span class="keyword">inline</span> ReturnType apply(MultiGeometry <span class="keyword">const</span>& geometry, Strategy <span class="keyword">const</span>& strategy)
 <a name="l00031"></a>00031     {
-<a name="l00032"></a>00032         <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::range_const_iterator
-<a name="l00033"></a>00033             <
-<a name="l00034"></a>00034                 MultiGeometry
-<a name="l00035"></a>00035             >::type iterator_type;
-<a name="l00036"></a>00036         T sum = T();
-<a name="l00037"></a>00037         <span class="keywordflow">for</span> (iterator_type it = boost::begin(geometry);
-<a name="l00038"></a>00038             it != boost::end(geometry);
-<a name="l00039"></a>00039             ++it)
-<a name="l00040"></a>00040         {
-<a name="l00041"></a>00041             sum += Policy::apply(*it, strategy);
-<a name="l00042"></a>00042         }
-<a name="l00043"></a>00043         <span class="keywordflow">return</span> sum;
-<a name="l00044"></a>00044     }
-<a name="l00045"></a>00045 };
+<a name="l00032"></a>00032         ReturnType sum = ReturnType();
+<a name="l00033"></a>00033         <span class="keywordflow">for</span> (<span class="keyword">typename</span> boost::range_const_iterator
+<a name="l00034"></a>00034                 <
+<a name="l00035"></a>00035                     MultiGeometry
+<a name="l00036"></a>00036                 >::type it = boost::begin(geometry);
+<a name="l00037"></a>00037             it != boost::end(geometry);
+<a name="l00038"></a>00038             ++it)
+<a name="l00039"></a>00039         {
+<a name="l00040"></a>00040             sum += Policy::apply(*it, strategy);
+<a name="l00041"></a>00041         }
+<a name="l00042"></a>00042         <span class="keywordflow">return</span> sum;
+<a name="l00043"></a>00043     }
+<a name="l00044"></a>00044 };
+<a name="l00045"></a>00045 
 <a name="l00046"></a>00046 
-<a name="l00047"></a>00047 
-<a name="l00048"></a>00048 } <span class="comment">// namespace detail</span>
-<a name="l00049"></a>00049 <span class="preprocessor">#endif</span>
-<a name="l00050"></a>00050 <span class="preprocessor"></span>
-<a name="l00051"></a>00051 } <span class="comment">// namespace ggl</span>
+<a name="l00047"></a>00047 } <span class="comment">// namespace detail</span>
+<a name="l00048"></a>00048 <span class="preprocessor">#endif</span>
+<a name="l00049"></a>00049 <span class="preprocessor"></span>
+<a name="l00050"></a>00050 } <span class="comment">// namespace ggl</span>
+<a name="l00051"></a>00051 
 <a name="l00052"></a>00052 
-<a name="l00053"></a>00053 
-<a name="l00054"></a>00054 <span class="preprocessor">#endif // GGL_MULTI_SUM_HPP</span>
+<a name="l00053"></a>00053 <span class="preprocessor">#endif // GGL_MULTI_SUM_HPP</span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespaceggl.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespaceggl.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespaceggl.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -60,6 +60,7 @@
 <tr><td colspan="2"><br><h2>Classes</h2></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1area__result.html">area_result</a></td></tr>
 
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Meta-function defining return type of area function.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1as__range__type.html">as_range_type</a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Meta-function utility returning either type itself, or outer ring.  More...<br></td></tr>
@@ -136,6 +137,9 @@
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1is__radian.html">is_radian</a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Meta-function to verify if a coordinate system is <a class="el" href="classggl_1_1radian.html" title="Unit of plan angles: radians.">radian</a>.  More...<br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1length__result.html">length_result</a></td></tr>
+
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Meta-function defining return type of length function.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1less.html">less</a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Less predicate for usage in e.g. std::map.  More...<br></td></tr>
@@ -211,9 +215,9 @@
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1sections.html">sections</a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Structure containing a collection of <a class="el" href="structggl_1_1sections.html" title="Structure containing a collection of sections.">sections</a>.  More...<br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment.html">segment</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1segment.html">segment</a></td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Class <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>: small containing two (templatized) <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> references.  More...<br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Class <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>: small class containing two (templatized) <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> references.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment__identifier.html">segment_identifier</a></td></tr>
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment__intersection__points.html">segment_intersection_points</a></td></tr>
@@ -222,13 +226,16 @@
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment__tag.html">segment_tag</a></td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Convenience <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> (2-points) identifying <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a>.  More...<br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Convenience <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> (2-points) identifying <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a>.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1select__coordinate__type.html">select_coordinate_type</a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Utility selecting the most precise coordinate type of two geometries.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1select__most__precise.html">select_most_precise</a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Traits class to select, of two types, the most accurate type for calculations.  More...<br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1single__tag.html">single_tag</a></td></tr>
+
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Meta-function to get for a <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a> of a multi-geometry the <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a> of the corresponding single-geometry.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1spherical__tag.html">spherical_tag</a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Tag indicating Spherical coordinate system family (spherical,celestial,...).  More...<br></td></tr>
@@ -314,7 +321,7 @@
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classggl_1_1linear__ring.html">linear_ring</a>< <a class="el" href="classggl_1_1point.html">point_3d</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl.html#fd5b225988bbf3d618978942a9e61b18">ring_3d</a></td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structggl_1_1segment.html">segment</a>< <a class="el" href="classggl_1_1point__xy.html">point_2d</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl.html#51ce3d75ac1988b5ed73cb3598da522b">segment_2d</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classggl_1_1segment.html">segment</a>< <a class="el" href="classggl_1_1point__xy.html">point_2d</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl.html#51ce3d75ac1988b5ed73cb3598da522b">segment_2d</a></td></tr>
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classggl_1_1nsphere.html">nsphere</a>< <a class="el" href="classggl_1_1point.html">point_3d</a>, double > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl.html#86293a2a12226b524f011818d22fbcaa">sphere</a></td></tr>
 
@@ -345,10 +352,9 @@
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate area of a geometry using a <a class="el" href="namespaceggl_1_1strategy.html">strategy</a>.  <br></td></tr>
 <tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structggl_1_1area__result.html">area_result</a>< Geometry ><br class="typebreak">
-::return_type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3">area</a> (Geometry const &geometry)</td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structggl_1_1area__result.html">area_result</a>< Geometry >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d">area</a> (Geometry const &geometry)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate area of a geometry.  <br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate area of a geometry.  <br></td></tr>
 <tr><td class="memTemplParams" nowrap colspan="2">template<typename Range , typename Geometry > </td></tr>
 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Range & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#99e0a8eac282cd44fbdb1a47666ea084">as_range</a> (Geometry &input)</td></tr>
 
@@ -506,86 +512,26 @@
 <tr><td class="memTemplParams" nowrap colspan="2">template<typename Point , typename Op > </td></tr>
 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#578a218a60843891321b599d222090db">for_each_coordinate</a> (Point &<a class="el" href="classggl_1_1point.html">point</a>, Op operation)</td></tr>
 
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename Y , template< typename, typename > class V, template< typename > class A, typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#3b3b5c7184cabf25d464055befdf771f">for_each_point</a> (const <a class="el" href="structggl_1_1multi__polygon.html">multi_polygon</a>< Y, V, A > &mp, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename L , template< typename, typename > class V, template< typename > class A, typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#9d56089829983b18a5647668a81f625d">for_each_point</a> (const <a class="el" href="structggl_1_1multi__linestring.html">multi_linestring</a>< L, V, A > &ml, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename P , template< typename, typename > class V, template< typename > class A, typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#e8a2e92fd956aa3df683a612f14ba677">for_each_point</a> (const <a class="el" href="structggl_1_1multi__point.html">multi_point</a>< P, V, A > &mp, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename Y , template< typename, typename > class V, template< typename > class A, typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#500ee15ef99a75697def76e4438f24f7">for_each_point</a> (<a class="el" href="structggl_1_1multi__polygon.html">multi_polygon</a>< Y, V, A > &mp, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename L , template< typename, typename > class V, template< typename > class A, typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#2b3c62431652f833fa2d549c6b7e3c3c">for_each_point</a> (<a class="el" href="structggl_1_1multi__linestring.html">multi_linestring</a>< L, V, A > &ml, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename P , template< typename, typename > class V, template< typename > class A, typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#cbb57ed0b758231c53971362af3a0761">for_each_point</a> (<a class="el" href="structggl_1_1multi__point.html">multi_point</a>< P, V, A > &mp, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename G , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#gbce8332305fc715d4587e7d78c21e4aa">for_each_point</a> (G &geometry, F f)</td></tr>
-
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for geometry.  <br></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename G , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a">for_each_point</a> (G const &geometry, F f)</td></tr>
-
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for geometry.  <br></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename ML , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#77d4fc4a0165db7675e78b290f93a638">for_each_point_multi_linestring</a> (const ML &ml, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename ML , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#25386b22f7cdbb3f4cb1f39b5a454e79">for_each_point_multi_linestring</a> (ML &ml, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename MP , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#e90a5c12e70988e6ab8886a407ded929">for_each_point_multi_point</a> (const MP &mp, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename MP , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#583292e2af8b5e8c473c66032028924f">for_each_point_multi_point</a> (MP &mp, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename MY , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#5d6800969a6bf28a35785e3c9eb5b0ea">for_each_point_multi_polygon</a> (const MY &mp, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename MY , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#0da7e7dff53b5f6382a1bb83efc5b4a8">for_each_point_multi_polygon</a> (MY &mp, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename Y , template< typename, typename > class V, template< typename > class A, typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#326e05f4a599d0a732b4ee83ec9ea0cc">for_each_segment</a> (const <a class="el" href="structggl_1_1multi__polygon.html">multi_polygon</a>< Y, V, A > &mp, F f)</td></tr>
+<tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry , typename Functor > </td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Functor </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#g66bf40f0ee4dc883d9d3b621aeb2e81d">for_each_point</a> (Geometry &geometry, Functor f)</td></tr>
 
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename L , template< typename, typename > class V, template< typename > class A, typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#9b9e2763881a4191b54d44ba48b483e2">for_each_segment</a> (const <a class="el" href="structggl_1_1multi__linestring.html">multi_linestring</a>< L, V, A > &ml, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename Y , template< typename, typename > class V, template< typename > class A, typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#4f2108bb3eff47320d5c2e6c545b7df9">for_each_segment</a> (<a class="el" href="structggl_1_1multi__polygon.html">multi_polygon</a>< Y, V, A > &mp, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename L , template< typename, typename > class V, template< typename > class A, typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#aab7ca3216793f5eb31dfc7b00294491">for_each_segment</a> (<a class="el" href="structggl_1_1multi__linestring.html">multi_linestring</a>< L, V, A > &ml, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename G , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#gf3b5b3004fc802700882f9f4a184564a">for_each_segment</a> (G &geometry, F f)</td></tr>
-
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for segments on linestrings, rings, polygons, ...  <br></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename G , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#gefcad88c6ee4e308e1003eff7752b3f3">for_each_segment</a> (const G &geometry, F f)</td></tr>
-
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for segments on linestrings, rings, polygons, ...  <br></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename ML , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#6dd128fb1487f8b269d888721a10f23b">for_each_segment_multi_linestring</a> (const ML &ml, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename ML , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#2ff9b5d4ab8ade0181c804bee391b26c">for_each_segment_multi_linestring</a> (ML &ml, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename MY , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#c16f604abd7cd129b20fa49255a1838e">for_each_segment_multi_polygon</a> (const MY &mp, F f)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename MY , typename F > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">F </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespaceggl.html#c07b4972809b53d2720a357b57aa840b">for_each_segment_multi_polygon</a> (MY &mp, F f)</td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for geometry.  <br></td></tr>
+<tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry , typename Functor > </td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Functor </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#g0cdb7f23bf7395ba3f385e9cf01a601f">for_each_point</a> (Geometry const &geometry, Functor f)</td></tr>
+
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for geometry.  <br></td></tr>
+<tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry , typename Functor > </td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Functor </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#g529f5655aa7702e9f143263b484ff91b">for_each_segment</a> (Geometry &geometry, Functor f)</td></tr>
+
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for segments on linestrings, rings, polygons, ...  <br></td></tr>
+<tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry , typename Functor > </td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Functor </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#ge8453eab0e9db146184d7ccef687a33e">for_each_segment</a> (Geometry const &geometry, Functor f)</td></tr>
 
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calls functor for segments on linestrings, rings, polygons, ...  <br></td></tr>
 <tr><td class="memTemplParams" nowrap colspan="2">template<std::size_t I, std::size_t D, typename G > </td></tr>
 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structggl_1_1coordinate__type.html">coordinate_type</a>< G >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__access.html#gd3c007fcbae837d56d13aa77ed03f920">get</a> (const G &geometry, detail::signature_getset_index_dimension *dummy=0)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">get a coordinate value of a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> / <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>  <br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">get a coordinate value of a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> / <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>  <br></td></tr>
 <tr><td class="memTemplParams" nowrap colspan="2">template<std::size_t D, typename G > </td></tr>
 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structggl_1_1coordinate__type.html">coordinate_type</a>< G >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__access.html#g6cf833a7f9622af2fc05fd94aa61153f">get</a> (const G &geometry, detail::signature_getset_dimension *dummy=0)</td></tr>
 
@@ -630,14 +576,14 @@
 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__overlay.html#g5e7b5d7c8e010077237751f3a6b289ec">intersects</a> (Geometry const &geometry)</td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Determine if there is at least one intersection (crossing or self-tangency).  <br></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename G , typename S > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">double </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__length.html#ge20f9cdc37ebded2be03934edb05c3dd">length</a> (G const &geometry, S const &strategy)</td></tr>
+<tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry , typename Strategy > </td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structggl_1_1length__result.html">length_result</a>< Geometry >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__length.html#gc25f493cf56a02b9f0077e18a444bed8">length</a> (Geometry const &geometry, Strategy const &strategy)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate length of a geometry.  <br></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template<typename G > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">double </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa">length</a> (const G &geometry)</td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate length of a geometry.  <br></td></tr>
+<tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry > </td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structggl_1_1length__result.html">length_result</a>< Geometry >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf">length</a> (Geometry const &geometry)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate length of a geometry.  <br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate length of a geometry.  <br></td></tr>
 <tr><td class="memTemplParams" nowrap colspan="2">template<typename R , typename F , typename S > </td></tr>
 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__loop.html#g1ff95a74f261e15dfa714146bdcbf23f">loop</a> (R const &range, F const &functor, S &state)</td></tr>
 
@@ -724,13 +670,13 @@
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Determines overlap between two geometries.  <br></td></tr>
 <tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry , typename Strategy > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">double </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__perimeter.html#g840995936a96075829b48a29a4a33b19">perimeter</a> (Geometry const &geometry, Strategy const &strategy)</td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structggl_1_1length__result.html">length_result</a>< Geometry >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__perimeter.html#g78c3f8a2c3eed80533521425079cdf55">perimeter</a> (Geometry const &geometry, Strategy const &strategy)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate perimeter of a geometry.  <br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate perimeter of a geometry.  <br></td></tr>
 <tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">double </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__perimeter.html#g7d52bc6ace3c3dbc9bdac84e6f0076ba">perimeter</a> (Geometry const &geometry)</td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structggl_1_1length__result.html">length_result</a>< Geometry >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__perimeter.html#g02588697f4c401400c3007d3ff091df9">perimeter</a> (Geometry const &geometry)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate perimeter of a geometry.  <br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate perimeter of a geometry.  <br></td></tr>
 <tr><td class="memTemplParams" nowrap colspan="2">template<typename Geometry , typename Sections > </td></tr>
 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__sectionalize.html#g94c69212e1ba4829515eb5a31acd29e1">sectionalize</a> (Geometry const &geometry, Sections &<a class="el" href="structggl_1_1sections.html">sections</a>)</td></tr>
 
@@ -742,7 +688,7 @@
 <tr><td class="memTemplParams" nowrap colspan="2">template<std::size_t I, std::size_t D, typename G > </td></tr>
 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__access.html#g6ced3f6383c5e664984c54a36a1d78a2">set</a> (G &geometry, const typename <a class="el" href="structggl_1_1coordinate__type.html">coordinate_type</a>< G >::type &value, detail::signature_getset_index_dimension *dummy=0)</td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">assign a coordinate value of a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> / <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>  <br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">assign a coordinate value of a <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a> / <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>  <br></td></tr>
 <tr><td class="memTemplParams" nowrap colspan="2">template<std::size_t D, typename G > </td></tr>
 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="group__access.html#g411ad2eab588e3fa0f0a3d35c79cbb4a">set</a> (G &geometry, const typename <a class="el" href="structggl_1_1coordinate__type.html">coordinate_type</a>< G >::type &value, detail::signature_getset_dimension *dummy=0)</td></tr>
 
@@ -901,7 +847,7 @@
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef <a class="el" href="structggl_1_1segment.html">segment</a><<a class="el" href="classggl_1_1point__xy.html">point_2d</a>> <a class="el" href="structggl_1_1segment.html">ggl::segment_2d</a>          </td>
+          <td class="memname">typedef <a class="el" href="classggl_1_1segment.html">segment</a><<a class="el" href="classggl_1_1point__xy.html">point_2d</a>> <a class="el" href="classggl_1_1segment.html">ggl::segment_2d</a>          </td>
         </tr>
       </table>
 </div>
@@ -1386,666 +1332,6 @@
 
 </div>
 </div><p>
-<a class="anchor" name="583292e2af8b5e8c473c66032028924f"></a><!-- doxytag: member="ggl::for_each_point_multi_point" ref="583292e2af8b5e8c473c66032028924f" args="(MP &mp, F f)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename MP , typename F > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">F ggl::for_each_point_multi_point           </td>
-          <td>(</td>
-          <td class="paramtype">MP & </td>
-          <td class="paramname"> <em>mp</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">F </td>
-          <td class="paramname"> <em>f</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="foreach_8hpp_source.html#l00023">23</a> of file <a class="el" href="foreach_8hpp_source.html">foreach.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="25386b22f7cdbb3f4cb1f39b5a454e79"></a><!-- doxytag: member="ggl::for_each_point_multi_linestring" ref="25386b22f7cdbb3f4cb1f39b5a454e79" args="(ML &ml, F f)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename ML , typename F > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">F ggl::for_each_point_multi_linestring           </td>
-          <td>(</td>
-          <td class="paramtype">ML & </td>
-          <td class="paramname"> <em>ml</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">F </td>
-          <td class="paramname"> <em>f</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="foreach_8hpp_source.html#l00029">29</a> of file <a class="el" href="foreach_8hpp_source.html">foreach.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="0da7e7dff53b5f6382a1bb83efc5b4a8"></a><!-- doxytag: member="ggl::for_each_point_multi_polygon" ref="0da7e7dff53b5f6382a1bb83efc5b4a8" args="(MY &mp, F f)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename MY , typename F > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">F ggl::for_each_point_multi_polygon           </td>
-          <td>(</td>
-          <td class="paramtype">MY & </td>
-          <td class="paramname"> <em>mp</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">F </td>
-          <td class="paramname"> <em>f</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="foreach_8hpp_source.html#l00039">39</a> of file <a class="el" href="foreach_8hpp_source.html">foreach.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="e90a5c12e70988e6ab8886a407ded929"></a><!-- doxytag: member="ggl::for_each_point_multi_point" ref="e90a5c12e70988e6ab8886a407ded929" args="(const MP &mp, F f)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename MP , typename F > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">F ggl::for_each_point_multi_point           </td>
-          <td>(</td>
-          <td class="paramtype">const MP & </td>
-          <td class="paramname"> <em>mp</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">F </td>
-          <td class="paramname"> <em>f</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="foreach_8hpp_source.html#l00052">52</a> of file <a class="el" href="foreach_8hpp_source.html">foreach.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="77d4fc4a0165db7675e78b290f93a638"></a><!-- doxytag: member="ggl::for_each_point_multi_linestring" ref="77d4fc4a0165db7675e78b290f93a638" args="(const ML &ml, F f)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename ML , typename F > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">F ggl::for_each_point_multi_linestring           </td>
-          <td>(</td>
-          <td class="paramtype">const ML & </td>
-          <td class="paramname"> <em>ml</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">F </td>
-          <td class="paramname"> <em>f</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="foreach_8hpp_source.html#l00059">59</a> of file <a class="el" href="foreach_8hpp_source.html">foreach.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="5d6800969a6bf28a35785e3c9eb5b0ea"></a><!-- doxytag: member="ggl::for_each_point_multi_polygon" ref="5d6800969a6bf28a35785e3c9eb5b0ea" args="(const MY &mp, F f)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename MY , typename F > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">F ggl::for_each_point_multi_polygon           </td>
-          <td>(</td>
-          <td class="paramtype">const MY & </td>
-          <td class="paramname"> <em>mp</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">F </td>
-          <td class="paramname"> <em>f</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="foreach_8hpp_source.html#l00069">69</a> of file <a class="el" href="foreach_8hpp_source.html">foreach.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="2ff9b5d4ab8ade0181c804bee391b26c"></a><!-- doxytag: member="ggl::for_each_segment_multi_linestring" ref="2ff9b5d4ab8ade0181c804bee391b26c" args="(ML &ml, F f)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename ML , typename F > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">F ggl::for_each_segment_multi_linestring           </td>
-          <td>(</td>
-          <td class="paramtype">ML & </td>
-          <td class="paramname"> <em>ml</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">F </td>
-          <td class="paramname"> <em>f</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="foreach_8hpp_source.html#l00081">81</a> of file <a class="el" href="foreach_8hpp_source.html">foreach.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="c07b4972809b53d2720a357b57aa840b"></a><!-- doxytag: member="ggl::for_each_segment_multi_polygon" ref="c07b4972809b53d2720a357b57aa840b" args="(MY &mp, F f)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename MY , typename F > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">F ggl::for_each_segment_multi_polygon           </td>
-          <td>(</td>
-          <td class="paramtype">MY & </td>
-          <td class="paramname"> <em>mp</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">F </td>
-          <td class="paramname"> <em>f</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="foreach_8hpp_source.html#l00091">91</a> of file <a class="el" href="foreach_8hpp_source.html">foreach.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="6dd128fb1487f8b269d888721a10f23b"></a><!-- doxytag: member="ggl::for_each_segment_multi_linestring" ref="6dd128fb1487f8b269d888721a10f23b" args="(const ML &ml, F f)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename ML , typename F > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">F ggl::for_each_segment_multi_linestring           </td>
-          <td>(</td>
-          <td class="paramtype">const ML & </td>
-          <td class="paramname"> <em>ml</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">F </td>
-          <td class="paramname"> <em>f</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="foreach_8hpp_source.html#l00106">106</a> of file <a class="el" href="foreach_8hpp_source.html">foreach.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="c16f604abd7cd129b20fa49255a1838e"></a><!-- doxytag: member="ggl::for_each_segment_multi_polygon" ref="c16f604abd7cd129b20fa49255a1838e" args="(const MY &mp, F f)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename MY , typename F > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">F ggl::for_each_segment_multi_polygon           </td>
-          <td>(</td>
-          <td class="paramtype">const MY & </td>
-          <td class="paramname"> <em>mp</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">F </td>
-          <td class="paramname"> <em>f</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="foreach_8hpp_source.html#l00116">116</a> of file <a class="el" href="foreach_8hpp_source.html">foreach.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="cbb57ed0b758231c53971362af3a0761"></a><!-- doxytag: member="ggl::for_each_point" ref="cbb57ed0b758231c53971362af3a0761" args="(multi_point< P, V, A > &mp, F f)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename P , template< typename, typename > class V, template< typename > class A, typename F > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">F ggl::for_each_point           </td>
-          <td>(</td>
-          <td class="paramtype">multi_point< P, V, A > & </td>
-          <td class="paramname"> <em>mp</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">F </td>
-          <td class="paramname"> <em>f</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="foreach_8hpp_source.html#l00133">133</a> of file <a class="el" href="foreach_8hpp_source.html">foreach.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="2b3c62431652f833fa2d549c6b7e3c3c"></a><!-- doxytag: member="ggl::for_each_point" ref="2b3c62431652f833fa2d549c6b7e3c3c" args="(multi_linestring< L, V, A > &ml, F f)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename L , template< typename, typename > class V, template< typename > class A, typename F > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">F ggl::for_each_point           </td>
-          <td>(</td>
-          <td class="paramtype">multi_linestring< L, V, A > & </td>
-          <td class="paramname"> <em>ml</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">F </td>
-          <td class="paramname"> <em>f</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="foreach_8hpp_source.html#l00141">141</a> of file <a class="el" href="foreach_8hpp_source.html">foreach.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="500ee15ef99a75697def76e4438f24f7"></a><!-- doxytag: member="ggl::for_each_point" ref="500ee15ef99a75697def76e4438f24f7" args="(multi_polygon< Y, V, A > &mp, F f)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename Y , template< typename, typename > class V, template< typename > class A, typename F > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">F ggl::for_each_point           </td>
-          <td>(</td>
-          <td class="paramtype">multi_polygon< Y, V, A > & </td>
-          <td class="paramname"> <em>mp</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">F </td>
-          <td class="paramname"> <em>f</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="foreach_8hpp_source.html#l00149">149</a> of file <a class="el" href="foreach_8hpp_source.html">foreach.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="e8a2e92fd956aa3df683a612f14ba677"></a><!-- doxytag: member="ggl::for_each_point" ref="e8a2e92fd956aa3df683a612f14ba677" args="(const multi_point< P, V, A > &mp, F f)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename P , template< typename, typename > class V, template< typename > class A, typename F > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">F ggl::for_each_point           </td>
-          <td>(</td>
-          <td class="paramtype">const multi_point< P, V, A > & </td>
-          <td class="paramname"> <em>mp</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">F </td>
-          <td class="paramname"> <em>f</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="foreach_8hpp_source.html#l00160">160</a> of file <a class="el" href="foreach_8hpp_source.html">foreach.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="9d56089829983b18a5647668a81f625d"></a><!-- doxytag: member="ggl::for_each_point" ref="9d56089829983b18a5647668a81f625d" args="(const multi_linestring< L, V, A > &ml, F f)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename L , template< typename, typename > class V, template< typename > class A, typename F > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">F ggl::for_each_point           </td>
-          <td>(</td>
-          <td class="paramtype">const multi_linestring< L, V, A > & </td>
-          <td class="paramname"> <em>ml</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">F </td>
-          <td class="paramname"> <em>f</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="foreach_8hpp_source.html#l00168">168</a> of file <a class="el" href="foreach_8hpp_source.html">foreach.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="3b3b5c7184cabf25d464055befdf771f"></a><!-- doxytag: member="ggl::for_each_point" ref="3b3b5c7184cabf25d464055befdf771f" args="(const multi_polygon< Y, V, A > &mp, F f)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename Y , template< typename, typename > class V, template< typename > class A, typename F > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">F ggl::for_each_point           </td>
-          <td>(</td>
-          <td class="paramtype">const multi_polygon< Y, V, A > & </td>
-          <td class="paramname"> <em>mp</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">F </td>
-          <td class="paramname"> <em>f</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="foreach_8hpp_source.html#l00177">177</a> of file <a class="el" href="foreach_8hpp_source.html">foreach.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="aab7ca3216793f5eb31dfc7b00294491"></a><!-- doxytag: member="ggl::for_each_segment" ref="aab7ca3216793f5eb31dfc7b00294491" args="(multi_linestring< L, V, A > &ml, F f)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename L , template< typename, typename > class V, template< typename > class A, typename F > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">F ggl::for_each_segment           </td>
-          <td>(</td>
-          <td class="paramtype">multi_linestring< L, V, A > & </td>
-          <td class="paramname"> <em>ml</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">F </td>
-          <td class="paramname"> <em>f</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="foreach_8hpp_source.html#l00188">188</a> of file <a class="el" href="foreach_8hpp_source.html">foreach.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="4f2108bb3eff47320d5c2e6c545b7df9"></a><!-- doxytag: member="ggl::for_each_segment" ref="4f2108bb3eff47320d5c2e6c545b7df9" args="(multi_polygon< Y, V, A > &mp, F f)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename Y , template< typename, typename > class V, template< typename > class A, typename F > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">F ggl::for_each_segment           </td>
-          <td>(</td>
-          <td class="paramtype">multi_polygon< Y, V, A > & </td>
-          <td class="paramname"> <em>mp</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">F </td>
-          <td class="paramname"> <em>f</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="foreach_8hpp_source.html#l00196">196</a> of file <a class="el" href="foreach_8hpp_source.html">foreach.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="9b9e2763881a4191b54d44ba48b483e2"></a><!-- doxytag: member="ggl::for_each_segment" ref="9b9e2763881a4191b54d44ba48b483e2" args="(const multi_linestring< L, V, A > &ml, F f)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename L , template< typename, typename > class V, template< typename > class A, typename F > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">F ggl::for_each_segment           </td>
-          <td>(</td>
-          <td class="paramtype">const multi_linestring< L, V, A > & </td>
-          <td class="paramname"> <em>ml</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">F </td>
-          <td class="paramname"> <em>f</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="foreach_8hpp_source.html#l00207">207</a> of file <a class="el" href="foreach_8hpp_source.html">foreach.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="326e05f4a599d0a732b4ee83ec9ea0cc"></a><!-- doxytag: member="ggl::for_each_segment" ref="326e05f4a599d0a732b4ee83ec9ea0cc" args="(const multi_polygon< Y, V, A > &mp, F f)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename Y , template< typename, typename > class V, template< typename > class A, typename F > </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">F ggl::for_each_segment           </td>
-          <td>(</td>
-          <td class="paramtype">const multi_polygon< Y, V, A > & </td>
-          <td class="paramname"> <em>mp</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">F </td>
-          <td class="paramname"> <em>f</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="foreach_8hpp_source.html#l00215">215</a> of file <a class="el" href="foreach_8hpp_source.html">foreach.hpp</a>.</p>
-
-</div>
-</div><p>
 <a class="anchor" name="99e0a8eac282cd44fbdb1a47666ea084"></a><!-- doxytag: member="ggl::as_range" ref="99e0a8eac282cd44fbdb1a47666ea084" args="(Geometry &input)" -->
 <div class="memitem">
 <div class="memproto">
@@ -2213,7 +1499,7 @@
 <p>
 <dl compact><dt><b>Examples: </b></dt><dd>
 <a class="el" href="01__point__example_8cpp-example.html#a3">01_point_example.cpp</a>, <a class="el" href="02__linestring__example_8cpp-example.html#a5">02_linestring_example.cpp</a>, <a class="el" href="03__polygon__example_8cpp-example.html#a3">03_polygon_example.cpp</a>, <a class="el" href="06__transformation__example_8cpp-example.html#a3">06_transformation_example.cpp</a>, <a class="el" href="c01__custom__point__example_8cpp-example.html#a4">c01_custom_point_example.cpp</a>, <a class="el" href="c02__custom__box__example_8cpp-example.html#a4">c02_custom_box_example.cpp</a>, <a class="el" href="c04__a__custom__triangle__example_8cpp-example.html#a1">c04_a_custom_triangle_example.cpp</a>, <a class="el" href="c04__b__custom__triangle__example_8cpp-example.html#a3">c04_b_custom_triangle_example.cpp</a>, <a class="el" href="x01__qt__example_8cpp-example.html#a4">x01_qt_example.cpp</a>, <a class="el" href="x03__a__soci__example_8cpp-example.html#a0">x03_a_soci_example.cpp</a>, and <a class="el" href="x03__b__s
oci__example_8cpp-example.html#a1">x03_b_soci_example.cpp</a>.</dl>
-<p>Definition at line <a class="el" href="write__dsv_8hpp_source.html#l00355">355</a> of file <a class="el" href="write__dsv_8hpp_source.html">write_dsv.hpp</a>.</p>
+<p>Definition at line <a class="el" href="write__dsv_8hpp_source.html#l00375">375</a> of file <a class="el" href="write__dsv_8hpp_source.html">write_dsv.hpp</a>.</p>
 
 </div>
 </div><p>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespaceggl_1_1concept.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespaceggl_1_1concept.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespaceggl_1_1concept.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -94,7 +94,7 @@
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Checks (linear) <a class="el" href="structggl_1_1concept_1_1_ring.html" title="Checks (linear) Ring concept, using Boost Concept Check Library and metafunctions...">Ring</a> <a class="el" href="namespaceggl_1_1concept.html">concept</a>, using Boost Concept Check Library and metafunctions.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1concept_1_1_segment.html">Segment</a></td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Checks <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> <a class="el" href="namespaceggl_1_1concept.html">concept</a>, using Boost Concept Check Library and metafunctions.  More...<br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Checks <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> <a class="el" href="namespaceggl_1_1concept.html">concept</a>, using Boost Concept Check Library and metafunctions.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1concept_1_1_simplify_strategy.html">SimplifyStrategy</a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Checks <a class="el" href="namespaceggl_1_1strategy.html">strategy</a> for simplify.  More...<br></td></tr>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespaceggl_1_1strategy.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespaceggl_1_1strategy.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespaceggl_1_1strategy.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -53,10 +53,10 @@
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl_1_1strategy_1_1convex__hull.html">convex_hull</a></td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl_1_1strategy_1_1simplify.html">simplify</a></td></tr>
-
 <tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl_1_1strategy_1_1within.html">within</a></td></tr>
 
+<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl_1_1strategy_1_1simplify.html">simplify</a></td></tr>
+
 <tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl_1_1strategy_1_1area.html">area</a></td></tr>
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl_1_1strategy_1_1centroid.html">centroid</a></td></tr>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespaceggl_1_1strategy_1_1distance.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespaceggl_1_1strategy_1_1distance.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespaceggl_1_1strategy_1_1distance.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -49,19 +49,16 @@
 <tr><td colspan="2"><br><h2>Classes</h2></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1distance_1_1cross__track.html">cross_track</a></td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Strategy functor for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> calculation.  More...<br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Strategy functor for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> calculation.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html">haversine</a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Distance calculation for spherical coordinates on a perfect sphere using <a class="el" href="classggl_1_1strategy_1_1distance_1_1haversine.html" title="Distance calculation for spherical coordinates on a perfect sphere using haversine...">haversine</a>.  More...<br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1distance_1_1ll__point__segment.html">ll_point_segment</a></td></tr>
-
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Strategy functor for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> calculation.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1strategy_1_1distance_1_1pythagoras.html">pythagoras</a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Strategy for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a>: <a class="el" href="structggl_1_1strategy_1_1distance_1_1pythagoras.html" title="Strategy for distance point to point: pythagoras.">pythagoras</a>.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1strategy_1_1distance_1_1xy__point__segment.html">xy_point_segment</a></td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Strategy for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>.  More...<br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Strategy for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>.  More...<br></td></tr>
 </table>
 </div>
 <hr size="1">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespaceggl_1_1traits.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespaceggl_1_1traits.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespaceggl_1_1traits.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -50,7 +50,7 @@
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1access.html">access</a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Traits class which gives <a class="el" href="structggl_1_1traits_1_1access.html" title="Traits class which gives access (get,set) to points.">access</a> (get,set) to points.  More...<br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html">access< ggl::detail::intersection::intersection_point< P > ></a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html">access< ggl::detail::intersection::intersection_point< P >, Dimension ></a></td></tr>
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1append__point.html">append_point</a></td></tr>
 
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespacemembers.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespacemembers.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespacemembers.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -86,7 +86,7 @@
 <li>append()
 : <a class="el" href="group__access.html#g8cfdebdb885a95bacb1305744f0d0d7c">ggl</a>
 <li>area()
-: <a class="el" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3">ggl</a>
+: <a class="el" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d">ggl</a>
 <li>as_range()
 : <a class="el" href="namespaceggl.html#99e0a8eac282cd44fbdb1a47666ea084">ggl</a>
 <li>assert_dimension()
@@ -175,19 +175,9 @@
 <li>for_each_coordinate()
 : <a class="el" href="namespaceggl.html#578a218a60843891321b599d222090db">ggl</a>
 <li>for_each_point()
-: <a class="el" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a">ggl</a>
-<li>for_each_point_multi_linestring()
-: <a class="el" href="namespaceggl.html#25386b22f7cdbb3f4cb1f39b5a454e79">ggl</a>
-<li>for_each_point_multi_point()
-: <a class="el" href="namespaceggl.html#583292e2af8b5e8c473c66032028924f">ggl</a>
-<li>for_each_point_multi_polygon()
-: <a class="el" href="namespaceggl.html#5d6800969a6bf28a35785e3c9eb5b0ea">ggl</a>
+: <a class="el" href="group__loop.html#g0cdb7f23bf7395ba3f385e9cf01a601f">ggl</a>
 <li>for_each_segment()
-: <a class="el" href="namespaceggl.html#326e05f4a599d0a732b4ee83ec9ea0cc">ggl</a>
-<li>for_each_segment_multi_linestring()
-: <a class="el" href="namespaceggl.html#6dd128fb1487f8b269d888721a10f23b">ggl</a>
-<li>for_each_segment_multi_polygon()
-: <a class="el" href="namespaceggl.html#c07b4972809b53d2720a357b57aa840b">ggl</a>
+: <a class="el" href="group__loop.html#ge8453eab0e9db146184d7ccef687a33e">ggl</a>
 </ul>
 <h3><a class="anchor" name="index_g">- g -</a></h3><ul>
 <li>get()
@@ -217,7 +207,7 @@
 </ul>
 <h3><a class="anchor" name="index_l">- l -</a></h3><ul>
 <li>length()
-: <a class="el" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa">ggl</a>
+: <a class="el" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf">ggl</a>
 <li>linestring_2d
 : <a class="el" href="namespaceggl.html#bd8e114c665e6cc6ea48e2e716eeedc2">ggl</a>
 <li>linestring_3d
@@ -273,7 +263,7 @@
 </ul>
 <h3><a class="anchor" name="index_p">- p -</a></h3><ul>
 <li>perimeter()
-: <a class="el" href="group__perimeter.html#g7d52bc6ace3c3dbc9bdac84e6f0076ba">ggl</a>
+: <a class="el" href="group__perimeter.html#g02588697f4c401400c3007d3ff091df9">ggl</a>
 <li>pi
 : <a class="el" href="namespaceggl_1_1math.html#54fc384779fa97a61e07149d880a599c">ggl::math</a>
 <li>point_2d
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespacemembers_func.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespacemembers_func.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/namespacemembers_func.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -85,7 +85,7 @@
 <li>append()
 : <a class="el" href="group__access.html#g8cfdebdb885a95bacb1305744f0d0d7c">ggl</a>
 <li>area()
-: <a class="el" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3">ggl</a>
+: <a class="el" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d">ggl</a>
 <li>as_range()
 : <a class="el" href="namespaceggl.html#99e0a8eac282cd44fbdb1a47666ea084">ggl</a>
 <li>assert_dimension()
@@ -162,19 +162,9 @@
 <li>for_each_coordinate()
 : <a class="el" href="namespaceggl.html#578a218a60843891321b599d222090db">ggl</a>
 <li>for_each_point()
-: <a class="el" href="group__loop.html#g71cb52ab6490726f9030b464aa2f5e8a">ggl</a>
-<li>for_each_point_multi_linestring()
-: <a class="el" href="namespaceggl.html#25386b22f7cdbb3f4cb1f39b5a454e79">ggl</a>
-<li>for_each_point_multi_point()
-: <a class="el" href="namespaceggl.html#583292e2af8b5e8c473c66032028924f">ggl</a>
-<li>for_each_point_multi_polygon()
-: <a class="el" href="namespaceggl.html#5d6800969a6bf28a35785e3c9eb5b0ea">ggl</a>
+: <a class="el" href="group__loop.html#g0cdb7f23bf7395ba3f385e9cf01a601f">ggl</a>
 <li>for_each_segment()
-: <a class="el" href="namespaceggl.html#326e05f4a599d0a732b4ee83ec9ea0cc">ggl</a>
-<li>for_each_segment_multi_linestring()
-: <a class="el" href="namespaceggl.html#6dd128fb1487f8b269d888721a10f23b">ggl</a>
-<li>for_each_segment_multi_polygon()
-: <a class="el" href="namespaceggl.html#c07b4972809b53d2720a357b57aa840b">ggl</a>
+: <a class="el" href="group__loop.html#ge8453eab0e9db146184d7ccef687a33e">ggl</a>
 </ul>
 <h3><a class="anchor" name="index_g">- g -</a></h3><ul>
 <li>get()
@@ -204,7 +194,7 @@
 </ul>
 <h3><a class="anchor" name="index_l">- l -</a></h3><ul>
 <li>length()
-: <a class="el" href="group__length.html#g7e3572634111ae0252a474a7f435c5aa">ggl</a>
+: <a class="el" href="group__length.html#g3ff05ea6b83363ce847770d3abe156bf">ggl</a>
 <li>loop()
 : <a class="el" href="group__loop.html#g1ff95a74f261e15dfa714146bdcbf23f">ggl</a>
 </ul>
@@ -248,7 +238,7 @@
 </ul>
 <h3><a class="anchor" name="index_p">- p -</a></h3><ul>
 <li>perimeter()
-: <a class="el" href="group__perimeter.html#g7d52bc6ace3c3dbc9bdac84e6f0076ba">ggl</a>
+: <a class="el" href="group__perimeter.html#g02588697f4c401400c3007d3ff091df9">ggl</a>
 </ul>
 <h3><a class="anchor" name="index_s">- s -</a></h3><ul>
 <li>sectionalize()
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/nsphere_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/nsphere_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/nsphere_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -100,64 +100,62 @@
 <a name="l00070"></a>00070 <span class="preprocessor"></span><span class="keyword">namespace </span>traits
 <a name="l00071"></a>00071 {
 <a name="l00072"></a>00072 
-<a name="l00073"></a>00073 <span class="keyword">template</span> <<span class="keyword">typename</span> P, <span class="keyword">typename</span> T>
-<a name="l00074"></a>00074 <span class="keyword">struct </span>tag< nsphere<P, T> >
+<a name="l00073"></a>00073 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>, <span class="keyword">typename</span> RadiusType>
+<a name="l00074"></a>00074 <span class="keyword">struct </span>tag< nsphere<Point, RadiusType> >
 <a name="l00075"></a>00075 {
 <a name="l00076"></a>00076     <span class="keyword">typedef</span> nsphere_tag <a class="code" href="structggl_1_1traits_1_1tag.html#6a33811e99e92e16ae2529e6ecd8a1b6">type</a>;
 <a name="l00077"></a>00077 };
 <a name="l00078"></a>00078 
-<a name="l00079"></a>00079 <span class="keyword">template</span> <<span class="keyword">typename</span> P, <span class="keyword">typename</span> T>
-<a name="l00080"></a>00080 <span class="keyword">struct </span>point_type<nsphere<P, T> >
+<a name="l00079"></a>00079 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>, <span class="keyword">typename</span> RadiusType>
+<a name="l00080"></a>00080 <span class="keyword">struct </span>point_type<nsphere<Point, RadiusType> >
 <a name="l00081"></a>00081 {
-<a name="l00082"></a>00082     <span class="keyword">typedef</span> P type;
+<a name="l00082"></a>00082     <span class="keyword">typedef</span> Point type;
 <a name="l00083"></a>00083 };
 <a name="l00084"></a>00084 
-<a name="l00085"></a>00085 <span class="keyword">template</span> <<span class="keyword">typename</span> P, <span class="keyword">typename</span> T>
-<a name="l00086"></a>00086 <span class="keyword">struct </span>radius_type<nsphere<P, T> >
+<a name="l00085"></a>00085 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>, <span class="keyword">typename</span> RadiusType>
+<a name="l00086"></a>00086 <span class="keyword">struct </span>radius_type<nsphere<Point, RadiusType> >
 <a name="l00087"></a>00087 {
-<a name="l00088"></a>00088     <span class="keyword">typedef</span> T type;
+<a name="l00088"></a>00088     <span class="keyword">typedef</span> RadiusType type;
 <a name="l00089"></a>00089 };
 <a name="l00090"></a>00090 
-<a name="l00091"></a>00091 <span class="keyword">template</span> <<span class="keyword">typename</span> P, <span class="keyword">typename</span> T>
-<a name="l00092"></a>00092 <span class="keyword">struct </span>access<nsphere<P, T> >
+<a name="l00091"></a>00091 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>, <span class="keyword">typename</span> CoordinateType, std::<span class="keywordtype">size_t</span> Dimension>
+<a name="l00092"></a>00092 <span class="keyword">struct </span>access<nsphere<Point, CoordinateType>,  Dimension>
 <a name="l00093"></a>00093 {
-<a name="l00094"></a>00094     <span class="keyword">typedef</span> nsphere<P, T> nsphere_type;
+<a name="l00094"></a>00094     <span class="keyword">typedef</span> nsphere<Point, CoordinateType> nsphere_type;
 <a name="l00095"></a>00095 
-<a name="l00096"></a>00096     <span class="keyword">template</span> <std::<span class="keywordtype">size_t</span> D>
-<a name="l00097"></a>00097     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">ggl::coordinate_type<nsphere_type>::type</a> <span class="keyword">get</span>(nsphere_type <span class="keyword">const</span>& s)
-<a name="l00098"></a>00098     {
-<a name="l00099"></a>00099         <span class="keywordflow">return</span> ggl::get<D>(s.center());
-<a name="l00100"></a>00100     }
-<a name="l00101"></a>00101 
-<a name="l00102"></a>00102     <span class="keyword">template</span> <std::<span class="keywordtype">size_t</span> D>
-<a name="l00103"></a>00103     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(nsphere_type& s, <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">ggl::coordinate_type<nsphere_type>::type</a> <span class="keyword">const</span>& value)
-<a name="l00104"></a>00104     {
-<a name="l00105"></a>00105         ggl::set<D>(s.center(), value);
-<a name="l00106"></a>00106     }
-<a name="l00107"></a>00107 };
-<a name="l00108"></a>00108 
-<a name="l00109"></a>00109 <span class="keyword">template</span> <<span class="keyword">typename</span> P, <span class="keyword">typename</span> T>
-<a name="l00110"></a>00110 <span class="keyword">struct </span>radius_access<nsphere<P, T>, T, 0>
-<a name="l00111"></a>00111 {
-<a name="l00112"></a>00112     <span class="keyword">typedef</span> nsphere<P, T> nsphere_type;
-<a name="l00113"></a>00113 
-<a name="l00114"></a>00114     <span class="keyword">static</span> <span class="keyword">inline</span> T <span class="keyword">get</span>(nsphere_type <span class="keyword">const</span>& s)
-<a name="l00115"></a>00115     {
-<a name="l00116"></a>00116         <span class="keywordflow">return</span> s.radius();
-<a name="l00117"></a>00117     }
-<a name="l00118"></a>00118 
-<a name="l00119"></a>00119     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(nsphere_type& s, T <span class="keyword">const</span>& value)
-<a name="l00120"></a>00120     {
-<a name="l00121"></a>00121         s.radius(value);
-<a name="l00122"></a>00122     }
-<a name="l00123"></a>00123 };
-<a name="l00124"></a>00124 
-<a name="l00125"></a>00125 } <span class="comment">// namespace traits</span>
-<a name="l00126"></a>00126 <span class="preprocessor">#endif // DOXYGEN_NO_TRAITS_SPECIALIZATIONS</span>
-<a name="l00127"></a>00127 <span class="preprocessor"></span>
-<a name="l00128"></a>00128 } <span class="comment">// namespace ggl</span>
-<a name="l00129"></a>00129 
-<a name="l00130"></a>00130 <span class="preprocessor">#endif // GGL_GEOMETRIES_NSPHERE_HPP</span>
+<a name="l00096"></a>00096     <span class="keyword">static</span> <span class="keyword">inline</span> CoordinateType <span class="keyword">get</span>(nsphere_type <span class="keyword">const</span>& s)
+<a name="l00097"></a>00097     {
+<a name="l00098"></a>00098         <span class="keywordflow">return</span> ggl::get<Dimension>(s.center());
+<a name="l00099"></a>00099     }
+<a name="l00100"></a>00100 
+<a name="l00101"></a>00101     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(nsphere_type& s, CoordinateType <span class="keyword">const</span>& value)
+<a name="l00102"></a>00102     {
+<a name="l00103"></a>00103         ggl::set<Dimension>(s.center(), value);
+<a name="l00104"></a>00104     }
+<a name="l00105"></a>00105 };
+<a name="l00106"></a>00106 
+<a name="l00107"></a>00107 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>, <span class="keyword">typename</span> RadiusType>
+<a name="l00108"></a>00108 <span class="keyword">struct </span>radius_access<nsphere<Point, RadiusType>, RadiusType, 0>
+<a name="l00109"></a>00109 {
+<a name="l00110"></a>00110     <span class="keyword">typedef</span> nsphere<Point, RadiusType> nsphere_type;
+<a name="l00111"></a>00111 
+<a name="l00112"></a>00112     <span class="keyword">static</span> <span class="keyword">inline</span> RadiusType <span class="keyword">get</span>(nsphere_type <span class="keyword">const</span>& s)
+<a name="l00113"></a>00113     {
+<a name="l00114"></a>00114         <span class="keywordflow">return</span> s.radius();
+<a name="l00115"></a>00115     }
+<a name="l00116"></a>00116 
+<a name="l00117"></a>00117     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(nsphere_type& s, RadiusType <span class="keyword">const</span>& value)
+<a name="l00118"></a>00118     {
+<a name="l00119"></a>00119         s.radius(value);
+<a name="l00120"></a>00120     }
+<a name="l00121"></a>00121 };
+<a name="l00122"></a>00122 
+<a name="l00123"></a>00123 } <span class="comment">// namespace traits</span>
+<a name="l00124"></a>00124 <span class="preprocessor">#endif // DOXYGEN_NO_TRAITS_SPECIALIZATIONS</span>
+<a name="l00125"></a>00125 <span class="preprocessor"></span>
+<a name="l00126"></a>00126 } <span class="comment">// namespace ggl</span>
+<a name="l00127"></a>00127 
+<a name="l00128"></a>00128 <span class="preprocessor">#endif // GGL_GEOMETRIES_NSPHERE_HPP</span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/ogc.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/ogc.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/ogc.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -53,7 +53,7 @@
 <li>Oracle Spatial</li><li>SQL Server 2008</li><li>PostGreSQL</li><li>MySQL</li><li>MonetDB</li></ul>
 <p>
 Besides this the Generic Geometry Library provides the following additional classes:<ul>
-<li><a class="el" href="classggl_1_1box.html">box</a>: Box, used for selections and for envelopes (bounding boxes)</li><li><a class="el" href="classggl_1_1nsphere.html">n-sphere</a>, meaning circle" and "sphere". Circle is convenient for selections</li><li><a class="el" href="structggl_1_1segment.html">segment</a>: Segment, helper class, used for e.g. intersections</li></ul>
+<li><a class="el" href="classggl_1_1box.html">box</a>: Box, used for selections and for envelopes (bounding boxes)</li><li><a class="el" href="classggl_1_1nsphere.html">n-sphere</a>, meaning circle" and "sphere". Circle is convenient for selections</li><li><a class="el" href="classggl_1_1segment.html">segment</a>: Segment, helper class, used for e.g. intersections</li></ul>
 <h2><a class="anchor" name="Algorithms">
 Algorithms</a></h2>
 The Generic Geometry Library implements the following OGC algorithms, which are applicable to most or all geometries<ul>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/point_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/point_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/point_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -112,49 +112,78 @@
 <a name="l00080"></a>00080 <span class="preprocessor">#ifndef DOXYGEN_NO_TRAITS_SPECIALIZATIONS</span>
 <a name="l00081"></a>00081 <span class="preprocessor"></span><span class="keyword">namespace </span>traits
 <a name="l00082"></a>00082 {
-<a name="l00083"></a>00083 <span class="keyword">template</span> <<span class="keyword">typename</span> T, std::<span class="keywordtype">size_t</span> D, <span class="keyword">typename</span> C>
-<a name="l00084"></a>00084 <span class="keyword">struct </span>tag<point<T, D, C> >
-<a name="l00085"></a>00085 {
-<a name="l00086"></a>00086     <span class="keyword">typedef</span> point_tag <a class="code" href="structggl_1_1traits_1_1tag.html#6a33811e99e92e16ae2529e6ecd8a1b6">type</a>;
-<a name="l00087"></a>00087 };
-<a name="l00088"></a>00088 
-<a name="l00089"></a>00089 <span class="keyword">template</span><<span class="keyword">typename</span> T, std::<span class="keywordtype">size_t</span> D, <span class="keyword">typename</span> C>
-<a name="l00090"></a>00090 <span class="keyword">struct </span>coordinate_type<point<T, D, C> >
-<a name="l00091"></a>00091 {
-<a name="l00092"></a>00092     <span class="keyword">typedef</span> T type;
-<a name="l00093"></a>00093 };
-<a name="l00094"></a>00094 
-<a name="l00095"></a>00095 <span class="keyword">template</span><<span class="keyword">typename</span> T, std::<span class="keywordtype">size_t</span> D, <span class="keyword">typename</span> C>
-<a name="l00096"></a>00096 <span class="keyword">struct </span>coordinate_system<point<T, D, C> >
-<a name="l00097"></a>00097 {
-<a name="l00098"></a>00098     <span class="keyword">typedef</span> C type;
-<a name="l00099"></a>00099 };
-<a name="l00100"></a>00100 
-<a name="l00101"></a>00101 <span class="keyword">template</span><<span class="keyword">typename</span> T, std::<span class="keywordtype">size_t</span> D, <span class="keyword">typename</span> C>
-<a name="l00102"></a>00102 <span class="keyword">struct </span><a class="code" href="classcore__dispatch_1_1dimension.html">dimension</a><point<T, D, C> > : boost::mpl::int_<D> {};
-<a name="l00103"></a>00103 
-<a name="l00104"></a>00104 <span class="keyword">template</span><<span class="keyword">typename</span> T, std::<span class="keywordtype">size_t</span> D, <span class="keyword">typename</span> C>
-<a name="l00105"></a>00105 <span class="keyword">struct </span>access<point<T, D, C> >
-<a name="l00106"></a>00106 {
-<a name="l00107"></a>00107     <span class="keyword">template</span> <std::<span class="keywordtype">size_t</span> I>
-<a name="l00108"></a>00108     <span class="keyword">static</span> <span class="keyword">inline</span> T <span class="keyword">get</span>(point<T, D, C> <span class="keyword">const</span>& p)
-<a name="l00109"></a>00109     {
-<a name="l00110"></a>00110         <span class="keywordflow">return</span> p.template get<I>();
-<a name="l00111"></a>00111     }
-<a name="l00112"></a>00112 
-<a name="l00113"></a>00113     <span class="keyword">template</span> <std::<span class="keywordtype">size_t</span> I>
-<a name="l00114"></a>00114     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(point<T, D, C>& p, T <span class="keyword">const</span>& value)
-<a name="l00115"></a>00115     {
-<a name="l00116"></a>00116         p.template set<I>(value);
-<a name="l00117"></a>00117     }
-<a name="l00118"></a>00118 };
-<a name="l00119"></a>00119 
-<a name="l00120"></a>00120 } <span class="comment">// namespace traits</span>
-<a name="l00121"></a>00121 <span class="preprocessor">#endif // DOXYGEN_NO_TRAITS_SPECIALIZATIONS</span>
-<a name="l00122"></a>00122 <span class="preprocessor"></span>
-<a name="l00123"></a>00123 } <span class="comment">// namespace ggl</span>
-<a name="l00124"></a>00124 
-<a name="l00125"></a>00125 <span class="preprocessor">#endif // GGL_GEOMETRIES_POINT_HPP</span>
+<a name="l00083"></a>00083 <span class="keyword">template</span>
+<a name="l00084"></a>00084 <
+<a name="l00085"></a>00085     <span class="keyword">typename</span> CoordinateType,
+<a name="l00086"></a>00086     std::size_t DimensionCount,
+<a name="l00087"></a>00087     <span class="keyword">typename</span> CoordinateSystem
+<a name="l00088"></a>00088 >
+<a name="l00089"></a>00089 <span class="keyword">struct </span>tag<point<CoordinateType, DimensionCount, CoordinateSystem> >
+<a name="l00090"></a>00090 {
+<a name="l00091"></a>00091     <span class="keyword">typedef</span> point_tag <a class="code" href="structggl_1_1traits_1_1tag.html#6a33811e99e92e16ae2529e6ecd8a1b6">type</a>;
+<a name="l00092"></a>00092 };
+<a name="l00093"></a>00093 
+<a name="l00094"></a>00094 <span class="keyword">template</span>
+<a name="l00095"></a>00095 <
+<a name="l00096"></a>00096     <span class="keyword">typename</span> CoordinateType,
+<a name="l00097"></a>00097     std::size_t DimensionCount,
+<a name="l00098"></a>00098     <span class="keyword">typename</span> CoordinateSystem
+<a name="l00099"></a>00099 >
+<a name="l00100"></a>00100 <span class="keyword">struct </span>coordinate_type<point<CoordinateType, DimensionCount, CoordinateSystem> >
+<a name="l00101"></a>00101 {
+<a name="l00102"></a>00102     <span class="keyword">typedef</span> CoordinateType type;
+<a name="l00103"></a>00103 };
+<a name="l00104"></a>00104 
+<a name="l00105"></a>00105 <span class="keyword">template</span>
+<a name="l00106"></a>00106 <
+<a name="l00107"></a>00107     <span class="keyword">typename</span> CoordinateType,
+<a name="l00108"></a>00108     std::size_t DimensionCount,
+<a name="l00109"></a>00109     <span class="keyword">typename</span> CoordinateSystem
+<a name="l00110"></a>00110 >
+<a name="l00111"></a>00111 <span class="keyword">struct </span>coordinate_system<point<CoordinateType, DimensionCount, CoordinateSystem> >
+<a name="l00112"></a>00112 {
+<a name="l00113"></a>00113     <span class="keyword">typedef</span> CoordinateSystem type;
+<a name="l00114"></a>00114 };
+<a name="l00115"></a>00115 
+<a name="l00116"></a>00116 <span class="keyword">template</span>
+<a name="l00117"></a>00117 <
+<a name="l00118"></a>00118     <span class="keyword">typename</span> CoordinateType,
+<a name="l00119"></a>00119     std::size_t DimensionCount,
+<a name="l00120"></a>00120     <span class="keyword">typename</span> CoordinateSystem
+<a name="l00121"></a>00121 >
+<a name="l00122"></a>00122 <span class="keyword">struct </span><a class="code" href="classcore__dispatch_1_1dimension.html">dimension</a><point<CoordinateType, DimensionCount, CoordinateSystem> >
+<a name="l00123"></a>00123     : boost::mpl::int_<DimensionCount>
+<a name="l00124"></a>00124 {};
+<a name="l00125"></a>00125 
+<a name="l00126"></a>00126 <span class="keyword">template</span>
+<a name="l00127"></a>00127 <
+<a name="l00128"></a>00128     <span class="keyword">typename</span> CoordinateType,
+<a name="l00129"></a>00129     std::size_t DimensionCount,
+<a name="l00130"></a>00130     <span class="keyword">typename</span> CoordinateSystem,
+<a name="l00131"></a>00131     std::size_t Dimension
+<a name="l00132"></a>00132 >
+<a name="l00133"></a>00133 <span class="keyword">struct </span>access<point<CoordinateType, DimensionCount, CoordinateSystem>, Dimension>
+<a name="l00134"></a>00134 {
+<a name="l00135"></a>00135     <span class="keyword">static</span> <span class="keyword">inline</span> CoordinateType <span class="keyword">get</span>(
+<a name="l00136"></a>00136         point<CoordinateType, DimensionCount, CoordinateSystem> <span class="keyword">const</span>& p)
+<a name="l00137"></a>00137     {
+<a name="l00138"></a>00138         <span class="keywordflow">return</span> p.template get<Dimension>();
+<a name="l00139"></a>00139     }
+<a name="l00140"></a>00140 
+<a name="l00141"></a>00141     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(
+<a name="l00142"></a>00142         point<CoordinateType, DimensionCount, CoordinateSystem>& p,
+<a name="l00143"></a>00143         CoordinateType <span class="keyword">const</span>& value)
+<a name="l00144"></a>00144     {
+<a name="l00145"></a>00145         p.template set<Dimension>(value);
+<a name="l00146"></a>00146     }
+<a name="l00147"></a>00147 };
+<a name="l00148"></a>00148 
+<a name="l00149"></a>00149 } <span class="comment">// namespace traits</span>
+<a name="l00150"></a>00150 <span class="preprocessor">#endif // DOXYGEN_NO_TRAITS_SPECIALIZATIONS</span>
+<a name="l00151"></a>00151 <span class="preprocessor"></span>
+<a name="l00152"></a>00152 } <span class="comment">// namespace ggl</span>
+<a name="l00153"></a>00153 
+<a name="l00154"></a>00154 <span class="preprocessor">#endif // GGL_GEOMETRIES_POINT_HPP</span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/point__xy_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/point__xy_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/point__xy_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -81,62 +81,58 @@
 <a name="l00049"></a>00049 
 <a name="l00051"></a><a class="code" href="classggl_1_1point__xy.html#28f49fc68898e678390593fb73afd7c6">00051</a>     <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classggl_1_1point__xy.html#a83e59f4d401b1a4c6f037979c57260f" title="Get y-value.">y</a>(T <span class="keyword">const</span>& v)
 <a name="l00052"></a>00052     { this-><span class="keyword">template</span> set<1>(v); }
-<a name="l00053"></a>00053 
-<a name="l00055"></a>00055     <span class="comment">//inline bool operator<(point_xy const& other) const</span>
-<a name="l00056"></a>00056     <span class="comment">//{</span>
-<a name="l00057"></a>00057     <span class="comment">//    return math::equals(x(), other.x()) ? y() < other.y() : x() < other.x();</span>
-<a name="l00058"></a>00058     <span class="comment">//}</span>
+<a name="l00053"></a>00053 };
+<a name="l00054"></a>00054 
+<a name="l00055"></a>00055 <span class="comment">// Adapt the point_xy to the concept</span>
+<a name="l00056"></a>00056 <span class="preprocessor">#ifndef DOXYGEN_NO_TRAITS_SPECIALIZATIONS</span>
+<a name="l00057"></a>00057 <span class="preprocessor"></span><span class="keyword">namespace </span>traits
+<a name="l00058"></a>00058 {
 <a name="l00059"></a>00059 
-<a name="l00060"></a>00060 };
-<a name="l00061"></a>00061 
-<a name="l00062"></a>00062 <span class="comment">// Adapt the point_xy to the concept</span>
-<a name="l00063"></a>00063 <span class="preprocessor">#ifndef DOXYGEN_NO_TRAITS_SPECIALIZATIONS</span>
-<a name="l00064"></a>00064 <span class="preprocessor"></span><span class="keyword">namespace </span>traits
-<a name="l00065"></a>00065 {
-<a name="l00066"></a>00066 
-<a name="l00067"></a>00067 <span class="keyword">template</span> <<span class="keyword">typename</span> T, <span class="keyword">typename</span> C>
-<a name="l00068"></a>00068 <span class="keyword">struct </span>tag<point_xy<T, C> >
-<a name="l00069"></a>00069 {
-<a name="l00070"></a>00070     <span class="keyword">typedef</span> point_tag type;
-<a name="l00071"></a>00071 };
-<a name="l00072"></a>00072 
-<a name="l00073"></a>00073 <span class="keyword">template</span><<span class="keyword">typename</span> T, <span class="keyword">typename</span> C>
-<a name="l00074"></a>00074 <span class="keyword">struct </span>coordinate_type<point_xy<T, C> >
-<a name="l00075"></a>00075 {
-<a name="l00076"></a>00076     <span class="keyword">typedef</span> T <a class="code" href="structggl_1_1coordinate__type.html#b723a443a97f7c4ed7c47ac96d7e29ee">type</a>;
-<a name="l00077"></a>00077 };
-<a name="l00078"></a>00078 
-<a name="l00079"></a>00079 <span class="keyword">template</span><<span class="keyword">typename</span> T, <span class="keyword">typename</span> C>
-<a name="l00080"></a>00080 <span class="keyword">struct </span>coordinate_system<point_xy<T, C> >
-<a name="l00081"></a>00081 {
-<a name="l00082"></a>00082     <span class="keyword">typedef</span> C <a class="code" href="structggl_1_1coordinate__system.html#a307f40744cc79a4c29ba951dc88fcb4">type</a>;
-<a name="l00083"></a>00083 };
-<a name="l00084"></a>00084 
-<a name="l00085"></a>00085 <span class="keyword">template</span><<span class="keyword">typename</span> T, <span class="keyword">typename</span> C>
-<a name="l00086"></a>00086 <span class="keyword">struct </span><a class="code" href="classcore__dispatch_1_1dimension.html">dimension</a><point_xy<T, C> > : boost::mpl::int_<2> {};
-<a name="l00087"></a>00087 
-<a name="l00088"></a>00088 <span class="keyword">template</span><<span class="keyword">typename</span> T, <span class="keyword">typename</span> C>
-<a name="l00089"></a>00089 <span class="keyword">struct </span>access<point_xy<T, C> >
-<a name="l00090"></a>00090 {
-<a name="l00091"></a>00091     <span class="keyword">template</span> <std::<span class="keywordtype">size_t</span> I>
-<a name="l00092"></a>00092     <span class="keyword">static</span> <span class="keyword">inline</span> T <span class="keyword">get</span>(point_xy<T, C> <span class="keyword">const</span>& p)
-<a name="l00093"></a>00093     {
-<a name="l00094"></a>00094         <span class="keywordflow">return</span> p.template get<I>();
-<a name="l00095"></a>00095     }
-<a name="l00096"></a>00096 
-<a name="l00097"></a>00097     <span class="keyword">template</span> <std::<span class="keywordtype">size_t</span> I>
-<a name="l00098"></a>00098     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(point_xy<T, C>& p, T <span class="keyword">const</span>& value)
-<a name="l00099"></a>00099     {
-<a name="l00100"></a>00100         p.template set<I>(value);
-<a name="l00101"></a>00101     }
-<a name="l00102"></a>00102 };
+<a name="l00060"></a>00060 <span class="keyword">template</span> <<span class="keyword">typename</span> CoordinateType, <span class="keyword">typename</span> CoordinateSystem>
+<a name="l00061"></a>00061 <span class="keyword">struct </span>tag<point_xy<CoordinateType, CoordinateSystem> >
+<a name="l00062"></a>00062 {
+<a name="l00063"></a>00063     <span class="keyword">typedef</span> point_tag type;
+<a name="l00064"></a>00064 };
+<a name="l00065"></a>00065 
+<a name="l00066"></a>00066 <span class="keyword">template</span><<span class="keyword">typename</span> CoordinateType, <span class="keyword">typename</span> CoordinateSystem>
+<a name="l00067"></a>00067 <span class="keyword">struct </span>coordinate_type<point_xy<CoordinateType, CoordinateSystem> >
+<a name="l00068"></a>00068 {
+<a name="l00069"></a>00069     <span class="keyword">typedef</span> CoordinateType <a class="code" href="structggl_1_1coordinate__type.html#b723a443a97f7c4ed7c47ac96d7e29ee">type</a>;
+<a name="l00070"></a>00070 };
+<a name="l00071"></a>00071 
+<a name="l00072"></a>00072 <span class="keyword">template</span><<span class="keyword">typename</span> CoordinateType, <span class="keyword">typename</span> CoordinateSystem>
+<a name="l00073"></a>00073 <span class="keyword">struct </span>coordinate_system<point_xy<CoordinateType, CoordinateSystem> >
+<a name="l00074"></a>00074 {
+<a name="l00075"></a>00075     <span class="keyword">typedef</span> CoordinateSystem <a class="code" href="structggl_1_1coordinate__system.html#a307f40744cc79a4c29ba951dc88fcb4">type</a>;
+<a name="l00076"></a>00076 };
+<a name="l00077"></a>00077 
+<a name="l00078"></a>00078 <span class="keyword">template</span><<span class="keyword">typename</span> CoordinateType, <span class="keyword">typename</span> CoordinateSystem>
+<a name="l00079"></a>00079 <span class="keyword">struct </span><a class="code" href="classcore__dispatch_1_1dimension.html">dimension</a><point_xy<CoordinateType, CoordinateSystem> > 
+<a name="l00080"></a>00080     : boost::mpl::int_<2> 
+<a name="l00081"></a>00081 {};
+<a name="l00082"></a>00082 
+<a name="l00083"></a>00083 <span class="keyword">template</span><<span class="keyword">typename</span> CoordinateType, <span class="keyword">typename</span> CoordinateSystem, std::<span class="keywordtype">size_t</span> Dimension>
+<a name="l00084"></a>00084 <span class="keyword">struct </span>access<point_xy<CoordinateType, CoordinateSystem>, Dimension >
+<a name="l00085"></a>00085 {
+<a name="l00086"></a>00086     <span class="keyword">static</span> <span class="keyword">inline</span> CoordinateType <span class="keyword">get</span>(
+<a name="l00087"></a>00087         point_xy<CoordinateType, CoordinateSystem> <span class="keyword">const</span>& p)
+<a name="l00088"></a>00088     {
+<a name="l00089"></a>00089         <span class="keywordflow">return</span> p.template get<Dimension>();
+<a name="l00090"></a>00090     }
+<a name="l00091"></a>00091 
+<a name="l00092"></a>00092     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(point_xy<CoordinateType, CoordinateSystem>& p, 
+<a name="l00093"></a>00093         CoordinateType <span class="keyword">const</span>& value)
+<a name="l00094"></a>00094     {
+<a name="l00095"></a>00095         p.template set<Dimension>(value);
+<a name="l00096"></a>00096     }
+<a name="l00097"></a>00097 };
+<a name="l00098"></a>00098 
+<a name="l00099"></a>00099 } <span class="comment">// namespace traits</span>
+<a name="l00100"></a>00100 <span class="preprocessor">#endif // DOXYGEN_NO_TRAITS_SPECIALIZATIONS</span>
+<a name="l00101"></a>00101 <span class="preprocessor"></span>
+<a name="l00102"></a>00102 } <span class="comment">// namespace ggl</span>
 <a name="l00103"></a>00103 
-<a name="l00104"></a>00104 } <span class="comment">// namespace traits</span>
-<a name="l00105"></a>00105 <span class="preprocessor">#endif // DOXYGEN_NO_TRAITS_SPECIALIZATIONS</span>
-<a name="l00106"></a>00106 <span class="preprocessor"></span>
-<a name="l00107"></a>00107 } <span class="comment">// namespace ggl</span>
-<a name="l00108"></a>00108 
-<a name="l00109"></a>00109 <span class="preprocessor">#endif // GGL_GEOMETRIES_POINT_XY_HPP</span>
+<a name="l00104"></a>00104 <span class="preprocessor">#endif // GGL_GEOMETRIES_POINT_XY_HPP</span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/register_2point_8hpp.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/register_2point_8hpp.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/register_2point_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -97,7 +97,7 @@
 }}
 </pre></div><dl compact><dt><b>Examples: </b></dt><dd>
 <a class="el" href="c01__custom__point__example_8cpp-example.html#a1">c01_custom_point_example.cpp</a>, and <a class="el" href="c02__custom__box__example_8cpp-example.html#a0">c02_custom_box_example.cpp</a>.</dl>
-<p>Definition at line <a class="el" href="register_2point_8hpp_source.html#l00099">99</a> of file <a class="el" href="register_2point_8hpp_source.html">point.hpp</a>.</p>
+<p>Definition at line <a class="el" href="register_2point_8hpp_source.html#l00103">103</a> of file <a class="el" href="register_2point_8hpp_source.html">point.hpp</a>.</p>
 
 </div>
 </div><p>
@@ -140,7 +140,7 @@
 }}
 </pre></div><dl compact><dt><b>Examples: </b></dt><dd>
 <a class="el" href="c01__custom__point__example_8cpp-example.html#a0">c01_custom_point_example.cpp</a>.</dl>
-<p>Definition at line <a class="el" href="register_2point_8hpp_source.html#l00107">107</a> of file <a class="el" href="register_2point_8hpp_source.html">point.hpp</a>.</p>
+<p>Definition at line <a class="el" href="register_2point_8hpp_source.html#l00111">111</a> of file <a class="el" href="register_2point_8hpp_source.html">point.hpp</a>.</p>
 
 </div>
 </div><p>
@@ -180,7 +180,7 @@
 }}
 </pre></div><dl compact><dt><b>Examples: </b></dt><dd>
 <a class="el" href="c01__custom__point__example_8cpp-example.html#a2">c01_custom_point_example.cpp</a>.</dl>
-<p>Definition at line <a class="el" href="register_2point_8hpp_source.html#l00117">117</a> of file <a class="el" href="register_2point_8hpp_source.html">point.hpp</a>.</p>
+<p>Definition at line <a class="el" href="register_2point_8hpp_source.html#l00121">121</a> of file <a class="el" href="register_2point_8hpp_source.html">point.hpp</a>.</p>
 
 </div>
 </div><p>
@@ -222,7 +222,7 @@
     GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_CONST_3D(Point, CoordinateType, Field0, Field1, Field2) \
 }}
 </pre></div>
-<p>Definition at line <a class="el" href="register_2point_8hpp_source.html#l00125">125</a> of file <a class="el" href="register_2point_8hpp_source.html">point.hpp</a>.</p>
+<p>Definition at line <a class="el" href="register_2point_8hpp_source.html#l00129">129</a> of file <a class="el" href="register_2point_8hpp_source.html">point.hpp</a>.</p>
 
 </div>
 </div><p>
@@ -269,7 +269,7 @@
 }}
 </pre></div><dl compact><dt><b>Examples: </b></dt><dd>
 <a class="el" href="c01__custom__point__example_8cpp-example.html#a3">c01_custom_point_example.cpp</a>, and <a class="el" href="x01__qt__example_8cpp-example.html#a0">x01_qt_example.cpp</a>.</dl>
-<p>Definition at line <a class="el" href="register_2point_8hpp_source.html#l00134">134</a> of file <a class="el" href="register_2point_8hpp_source.html">point.hpp</a>.</p>
+<p>Definition at line <a class="el" href="register_2point_8hpp_source.html#l00138">138</a> of file <a class="el" href="register_2point_8hpp_source.html">point.hpp</a>.</p>
 
 </div>
 </div><p>
@@ -322,7 +322,7 @@
     GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_GET_SET(Point, 2, CoordinateType, Get2, Set2) \
 }}
 </pre></div>
-<p>Definition at line <a class="el" href="register_2point_8hpp_source.html#l00144">144</a> of file <a class="el" href="register_2point_8hpp_source.html">point.hpp</a>.</p>
+<p>Definition at line <a class="el" href="register_2point_8hpp_source.html#l00148">148</a> of file <a class="el" href="register_2point_8hpp_source.html">point.hpp</a>.</p>
 
 </div>
 </div><p>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/register_2point_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/register_2point_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/register_2point_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -54,146 +54,150 @@
 <a name="l00012"></a>00012 <span class="preprocessor"></span>
 <a name="l00013"></a>00013 
 <a name="l00014"></a>00014 
-<a name="l00015"></a>00015 <span class="comment">// This file implements a "macro party", nevertheless very useful for registration of custom geometry types</span>
-<a name="l00016"></a>00016 
-<a name="l00017"></a>00017 <span class="preprocessor">#ifndef DOXYGEN_NO_SPECIALIZATIONS</span>
-<a name="l00018"></a>00018 <span class="preprocessor"></span>
-<a name="l00019"></a>00019 <span class="comment">// Starting point, specialize basic traits necessary to register a point</span>
-<a name="l00020"></a>00020 <span class="comment">// (the 'accessor' is technically not specialization but definition, specialized in another macro)</span>
-<a name="l00021"></a>00021 <span class="preprocessor">#define GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, Dim, CoordinateType, CoordinateSystem) \</span>
-<a name="l00022"></a>00022 <span class="preprocessor">    template<> struct tag<Point> { typedef point_tag type; }; \</span>
-<a name="l00023"></a>00023 <span class="preprocessor">    template<> struct dimension<Point> : boost::mpl::int_<Dim> {}; \</span>
-<a name="l00024"></a>00024 <span class="preprocessor">    template<> struct coordinate_type<Point> { typedef CoordinateType type; }; \</span>
-<a name="l00025"></a>00025 <span class="preprocessor">    template<> struct coordinate_system<Point> { typedef CoordinateSystem type; }; \</span>
-<a name="l00026"></a>00026 <span class="preprocessor">    template<int I> struct Point##accessor {};</span>
-<a name="l00027"></a>00027 <span class="preprocessor"></span>
-<a name="l00028"></a>00028 
-<a name="l00029"></a>00029 <span class="comment">// Non Const version</span>
-<a name="l00030"></a>00030 <span class="preprocessor">#define GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS(Point, CoordinateType) \</span>
-<a name="l00031"></a>00031 <span class="preprocessor">    template<> struct access<Point> { \</span>
-<a name="l00032"></a>00032 <span class="preprocessor">         template <int I> \</span>
-<a name="l00033"></a>00033 <span class="preprocessor">        static inline CoordinateType get(const Point& p) { return Point##accessor<I>::get(p); } \</span>
-<a name="l00034"></a>00034 <span class="preprocessor">        template <int I> \</span>
-<a name="l00035"></a>00035 <span class="preprocessor">        static inline void set(Point& p, const CoordinateType& value) { Point##accessor<I>::set(p, value); } \</span>
-<a name="l00036"></a>00036 <span class="preprocessor">    };</span>
-<a name="l00037"></a>00037 <span class="preprocessor"></span>
-<a name="l00038"></a>00038 <span class="comment">// Const version</span>
-<a name="l00039"></a>00039 <span class="preprocessor">#define GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_CONST(Point, CoordinateType) \</span>
-<a name="l00040"></a>00040 <span class="preprocessor">    template<> struct access<Point> { \</span>
-<a name="l00041"></a>00041 <span class="preprocessor">         template <int I> \</span>
-<a name="l00042"></a>00042 <span class="preprocessor">        static inline CoordinateType get(const Point& p) { return Point##accessor<I>::get(p); } \</span>
-<a name="l00043"></a>00043 <span class="preprocessor">    };</span>
-<a name="l00044"></a>00044 <span class="preprocessor"></span>
-<a name="l00045"></a>00045 
+<a name="l00015"></a>00015 <span class="comment">// This file implements a "macro party", </span>
+<a name="l00016"></a>00016 <span class="comment">// for registration of custom geometry types</span>
+<a name="l00017"></a>00017 
+<a name="l00018"></a>00018 <span class="preprocessor">#ifndef DOXYGEN_NO_SPECIALIZATIONS</span>
+<a name="l00019"></a>00019 <span class="preprocessor"></span>
+<a name="l00020"></a>00020 <span class="comment">// Starting point, specialize basic traits necessary to register a point</span>
+<a name="l00021"></a>00021 <span class="comment">// (the 'accessor' is technically not specialization but definition, specialized in another macro)</span>
+<a name="l00022"></a>00022 <span class="preprocessor">#define GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, Dim, CoordinateType, CoordinateSystem) \</span>
+<a name="l00023"></a>00023 <span class="preprocessor">    template<> struct tag<Point> { typedef point_tag type; }; \</span>
+<a name="l00024"></a>00024 <span class="preprocessor">    template<> struct dimension<Point> : boost::mpl::int_<Dim> {}; \</span>
+<a name="l00025"></a>00025 <span class="preprocessor">    template<> struct coordinate_type<Point> { typedef CoordinateType type; }; \</span>
+<a name="l00026"></a>00026 <span class="preprocessor">    template<> struct coordinate_system<Point> { typedef CoordinateSystem type; }; \</span>
+<a name="l00027"></a>00027 <span class="preprocessor">    template<std::size_t Dimension> struct Point##accessor {};</span>
+<a name="l00028"></a>00028 <span class="preprocessor"></span>
+<a name="l00029"></a>00029 
+<a name="l00030"></a>00030 <span class="comment">// Non Const version</span>
+<a name="l00031"></a>00031 <span class="preprocessor">#define GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS(Point, CoordinateType) \</span>
+<a name="l00032"></a>00032 <span class="preprocessor">    template<std::size_t Dimension> struct access<Point, Dimension> { \</span>
+<a name="l00033"></a>00033 <span class="preprocessor">        static inline CoordinateType get(Point const& p) \</span>
+<a name="l00034"></a>00034 <span class="preprocessor">        { return Point##accessor<Dimension>::get(p); } \</span>
+<a name="l00035"></a>00035 <span class="preprocessor">        static inline void set(Point& p, CoordinateType const& value) \</span>
+<a name="l00036"></a>00036 <span class="preprocessor">        { Point##accessor<Dimension>::set(p, value); } \</span>
+<a name="l00037"></a>00037 <span class="preprocessor">    };</span>
+<a name="l00038"></a>00038 <span class="preprocessor"></span>
+<a name="l00039"></a>00039 <span class="comment">// Const version</span>
+<a name="l00040"></a>00040 <span class="preprocessor">#define GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_CONST(Point, CoordinateType) \</span>
+<a name="l00041"></a>00041 <span class="preprocessor">    template<std::size_t Dimension> struct access<Point, Dimension> { \</span>
+<a name="l00042"></a>00042 <span class="preprocessor">        static inline CoordinateType get(Point const& p) \</span>
+<a name="l00043"></a>00043 <span class="preprocessor">        { return Point##accessor<Dimension>::get(p); } \</span>
+<a name="l00044"></a>00044 <span class="preprocessor">    };</span>
+<a name="l00045"></a>00045 <span class="preprocessor"></span>
 <a name="l00046"></a>00046 
 <a name="l00047"></a>00047 
-<a name="l00048"></a>00048 <span class="comment">// Specialize the point-specific-accessor class, declared below, per dimension</span>
-<a name="l00049"></a>00049 <span class="preprocessor">#define GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR(Point, Dim, CoordinateType, Get, Set) \</span>
-<a name="l00050"></a>00050 <span class="preprocessor">    template<> struct Point##accessor< Dim > \</span>
-<a name="l00051"></a>00051 <span class="preprocessor">    { \</span>
-<a name="l00052"></a>00052 <span class="preprocessor">        static inline CoordinateType get(const Point& p) { return  p. Get; } \</span>
-<a name="l00053"></a>00053 <span class="preprocessor">        static inline void set(Point& p, const CoordinateType& value) { p. Set = value; } \</span>
-<a name="l00054"></a>00054 <span class="preprocessor">    };</span>
-<a name="l00055"></a>00055 <span class="preprocessor"></span>
-<a name="l00056"></a>00056 
-<a name="l00057"></a>00057 <span class="comment">// Const version</span>
-<a name="l00058"></a>00058 <span class="preprocessor">#define GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_CONST(Point, Dim, CoordinateType, Get) \</span>
-<a name="l00059"></a>00059 <span class="preprocessor">    template<> struct Point##accessor< Dim > \</span>
-<a name="l00060"></a>00060 <span class="preprocessor">    { \</span>
-<a name="l00061"></a>00061 <span class="preprocessor">        static inline CoordinateType get(const Point& p) { return  p. Get; } \</span>
-<a name="l00062"></a>00062 <span class="preprocessor">    };</span>
-<a name="l00063"></a>00063 <span class="preprocessor"></span>
-<a name="l00064"></a>00064 
-<a name="l00065"></a>00065 <span class="comment">// Get/set version</span>
-<a name="l00066"></a>00066 <span class="preprocessor">#define GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_GET_SET(Point, Dim, CoordinateType, Get, Set) \</span>
-<a name="l00067"></a>00067 <span class="preprocessor">    template<> struct Point##accessor< Dim > \</span>
-<a name="l00068"></a>00068 <span class="preprocessor">    { \</span>
-<a name="l00069"></a>00069 <span class="preprocessor">        static inline CoordinateType get(const Point& p) { return  p. Get (); } \</span>
-<a name="l00070"></a>00070 <span class="preprocessor">        static inline void set(Point& p, const CoordinateType& value) { p. Set ( value ); } \</span>
-<a name="l00071"></a>00071 <span class="preprocessor">    };</span>
-<a name="l00072"></a>00072 <span class="preprocessor"></span>
-<a name="l00073"></a>00073 
-<a name="l00074"></a>00074 
-<a name="l00075"></a>00075 <span class="preprocessor">#define GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_2D(Point, CoordinateType, Get0, Get1, Set0, Set1) \</span>
-<a name="l00076"></a>00076 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR(Point, 0, CoordinateType, Get0, Set0) \</span>
-<a name="l00077"></a>00077 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR(Point, 1, CoordinateType, Get1, Set1)</span>
-<a name="l00078"></a>00078 <span class="preprocessor"></span>
-<a name="l00079"></a>00079 <span class="preprocessor">#define GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_3D(Point, CoordinateType, Get0, Get1, Get2, Set0, Set1, Set2) \</span>
+<a name="l00048"></a>00048 
+<a name="l00049"></a>00049 <span class="comment">// Specialize the point-specific-accessor class, declared below, per dimension</span>
+<a name="l00050"></a>00050 <span class="preprocessor">#define GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR(Point, Dim, CoordinateType, Get, Set) \</span>
+<a name="l00051"></a>00051 <span class="preprocessor">    template<> struct Point##accessor< Dim > \</span>
+<a name="l00052"></a>00052 <span class="preprocessor">    { \</span>
+<a name="l00053"></a>00053 <span class="preprocessor">        static inline CoordinateType get(Point const& p) { return p. Get; } \</span>
+<a name="l00054"></a>00054 <span class="preprocessor">        static inline void set(Point& p, CoordinateType const& value) { p. Set = value; } \</span>
+<a name="l00055"></a>00055 <span class="preprocessor">    };</span>
+<a name="l00056"></a>00056 <span class="preprocessor"></span>
+<a name="l00057"></a>00057 
+<a name="l00058"></a>00058 <span class="comment">// Const version</span>
+<a name="l00059"></a>00059 <span class="preprocessor">#define GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_CONST(Point, Dim, CoordinateType, Get) \</span>
+<a name="l00060"></a>00060 <span class="preprocessor">    template<> struct Point##accessor< Dim > \</span>
+<a name="l00061"></a>00061 <span class="preprocessor">    { \</span>
+<a name="l00062"></a>00062 <span class="preprocessor">        static inline CoordinateType get(Point const& p) \</span>
+<a name="l00063"></a>00063 <span class="preprocessor">        { return p. Get; } \</span>
+<a name="l00064"></a>00064 <span class="preprocessor">    };</span>
+<a name="l00065"></a>00065 <span class="preprocessor"></span>
+<a name="l00066"></a>00066 
+<a name="l00067"></a>00067 <span class="comment">// Get/set version</span>
+<a name="l00068"></a>00068 <span class="preprocessor">#define GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_GET_SET(Point, Dim, CoordinateType, Get, Set) \</span>
+<a name="l00069"></a>00069 <span class="preprocessor">    template<> struct Point##accessor< Dim > \</span>
+<a name="l00070"></a>00070 <span class="preprocessor">    { \</span>
+<a name="l00071"></a>00071 <span class="preprocessor">        static inline CoordinateType get(Point const& p) \</span>
+<a name="l00072"></a>00072 <span class="preprocessor">        { return  p. Get (); } \</span>
+<a name="l00073"></a>00073 <span class="preprocessor">        static inline void set(Point& p, CoordinateType const& value) \</span>
+<a name="l00074"></a>00074 <span class="preprocessor">        { p. Set ( value ); } \</span>
+<a name="l00075"></a>00075 <span class="preprocessor">    };</span>
+<a name="l00076"></a>00076 <span class="preprocessor"></span>
+<a name="l00077"></a>00077 
+<a name="l00078"></a>00078 
+<a name="l00079"></a>00079 <span class="preprocessor">#define GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_2D(Point, CoordinateType, Get0, Get1, Set0, Set1) \</span>
 <a name="l00080"></a>00080 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR(Point, 0, CoordinateType, Get0, Set0) \</span>
-<a name="l00081"></a>00081 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR(Point, 1, CoordinateType, Get1, Set1) \</span>
-<a name="l00082"></a>00082 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR(Point, 2, CoordinateType, Get2, Set2)</span>
-<a name="l00083"></a>00083 <span class="preprocessor"></span>
-<a name="l00084"></a>00084 <span class="comment">// Const versions</span>
-<a name="l00085"></a>00085 <span class="preprocessor">#define GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_CONST_2D(Point, CoordinateType, Get0, Get1) \</span>
-<a name="l00086"></a>00086 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_CONST(Point, 0, CoordinateType, Get0) \</span>
-<a name="l00087"></a>00087 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_CONST(Point, 1, CoordinateType, Get1)</span>
-<a name="l00088"></a>00088 <span class="preprocessor"></span>
-<a name="l00089"></a>00089 <span class="preprocessor">#define GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_CONST_3D(Point, CoordinateType, Get0, Get1, Get2) \</span>
+<a name="l00081"></a>00081 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR(Point, 1, CoordinateType, Get1, Set1)</span>
+<a name="l00082"></a>00082 <span class="preprocessor"></span>
+<a name="l00083"></a>00083 <span class="preprocessor">#define GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_3D(Point, CoordinateType, Get0, Get1, Get2, Set0, Set1, Set2) \</span>
+<a name="l00084"></a>00084 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR(Point, 0, CoordinateType, Get0, Set0) \</span>
+<a name="l00085"></a>00085 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR(Point, 1, CoordinateType, Get1, Set1) \</span>
+<a name="l00086"></a>00086 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR(Point, 2, CoordinateType, Get2, Set2)</span>
+<a name="l00087"></a>00087 <span class="preprocessor"></span>
+<a name="l00088"></a>00088 <span class="comment">// Const versions</span>
+<a name="l00089"></a>00089 <span class="preprocessor">#define GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_CONST_2D(Point, CoordinateType, Get0, Get1) \</span>
 <a name="l00090"></a>00090 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_CONST(Point, 0, CoordinateType, Get0) \</span>
-<a name="l00091"></a>00091 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_CONST(Point, 1, CoordinateType, Get1) \</span>
-<a name="l00092"></a>00092 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_CONST(Point, 2, CoordinateType, Get2)</span>
-<a name="l00093"></a>00093 <span class="preprocessor"></span>
-<a name="l00094"></a>00094 <span class="preprocessor">#endif // DOXYGEN_NO_SPECIALIZATIONS</span>
-<a name="l00095"></a>00095 <span class="preprocessor"></span>
-<a name="l00096"></a>00096 
-<a name="l00097"></a>00097 
-<a name="l00098"></a>00098 <span class="comment">// Library user macro to register a custom 2D point</span>
-<a name="l00099"></a><a class="code" href="register_2point_8hpp.html#14955651e3df068662a34944ca29764f">00099</a> <span class="preprocessor">#define GEOMETRY_REGISTER_POINT_2D(Point, CoordinateType, CoordinateSystem, Field0, Field1) \</span>
-<a name="l00100"></a>00100 <span class="preprocessor">namespace ggl { namespace traits {  \</span>
-<a name="l00101"></a>00101 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, 2, CoordinateType, CoordinateSystem) \</span>
-<a name="l00102"></a>00102 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS(Point, CoordinateType) \</span>
-<a name="l00103"></a>00103 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_2D(Point, CoordinateType, Field0, Field1, Field0, Field1) \</span>
-<a name="l00104"></a>00104 <span class="preprocessor">}}</span>
-<a name="l00105"></a>00105 <span class="preprocessor"></span>
-<a name="l00106"></a>00106 <span class="comment">// Library user macro to register a custom 3D point</span>
-<a name="l00107"></a><a class="code" href="register_2point_8hpp.html#3c77b4554aef1349e81be71035af3b64">00107</a> <span class="preprocessor">#define GEOMETRY_REGISTER_POINT_3D(Point, CoordinateType, CoordinateSystem, Field0, Field1, Field2) \</span>
-<a name="l00108"></a>00108 <span class="preprocessor">namespace ggl { namespace traits {  \</span>
-<a name="l00109"></a>00109 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, 3, CoordinateType, CoordinateSystem) \</span>
-<a name="l00110"></a>00110 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS(Point, CoordinateType) \</span>
-<a name="l00111"></a>00111 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_3D(Point, CoordinateType, Field0, Field1, Field2, Field0, Field1, Field2) \</span>
-<a name="l00112"></a>00112 <span class="preprocessor">}}</span>
-<a name="l00113"></a>00113 <span class="preprocessor"></span>
-<a name="l00114"></a>00114 
-<a name="l00115"></a>00115 
-<a name="l00116"></a>00116 <span class="comment">// Library user macro to register a custom 2D point (CONST version)</span>
-<a name="l00117"></a><a class="code" href="register_2point_8hpp.html#dae7297232bdaa4c6c569dcdb16209bf">00117</a> <span class="preprocessor">#define GEOMETRY_REGISTER_POINT_2D_CONST(Point, CoordinateType, CoordinateSystem, Field0, Field1) \</span>
-<a name="l00118"></a>00118 <span class="preprocessor">namespace ggl { namespace traits {  \</span>
-<a name="l00119"></a>00119 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, 2, CoordinateType, CoordinateSystem) \</span>
-<a name="l00120"></a>00120 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_CONST(Point, CoordinateType) \</span>
-<a name="l00121"></a>00121 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_CONST_2D(Point, CoordinateType, Field0, Field1) \</span>
-<a name="l00122"></a>00122 <span class="preprocessor">}}</span>
-<a name="l00123"></a>00123 <span class="preprocessor"></span>
-<a name="l00124"></a>00124 <span class="comment">// Library user macro to register a custom 3D point (CONST version)</span>
-<a name="l00125"></a><a class="code" href="register_2point_8hpp.html#bb96f6a00cda5806f0d7114f731ac971">00125</a> <span class="preprocessor">#define GEOMETRY_REGISTER_POINT_3D_CONST(Point, CoordinateType, CoordinateSystem, Field0, Field1, Field2) \</span>
-<a name="l00126"></a>00126 <span class="preprocessor">namespace ggl { namespace traits {  \</span>
-<a name="l00127"></a>00127 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, 3, CoordinateType, CoordinateSystem) \</span>
-<a name="l00128"></a>00128 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_CONST(Point, CoordinateType) \</span>
-<a name="l00129"></a>00129 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_CONST_3D(Point, CoordinateType, Field0, Field1, Field2) \</span>
-<a name="l00130"></a>00130 <span class="preprocessor">}}</span>
-<a name="l00131"></a>00131 <span class="preprocessor"></span>
-<a name="l00132"></a>00132 
-<a name="l00133"></a>00133 <span class="comment">// Library user macro to register a custom 2D point (having separate get/set methods)</span>
-<a name="l00134"></a><a class="code" href="register_2point_8hpp.html#1400081dc8c3320e31e0fb6ab3b777eb">00134</a> <span class="preprocessor">#define GEOMETRY_REGISTER_POINT_2D_GET_SET(Point, CoordinateType, CoordinateSystem, Get0, Get1, Set0, Set1) \</span>
-<a name="l00135"></a>00135 <span class="preprocessor">namespace ggl { namespace traits {  \</span>
-<a name="l00136"></a>00136 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, 2, CoordinateType, CoordinateSystem) \</span>
-<a name="l00137"></a>00137 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS(Point, CoordinateType) \</span>
-<a name="l00138"></a>00138 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_GET_SET(Point, 0, CoordinateType, Get0, Set0) \</span>
-<a name="l00139"></a>00139 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_GET_SET(Point, 1, CoordinateType, Get1, Set1) \</span>
-<a name="l00140"></a>00140 <span class="preprocessor">}}</span>
-<a name="l00141"></a>00141 <span class="preprocessor"></span>
-<a name="l00142"></a>00142 
-<a name="l00143"></a>00143 <span class="comment">// Library user macro to register a custom 3D point (having separate get/set methods)</span>
-<a name="l00144"></a><a class="code" href="register_2point_8hpp.html#505d8eb529cc02313bf107f59c8dcc65">00144</a> <span class="preprocessor">#define GEOMETRY_REGISTER_POINT_3D_GET_SET(Point, CoordinateType, CoordinateSystem, Get0, Get1, Get2, Set0, Set1, Set2) \</span>
-<a name="l00145"></a>00145 <span class="preprocessor">namespace ggl { namespace traits {  \</span>
-<a name="l00146"></a>00146 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, 3, CoordinateType, CoordinateSystem) \</span>
-<a name="l00147"></a>00147 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS(Point, CoordinateType) \</span>
-<a name="l00148"></a>00148 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_GET_SET(Point, 0, CoordinateType, Get0, Set0) \</span>
-<a name="l00149"></a>00149 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_GET_SET(Point, 1, CoordinateType, Get1, Set1) \</span>
-<a name="l00150"></a>00150 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_GET_SET(Point, 2, CoordinateType, Get2, Set2) \</span>
-<a name="l00151"></a>00151 <span class="preprocessor">}}</span>
-<a name="l00152"></a>00152 <span class="preprocessor"></span>
-<a name="l00153"></a>00153 
-<a name="l00154"></a>00154 <span class="preprocessor">#endif // GGL_GEOMETRIES_REGISTER_POINT_HPP</span>
+<a name="l00091"></a>00091 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_CONST(Point, 1, CoordinateType, Get1)</span>
+<a name="l00092"></a>00092 <span class="preprocessor"></span>
+<a name="l00093"></a>00093 <span class="preprocessor">#define GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_CONST_3D(Point, CoordinateType, Get0, Get1, Get2) \</span>
+<a name="l00094"></a>00094 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_CONST(Point, 0, CoordinateType, Get0) \</span>
+<a name="l00095"></a>00095 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_CONST(Point, 1, CoordinateType, Get1) \</span>
+<a name="l00096"></a>00096 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_CONST(Point, 2, CoordinateType, Get2)</span>
+<a name="l00097"></a>00097 <span class="preprocessor"></span>
+<a name="l00098"></a>00098 <span class="preprocessor">#endif // DOXYGEN_NO_SPECIALIZATIONS</span>
+<a name="l00099"></a>00099 <span class="preprocessor"></span>
+<a name="l00100"></a>00100 
+<a name="l00101"></a>00101 
+<a name="l00102"></a>00102 <span class="comment">// Library user macro to register a custom 2D point</span>
+<a name="l00103"></a><a class="code" href="register_2point_8hpp.html#14955651e3df068662a34944ca29764f">00103</a> <span class="preprocessor">#define GEOMETRY_REGISTER_POINT_2D(Point, CoordinateType, CoordinateSystem, Field0, Field1) \</span>
+<a name="l00104"></a>00104 <span class="preprocessor">namespace ggl { namespace traits {  \</span>
+<a name="l00105"></a>00105 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, 2, CoordinateType, CoordinateSystem) \</span>
+<a name="l00106"></a>00106 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS(Point, CoordinateType) \</span>
+<a name="l00107"></a>00107 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_2D(Point, CoordinateType, Field0, Field1, Field0, Field1) \</span>
+<a name="l00108"></a>00108 <span class="preprocessor">}}</span>
+<a name="l00109"></a>00109 <span class="preprocessor"></span>
+<a name="l00110"></a>00110 <span class="comment">// Library user macro to register a custom 3D point</span>
+<a name="l00111"></a><a class="code" href="register_2point_8hpp.html#3c77b4554aef1349e81be71035af3b64">00111</a> <span class="preprocessor">#define GEOMETRY_REGISTER_POINT_3D(Point, CoordinateType, CoordinateSystem, Field0, Field1, Field2) \</span>
+<a name="l00112"></a>00112 <span class="preprocessor">namespace ggl { namespace traits {  \</span>
+<a name="l00113"></a>00113 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, 3, CoordinateType, CoordinateSystem) \</span>
+<a name="l00114"></a>00114 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS(Point, CoordinateType) \</span>
+<a name="l00115"></a>00115 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_3D(Point, CoordinateType, Field0, Field1, Field2, Field0, Field1, Field2) \</span>
+<a name="l00116"></a>00116 <span class="preprocessor">}}</span>
+<a name="l00117"></a>00117 <span class="preprocessor"></span>
+<a name="l00118"></a>00118 
+<a name="l00119"></a>00119 
+<a name="l00120"></a>00120 <span class="comment">// Library user macro to register a custom 2D point (CONST version)</span>
+<a name="l00121"></a><a class="code" href="register_2point_8hpp.html#dae7297232bdaa4c6c569dcdb16209bf">00121</a> <span class="preprocessor">#define GEOMETRY_REGISTER_POINT_2D_CONST(Point, CoordinateType, CoordinateSystem, Field0, Field1) \</span>
+<a name="l00122"></a>00122 <span class="preprocessor">namespace ggl { namespace traits {  \</span>
+<a name="l00123"></a>00123 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, 2, CoordinateType, CoordinateSystem) \</span>
+<a name="l00124"></a>00124 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_CONST(Point, CoordinateType) \</span>
+<a name="l00125"></a>00125 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_CONST_2D(Point, CoordinateType, Field0, Field1) \</span>
+<a name="l00126"></a>00126 <span class="preprocessor">}}</span>
+<a name="l00127"></a>00127 <span class="preprocessor"></span>
+<a name="l00128"></a>00128 <span class="comment">// Library user macro to register a custom 3D point (CONST version)</span>
+<a name="l00129"></a><a class="code" href="register_2point_8hpp.html#bb96f6a00cda5806f0d7114f731ac971">00129</a> <span class="preprocessor">#define GEOMETRY_REGISTER_POINT_3D_CONST(Point, CoordinateType, CoordinateSystem, Field0, Field1, Field2) \</span>
+<a name="l00130"></a>00130 <span class="preprocessor">namespace ggl { namespace traits {  \</span>
+<a name="l00131"></a>00131 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, 3, CoordinateType, CoordinateSystem) \</span>
+<a name="l00132"></a>00132 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_CONST(Point, CoordinateType) \</span>
+<a name="l00133"></a>00133 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS_CONST_3D(Point, CoordinateType, Field0, Field1, Field2) \</span>
+<a name="l00134"></a>00134 <span class="preprocessor">}}</span>
+<a name="l00135"></a>00135 <span class="preprocessor"></span>
+<a name="l00136"></a>00136 
+<a name="l00137"></a>00137 <span class="comment">// Library user macro to register a custom 2D point (having separate get/set methods)</span>
+<a name="l00138"></a><a class="code" href="register_2point_8hpp.html#1400081dc8c3320e31e0fb6ab3b777eb">00138</a> <span class="preprocessor">#define GEOMETRY_REGISTER_POINT_2D_GET_SET(Point, CoordinateType, CoordinateSystem, Get0, Get1, Set0, Set1) \</span>
+<a name="l00139"></a>00139 <span class="preprocessor">namespace ggl { namespace traits {  \</span>
+<a name="l00140"></a>00140 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, 2, CoordinateType, CoordinateSystem) \</span>
+<a name="l00141"></a>00141 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS(Point, CoordinateType) \</span>
+<a name="l00142"></a>00142 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_GET_SET(Point, 0, CoordinateType, Get0, Set0) \</span>
+<a name="l00143"></a>00143 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_GET_SET(Point, 1, CoordinateType, Get1, Set1) \</span>
+<a name="l00144"></a>00144 <span class="preprocessor">}}</span>
+<a name="l00145"></a>00145 <span class="preprocessor"></span>
+<a name="l00146"></a>00146 
+<a name="l00147"></a>00147 <span class="comment">// Library user macro to register a custom 3D point (having separate get/set methods)</span>
+<a name="l00148"></a><a class="code" href="register_2point_8hpp.html#505d8eb529cc02313bf107f59c8dcc65">00148</a> <span class="preprocessor">#define GEOMETRY_REGISTER_POINT_3D_GET_SET(Point, CoordinateType, CoordinateSystem, Get0, Get1, Get2, Set0, Set1, Set2) \</span>
+<a name="l00149"></a>00149 <span class="preprocessor">namespace ggl { namespace traits {  \</span>
+<a name="l00150"></a>00150 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_TRAITS(Point, 3, CoordinateType, CoordinateSystem) \</span>
+<a name="l00151"></a>00151 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESS(Point, CoordinateType) \</span>
+<a name="l00152"></a>00152 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_GET_SET(Point, 0, CoordinateType, Get0, Set0) \</span>
+<a name="l00153"></a>00153 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_GET_SET(Point, 1, CoordinateType, Get1, Set1) \</span>
+<a name="l00154"></a>00154 <span class="preprocessor">    GEOMETRY_DETAIL_SPECIALIZE_POINT_ACCESSOR_GET_SET(Point, 2, CoordinateType, Get2, Set2) \</span>
+<a name="l00155"></a>00155 <span class="preprocessor">}}</span>
+<a name="l00156"></a>00156 <span class="preprocessor"></span>
+<a name="l00157"></a>00157 
+<a name="l00158"></a>00158 <span class="preprocessor">#endif // GGL_GEOMETRIES_REGISTER_POINT_HPP</span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/reverse__dispatch_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/reverse__dispatch_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/reverse__dispatch_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -54,7 +54,7 @@
 <a name="l00012"></a>00012 <span class="preprocessor"></span>
 <a name="l00013"></a>00013 
 <a name="l00014"></a>00014 <span class="preprocessor">#include <boost/type_traits.hpp></span>
-<a name="l00015"></a>00015 
+<a name="l00015"></a>00015 <span class="preprocessor">#include <boost/mpl/if.hpp></span>
 <a name="l00016"></a>00016 <span class="preprocessor">#include <boost/mpl/greater.hpp></span>
 <a name="l00017"></a>00017 
 <a name="l00018"></a>00018 <span class="preprocessor">#include <<a class="code" href="core_2geometry__id_8hpp.html">ggl/core/geometry_id.hpp</a>></span>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/segment_8hpp.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/segment_8hpp.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/segment_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -47,9 +47,9 @@
 <a href="segment_8hpp_source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
 <tr><td></td></tr>
 <tr><td colspan="2"><br><h2>Classes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment.html">ggl::segment< P ></a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1segment.html">ggl::segment< ConstOrNonConstPoint ></a></td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Class <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>: small containing two (templatized) <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> references.  More...<br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Class <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>: small class containing two (templatized) <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> references.  More...<br></td></tr>
 <tr><td colspan="2"><br><h2>Namespaces</h2></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceggl.html">ggl</a></td></tr>
 
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/segment_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/segment_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/segment_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -62,78 +62,89 @@
 <a name="l00020"></a>00020 <span class="keyword">namespace </span>ggl
 <a name="l00021"></a>00021 {
 <a name="l00022"></a>00022 
-<a name="l00034"></a>00034 <span class="keyword">template</span><<span class="keyword">typename</span> P>
-<a name="l00035"></a><a class="code" href="structggl_1_1segment.html">00035</a> <span class="keyword">struct </span><a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>
-<a name="l00036"></a>00036 {
-<a name="l00037"></a>00037 <span class="keyword">private</span>:
-<a name="l00038"></a>00038 
-<a name="l00039"></a>00039     BOOST_CONCEPT_ASSERT( (<span class="keyword">typename</span> boost::mpl::if_
-<a name="l00040"></a>00040         <
-<a name="l00041"></a>00041             boost::is_const<P>,
-<a name="l00042"></a>00042             <a class="code" href="structggl_1_1concept_1_1_const_point.html" title="Checks point concept (const version).">concept::ConstPoint<P></a>,
-<a name="l00043"></a>00043             <a class="code" href="structggl_1_1concept_1_1_point.html" title="Checks point concept, using Boost Concept Check Library and metafunctions.">concept::Point<P></a>
-<a name="l00044"></a>00044         >
-<a name="l00045"></a>00045     ) );
-<a name="l00046"></a>00046 
-<a name="l00047"></a>00047 <span class="keyword">public</span>:
-<a name="l00048"></a>00048 
-<a name="l00049"></a><a class="code" href="structggl_1_1segment.html#47f8bba55326d5ae988dc3a5a9f146c7">00049</a>     <span class="keyword">typedef</span> P <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type</a>;
-<a name="l00050"></a>00050 
-<a name="l00051"></a><a class="code" href="structggl_1_1segment.html#3f8aa8a3542ebf499e4987ef3ccfd5b1">00051</a>     P& <a class="code" href="structggl_1_1segment.html#3f8aa8a3542ebf499e4987ef3ccfd5b1">first</a>;
-<a name="l00052"></a><a class="code" href="structggl_1_1segment.html#e5aea8fdfbd0e0dece9b227a8a5cec33">00052</a>     P& <a class="code" href="structggl_1_1segment.html#e5aea8fdfbd0e0dece9b227a8a5cec33">second</a>;
-<a name="l00053"></a>00053 
-<a name="l00054"></a><a class="code" href="structggl_1_1segment.html#e8e37a9f4eeacb317a1ce971da6cbd87">00054</a>     <span class="keyword">inline</span> <a class="code" href="structggl_1_1segment.html#e8e37a9f4eeacb317a1ce971da6cbd87">segment</a>(P& p1, P& p2)
-<a name="l00055"></a>00055         : <a class="code" href="structggl_1_1segment.html#3f8aa8a3542ebf499e4987ef3ccfd5b1">first</a>(p1), <a class="code" href="structggl_1_1segment.html#e5aea8fdfbd0e0dece9b227a8a5cec33">second</a>(p2)
-<a name="l00056"></a>00056     {}
-<a name="l00057"></a>00057 };
-<a name="l00058"></a>00058 
-<a name="l00059"></a>00059 <span class="comment">// Traits specializations for segment above</span>
-<a name="l00060"></a>00060 <span class="preprocessor">#ifndef DOXYGEN_NO_TRAITS_SPECIALIZATIONS</span>
-<a name="l00061"></a>00061 <span class="preprocessor"></span><span class="keyword">namespace </span>traits
-<a name="l00062"></a>00062 {
-<a name="l00063"></a>00063 
-<a name="l00064"></a>00064 <span class="keyword">template</span> <<span class="keyword">typename</span> P>
-<a name="l00065"></a>00065 <span class="keyword">struct </span>tag< segment<P> >
-<a name="l00066"></a>00066 {
-<a name="l00067"></a>00067     <span class="keyword">typedef</span> segment_tag <a class="code" href="structggl_1_1traits_1_1tag.html#6a33811e99e92e16ae2529e6ecd8a1b6">type</a>;
-<a name="l00068"></a>00068 };
-<a name="l00069"></a>00069 
-<a name="l00070"></a>00070 <span class="keyword">template</span> <<span class="keyword">typename</span> P>
-<a name="l00071"></a>00071 <span class="keyword">struct </span>point_type<segment<P> >
-<a name="l00072"></a>00072 {
-<a name="l00073"></a>00073     <span class="keyword">typedef</span> P type;
-<a name="l00074"></a>00074 };
-<a name="l00075"></a>00075 
-<a name="l00076"></a>00076 <span class="keyword">template</span> <<span class="keyword">typename</span> P, std::<span class="keywordtype">size_t</span> I, std::<span class="keywordtype">size_t</span> D>
-<a name="l00077"></a>00077 <span class="keyword">struct </span>indexed_access<segment<P>, I, D>
-<a name="l00078"></a>00078 {
-<a name="l00079"></a>00079     <span class="keyword">typedef</span> segment<P> segment_type;
-<a name="l00080"></a>00080     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">ggl::coordinate_type<segment_type>::type</a> coordinate_type;
-<a name="l00081"></a>00081 
-<a name="l00082"></a>00082     <span class="keyword">static</span> <span class="keyword">inline</span> coordinate_type <span class="keyword">get</span>(segment_type <span class="keyword">const</span>& s)
-<a name="l00083"></a>00083     {
-<a name="l00084"></a>00084         <span class="keywordflow">return</span> (I == 0 ? ggl::get<D>(s.first) : ggl::get<D>(s.second));
-<a name="l00085"></a>00085     }
-<a name="l00086"></a>00086 
-<a name="l00087"></a>00087     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(segment_type& s, coordinate_type <span class="keyword">const</span>& value)
-<a name="l00088"></a>00088     {
-<a name="l00089"></a>00089         <span class="keywordflow">if</span> (I == 0)
-<a name="l00090"></a>00090         {
-<a name="l00091"></a>00091             ggl::set<D>(s.first, value);
-<a name="l00092"></a>00092         }
-<a name="l00093"></a>00093         <span class="keywordflow">else</span>
-<a name="l00094"></a>00094         {
-<a name="l00095"></a>00095             ggl::set<D>(s.second, value);
-<a name="l00096"></a>00096         }
-<a name="l00097"></a>00097     }
-<a name="l00098"></a>00098 };
-<a name="l00099"></a>00099 
-<a name="l00100"></a>00100 } <span class="comment">// namespace traits</span>
-<a name="l00101"></a>00101 <span class="preprocessor">#endif // DOXYGEN_NO_TRAITS_SPECIALIZATIONS</span>
-<a name="l00102"></a>00102 <span class="preprocessor"></span>
-<a name="l00103"></a>00103 } <span class="comment">// namespace ggl</span>
-<a name="l00104"></a>00104 
-<a name="l00105"></a>00105 <span class="preprocessor">#endif // GGL_GEOMETRIES_SEGMENT_HPP</span>
+<a name="l00036"></a>00036 <span class="keyword">template</span><<span class="keyword">typename</span> ConstOrNonConstPo<span class="keywordtype">int</span>>
+<a name="l00037"></a><a class="code" href="classggl_1_1segment.html">00037</a> <span class="keyword">class </span><a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>
+<a name="l00038"></a>00038 {
+<a name="l00039"></a>00039     BOOST_CONCEPT_ASSERT( (
+<a name="l00040"></a>00040         <span class="keyword">typename</span> boost::mpl::if_
+<a name="l00041"></a>00041             <
+<a name="l00042"></a>00042                 boost::is_const<ConstOrNonConstPoint>,
+<a name="l00043"></a>00043                 <a class="code" href="structggl_1_1concept_1_1_point.html" title="Checks point concept, using Boost Concept Check Library and metafunctions.">concept::Point<ConstOrNonConstPoint></a>,
+<a name="l00044"></a>00044                 <a class="code" href="structggl_1_1concept_1_1_const_point.html" title="Checks point concept (const version).">concept::ConstPoint<ConstOrNonConstPoint></a>
+<a name="l00045"></a>00045             >
+<a name="l00046"></a>00046     ) );
+<a name="l00047"></a>00047 
+<a name="l00048"></a>00048     <span class="keyword">typedef</span> ConstOrNonConstPoint <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type</a>;
+<a name="l00049"></a>00049 
+<a name="l00050"></a>00050 <span class="keyword">public</span>:
+<a name="l00051"></a>00051 
+<a name="l00052"></a><a class="code" href="classggl_1_1segment.html#76c7f18dd19699ccb7353137b8981c65">00052</a>     <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type</a>& <a class="code" href="classggl_1_1segment.html#76c7f18dd19699ccb7353137b8981c65">first</a>;
+<a name="l00053"></a><a class="code" href="classggl_1_1segment.html#543b3806df8d74067157587323917a71">00053</a>     <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type</a>& <a class="code" href="classggl_1_1segment.html#543b3806df8d74067157587323917a71">second</a>;
+<a name="l00054"></a>00054 
+<a name="l00055"></a><a class="code" href="classggl_1_1segment.html#186525605856fad4270057e760d6c020">00055</a>     <span class="keyword">inline</span> <a class="code" href="classggl_1_1segment.html#186525605856fad4270057e760d6c020">segment</a>(<a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type</a>& p1, <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type</a>& p2)
+<a name="l00056"></a>00056         : <a class="code" href="classggl_1_1segment.html#76c7f18dd19699ccb7353137b8981c65">first</a>(p1)
+<a name="l00057"></a>00057         , <a class="code" href="classggl_1_1segment.html#543b3806df8d74067157587323917a71">second</a>(p2)
+<a name="l00058"></a>00058     {}
+<a name="l00059"></a>00059 };
+<a name="l00060"></a>00060 
+<a name="l00061"></a>00061 <span class="comment">// Traits specializations for segment above</span>
+<a name="l00062"></a>00062 <span class="preprocessor">#ifndef DOXYGEN_NO_TRAITS_SPECIALIZATIONS</span>
+<a name="l00063"></a>00063 <span class="preprocessor"></span><span class="keyword">namespace </span>traits
+<a name="l00064"></a>00064 {
+<a name="l00065"></a>00065 
+<a name="l00066"></a>00066 <span class="keyword">template</span> <<span class="keyword">typename</span> ConstOrNonConstPo<span class="keywordtype">int</span>>
+<a name="l00067"></a>00067 <span class="keyword">struct </span>tag<segment<ConstOrNonConstPoint> >
+<a name="l00068"></a>00068 {
+<a name="l00069"></a>00069     <span class="keyword">typedef</span> segment_tag <a class="code" href="structggl_1_1traits_1_1tag.html#6a33811e99e92e16ae2529e6ecd8a1b6">type</a>;
+<a name="l00070"></a>00070 };
+<a name="l00071"></a>00071 
+<a name="l00072"></a>00072 <span class="keyword">template</span> <<span class="keyword">typename</span> ConstOrNonConstPo<span class="keywordtype">int</span>>
+<a name="l00073"></a>00073 <span class="keyword">struct </span>point_type<segment<ConstOrNonConstPoint> >
+<a name="l00074"></a>00074 {
+<a name="l00075"></a>00075     <span class="keyword">typedef</span> ConstOrNonConstPoint type;
+<a name="l00076"></a>00076 };
+<a name="l00077"></a>00077 
+<a name="l00078"></a>00078 <span class="keyword">template</span> <<span class="keyword">typename</span> ConstOrNonConstPo<span class="keywordtype">int</span>, std::<span class="keywordtype">size_t</span> Dimension>
+<a name="l00079"></a>00079 <span class="keyword">struct </span>indexed_access<segment<ConstOrNonConstPoint>, 0, Dimension>
+<a name="l00080"></a>00080 {
+<a name="l00081"></a>00081     <span class="keyword">typedef</span> segment<ConstOrNonConstPoint> segment_type;
+<a name="l00082"></a>00082     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">ggl::coordinate_type<segment_type>::type</a> coordinate_type;
+<a name="l00083"></a>00083 
+<a name="l00084"></a>00084     <span class="keyword">static</span> <span class="keyword">inline</span> coordinate_type <span class="keyword">get</span>(segment_type <span class="keyword">const</span>& s)
+<a name="l00085"></a>00085     {
+<a name="l00086"></a>00086         <span class="keywordflow">return</span> ggl::get<Dimension>(s.first);
+<a name="l00087"></a>00087     }
+<a name="l00088"></a>00088 
+<a name="l00089"></a>00089     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(segment_type& s, coordinate_type <span class="keyword">const</span>& value)
+<a name="l00090"></a>00090     {
+<a name="l00091"></a>00091         ggl::set<Dimension>(s.first, value);
+<a name="l00092"></a>00092     }
+<a name="l00093"></a>00093 };
+<a name="l00094"></a>00094 
+<a name="l00095"></a>00095 
+<a name="l00096"></a>00096 <span class="keyword">template</span> <<span class="keyword">typename</span> ConstOrNonConstPo<span class="keywordtype">int</span>, std::<span class="keywordtype">size_t</span> Dimension>
+<a name="l00097"></a>00097 <span class="keyword">struct </span>indexed_access<segment<ConstOrNonConstPoint>, 1, Dimension>
+<a name="l00098"></a>00098 {
+<a name="l00099"></a>00099     <span class="keyword">typedef</span> segment<ConstOrNonConstPoint> segment_type;
+<a name="l00100"></a>00100     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1coordinate__type.html" title="Meta-function which defines coordinate type (int, float, double, etc) of any geometry...">ggl::coordinate_type<segment_type>::type</a> coordinate_type;
+<a name="l00101"></a>00101 
+<a name="l00102"></a>00102     <span class="keyword">static</span> <span class="keyword">inline</span> coordinate_type <span class="keyword">get</span>(segment_type <span class="keyword">const</span>& s)
+<a name="l00103"></a>00103     {
+<a name="l00104"></a>00104         <span class="keywordflow">return</span> ggl::get<Dimension>(s.second);
+<a name="l00105"></a>00105     }
+<a name="l00106"></a>00106 
+<a name="l00107"></a>00107     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(segment_type& s, coordinate_type <span class="keyword">const</span>& value)
+<a name="l00108"></a>00108     {
+<a name="l00109"></a>00109         ggl::set<Dimension>(s.second, value);
+<a name="l00110"></a>00110     }
+<a name="l00111"></a>00111 };
+<a name="l00112"></a>00112 
+<a name="l00113"></a>00113 } <span class="comment">// namespace traits</span>
+<a name="l00114"></a>00114 <span class="preprocessor">#endif // DOXYGEN_NO_TRAITS_SPECIALIZATIONS</span>
+<a name="l00115"></a>00115 <span class="preprocessor"></span>
+<a name="l00116"></a>00116 } <span class="comment">// namespace ggl</span>
+<a name="l00117"></a>00117 
+<a name="l00118"></a>00118 <span class="preprocessor">#endif // GGL_GEOMETRIES_SEGMENT_HPP</span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/segment__concept_8hpp.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/segment__concept_8hpp.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/segment__concept_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -57,7 +57,7 @@
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1concept_1_1_segment.html">ggl::concept::Segment< S ></a></td></tr>
 
-<tr><td class="mdescLeft"> </td><td class="mdescRight">Checks <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> <a class="el" href="namespaceggl_1_1concept.html">concept</a>, using Boost Concept Check Library and metafunctions.  More...<br></td></tr>
+<tr><td class="mdescLeft"> </td><td class="mdescRight">Checks <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> <a class="el" href="namespaceggl_1_1concept.html">concept</a>, using Boost Concept Check Library and metafunctions.  More...<br></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><b>ggl::concept::Segment< S >::dimension_checker< C, D, N ></b></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Internal structure to check if access is OK for all dimensions. <br></td></tr>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/segment__iterator_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/segment__iterator_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/segment__iterator_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -76,13 +76,13 @@
 <a name="l00034"></a>00034 {
 <a name="l00035"></a><a class="code" href="structggl_1_1segment__iterator.html#2670ce6fa8403a2da8b1b79c9a62ef47">00035</a>     <span class="keyword">typedef</span> Base <a class="code" href="structggl_1_1segment__iterator.html#2670ce6fa8403a2da8b1b79c9a62ef47">base_type</a>;
 <a name="l00036"></a><a class="code" href="structggl_1_1segment__iterator.html#e388acc7d123761a41a0132ed0b19d29">00036</a>     <span class="keyword">typedef</span> Point <a class="code" href="structggl_1_1point__type.html" title="Meta-function which defines point type of any geometry.">point_type</a>;
-<a name="l00037"></a><a class="code" href="structggl_1_1segment__iterator.html#410f1a0aa22f7f4fb6c0850213aba66d">00037</a>     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="structggl_1_1segment.html">ggl::segment<Point></a> <a class="code" href="structggl_1_1segment.html">segment_type</a>;
+<a name="l00037"></a><a class="code" href="structggl_1_1segment__iterator.html#410f1a0aa22f7f4fb6c0850213aba66d">00037</a>     <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classggl_1_1segment.html">ggl::segment<Point></a> <a class="code" href="classggl_1_1segment.html">segment_type</a>;
 <a name="l00038"></a>00038 
 <a name="l00039"></a><a class="code" href="structggl_1_1segment__iterator.html#8f0ff7afda611c09fb9df03c70c99d76">00039</a>     <span class="keyword">typedef</span> std::input_iterator_tag <a class="code" href="structggl_1_1segment__iterator.html#8f0ff7afda611c09fb9df03c70c99d76">iterator_category</a>;
 <a name="l00040"></a><a class="code" href="structggl_1_1segment__iterator.html#e3d45134f345df9ec7aa89f8e2e95bdf">00040</a>     <span class="keyword">typedef</span> <span class="keyword">typename</span> std::iterator_traits<Base>::difference_type <a class="code" href="structggl_1_1segment__iterator.html#e3d45134f345df9ec7aa89f8e2e95bdf">difference_type</a>;
-<a name="l00041"></a><a class="code" href="structggl_1_1segment__iterator.html#e7521e2f53256bf6bd96b99079c92b4f">00041</a>     <span class="keyword">typedef</span> <a class="code" href="structggl_1_1segment.html">segment_type</a> <a class="code" href="structggl_1_1segment.html">value_type</a>;
-<a name="l00042"></a><a class="code" href="structggl_1_1segment__iterator.html#fe664c6678e12e841a1c0be1e77e53a0">00042</a>     <span class="keyword">typedef</span> <a class="code" href="structggl_1_1segment.html">segment_type</a>* <a class="code" href="structggl_1_1segment.html">pointer</a>;
-<a name="l00043"></a><a class="code" href="structggl_1_1segment__iterator.html#71b04f78cf84d967d8d11ec092d54dcc">00043</a>     <span class="keyword">typedef</span> <a class="code" href="structggl_1_1segment.html">segment_type</a>& <a class="code" href="structggl_1_1segment.html">reference</a>;
+<a name="l00041"></a><a class="code" href="structggl_1_1segment__iterator.html#e7521e2f53256bf6bd96b99079c92b4f">00041</a>     <span class="keyword">typedef</span> <a class="code" href="classggl_1_1segment.html">segment_type</a> <a class="code" href="classggl_1_1segment.html">value_type</a>;
+<a name="l00042"></a><a class="code" href="structggl_1_1segment__iterator.html#fe664c6678e12e841a1c0be1e77e53a0">00042</a>     <span class="keyword">typedef</span> <a class="code" href="classggl_1_1segment.html">segment_type</a>* <a class="code" href="classggl_1_1segment.html">pointer</a>;
+<a name="l00043"></a><a class="code" href="structggl_1_1segment__iterator.html#71b04f78cf84d967d8d11ec092d54dcc">00043</a>     <span class="keyword">typedef</span> <a class="code" href="classggl_1_1segment.html">segment_type</a>& <a class="code" href="classggl_1_1segment.html">reference</a>;
 <a name="l00044"></a>00044 
 <a name="l00045"></a><a class="code" href="structggl_1_1segment__iterator.html#64fa7cd0ce95c704f4a40bdc914cffbb">00045</a>     <span class="keyword">explicit</span> <a class="code" href="structggl_1_1segment__iterator.html#64fa7cd0ce95c704f4a40bdc914cffbb">segment_iterator</a>(Base <span class="keyword">const</span>& end)
 <a name="l00046"></a>00046         : m_segment(p1 , p2)
@@ -105,7 +105,7 @@
 <a name="l00063"></a>00063         }
 <a name="l00064"></a>00064     }
 <a name="l00065"></a>00065 
-<a name="l00066"></a><a class="code" href="structggl_1_1segment__iterator.html#5f87341660aa48a2807c5d1a1392f4c2">00066</a>     <a class="code" href="structggl_1_1segment.html">reference</a> <a class="code" href="structggl_1_1segment__iterator.html#5f87341660aa48a2807c5d1a1392f4c2">operator*</a>()
+<a name="l00066"></a><a class="code" href="structggl_1_1segment__iterator.html#5f87341660aa48a2807c5d1a1392f4c2">00066</a>     <a class="code" href="classggl_1_1segment.html">reference</a> <a class="code" href="structggl_1_1segment__iterator.html#5f87341660aa48a2807c5d1a1392f4c2">operator*</a>()
 <a name="l00067"></a>00067     {
 <a name="l00068"></a>00068         BOOST_ASSERT(m_it != m_end && m_prev != m_end);
 <a name="l00069"></a>00069 
@@ -115,7 +115,7 @@
 <a name="l00073"></a>00073         <span class="keywordflow">return</span> m_segment;
 <a name="l00074"></a>00074     }
 <a name="l00075"></a>00075 
-<a name="l00076"></a><a class="code" href="structggl_1_1segment__iterator.html#2b2dfc371bc599e81a16671a83fc16de">00076</a>     <a class="code" href="structggl_1_1segment.html">pointer</a> <a class="code" href="structggl_1_1segment__iterator.html#2b2dfc371bc599e81a16671a83fc16de">operator-></a>()
+<a name="l00076"></a><a class="code" href="structggl_1_1segment__iterator.html#2b2dfc371bc599e81a16671a83fc16de">00076</a>     <a class="code" href="classggl_1_1segment.html">pointer</a> <a class="code" href="structggl_1_1segment__iterator.html#2b2dfc371bc599e81a16671a83fc16de">operator-></a>()
 <a name="l00077"></a>00077     {
 <a name="l00078"></a>00078         <span class="keywordflow">return</span> &(<a class="code" href="structggl_1_1segment__iterator.html#5f87341660aa48a2807c5d1a1392f4c2">operator*</a>());
 <a name="l00079"></a>00079     }
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/simplify__douglas__peucker_8hpp.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/simplify__douglas__peucker_8hpp.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/simplify__douglas__peucker_8hpp.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -47,7 +47,7 @@
 <a href="simplify__douglas__peucker_8hpp_source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
 <tr><td></td></tr>
 <tr><td colspan="2"><br><h2>Classes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker< R, O_IT, PSDS ></a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">ggl::strategy::simplify::douglas_peucker< Point, PointDistanceStrategy ></a></td></tr>
 
 <tr><td class="mdescLeft"> </td><td class="mdescRight">Implements the <a class="el" href="namespaceggl_1_1strategy_1_1simplify.html">simplify</a> algorithm.  More...<br></td></tr>
 <tr><td colspan="2"><br><h2>Namespaces</h2></td></tr>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/simplify__douglas__peucker_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/simplify__douglas__peucker_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/simplify__douglas__peucker_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -70,7 +70,7 @@
 <a name="l00028"></a>00028 <span class="keyword">namespace </span>ggl
 <a name="l00029"></a>00029 {
 <a name="l00030"></a>00030 
-<a name="l00031"></a>00031 <span class="keyword">namespace </span>strategy { <span class="keyword">namespace </span><a class="code" href="group__simplify.html#g752a5b4c8a40756da0e717c1ae4d2d8d" title="Simplify a geometry.">simplify</a> {
+<a name="l00031"></a><a class="code" href="namespaceggl_1_1strategy_1_1simplify.html">00031</a> <span class="keyword">namespace </span>strategy { <span class="keyword">namespace </span><a class="code" href="group__simplify.html#g752a5b4c8a40756da0e717c1ae4d2d8d" title="Simplify a geometry.">simplify</a> {
 <a name="l00032"></a>00032 
 <a name="l00033"></a>00033 
 <a name="l00034"></a>00034 <span class="preprocessor">#ifndef DOXYGEN_NO_DETAIL</span>
@@ -85,7 +85,7 @@
 <a name="l00049"></a>00049 
 <a name="l00050"></a>00050         <span class="keyword">inline</span> douglas_peucker_point(Point <span class="keyword">const</span>& ap)
 <a name="l00051"></a>00051             : p(ap)
-<a name="l00052"></a>00052             , included(false)
+<a name="l00052"></a>00052             , included(<span class="keyword">false</span>)
 <a name="l00053"></a>00053         {}
 <a name="l00054"></a>00054 
 <a name="l00055"></a>00055         <span class="comment">// Necessary for proper compilation</span>
@@ -104,7 +104,7 @@
 <a name="l00083"></a>00083     <span class="keyword">typename</span> Point,
 <a name="l00084"></a>00084     <span class="keyword">typename</span> PointDistanceStrategy
 <a name="l00085"></a>00085 >
-<a name="l00086"></a>00086 <span class="keyword">class </span>douglas_peucker
+<a name="l00086"></a><a class="code" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html">00086</a> <span class="keyword">class </span><a class="code" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html" title="Implements the simplify algorithm.">douglas_peucker</a>
 <a name="l00087"></a>00087 {
 <a name="l00088"></a>00088     <span class="keyword">typedef</span> detail::douglas_peucker_point<Point> dp_point_type;
 <a name="l00089"></a>00089     <span class="keyword">typedef</span> <span class="keyword">typename</span> std::vector<dp_point_type>::iterator iterator_type;
@@ -144,7 +144,7 @@
 <a name="l00123"></a>00123 <span class="preprocessor"></span>
 <a name="l00124"></a>00124 
 <a name="l00125"></a>00125         <span class="comment">// Find most distance point, compare to the current segment</span>
-<a name="l00126"></a>00126         <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">ggl::segment<const Point></a> s(begin->p, last->p);
+<a name="l00126"></a>00126         <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">ggl::segment<const Point></a> s(begin->p, last->p);
 <a name="l00127"></a>00127         return_type md(-1.0); <span class="comment">// any value < 0</span>
 <a name="l00128"></a>00128         iterator_type candidate;
 <a name="l00129"></a>00129         <span class="keywordflow">for</span>(iterator_type it = begin + 1; it != last; ++it)
@@ -184,11 +184,11 @@
 <a name="l00163"></a>00163 
 <a name="l00164"></a>00164 <span class="keyword">public</span> :
 <a name="l00165"></a>00165 
-<a name="l00166"></a><a class="code" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#d9c2f3932590f7088e2cdf032c41458b">00166</a>     <span class="keyword">typedef</span> PointDistanceStrategy <a class="code" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#8baa11b24fd260345ee451512c710350">distance_strategy_type</a>;
+<a name="l00166"></a><a class="code" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#c1a18c53b124af6e3f49e61589eef15d">00166</a>     <span class="keyword">typedef</span> PointDistanceStrategy <a class="code" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#c1a18c53b124af6e3f49e61589eef15d">distance_strategy_type</a>;
 <a name="l00167"></a>00167 
 <a name="l00168"></a>00168 
 <a name="l00169"></a>00169     <span class="keyword">template</span> <<span class="keyword">typename</span> Range, <span class="keyword">typename</span> OutputIterator>
-<a name="l00170"></a><a class="code" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#45491352f7c455ea801781c8b7c812d9">00170</a>     <span class="keyword">static</span> <span class="keyword">inline</span> OutputIterator <a class="code" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#45491352f7c455ea801781c8b7c812d9">apply</a>(Range <span class="keyword">const</span>& range, 
+<a name="l00170"></a><a class="code" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#8ec9dbc06a92fb822cddba949e067ae2">00170</a>     <span class="keyword">static</span> <span class="keyword">inline</span> OutputIterator <a class="code" href="classggl_1_1strategy_1_1simplify_1_1douglas__peucker.html#8ec9dbc06a92fb822cddba949e067ae2">apply</a>(Range <span class="keyword">const</span>& range, 
 <a name="l00171"></a>00171                     OutputIterator out, <span class="keywordtype">double</span> max_distance) 
 <a name="l00172"></a>00172     {
 <a name="l00173"></a>00173         PointDistanceStrategy strategy;
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/sph__area_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/sph__area_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/sph__area_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -61,7 +61,7 @@
 <a name="l00019"></a>00019 {
 <a name="l00020"></a>00020 <span class="keyword">namespace </span>strategy
 <a name="l00021"></a>00021 {
-<a name="l00022"></a>00022     <span class="keyword">namespace </span><a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">area</a>
+<a name="l00022"></a>00022     <span class="keyword">namespace </span><a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">area</a>
 <a name="l00023"></a>00023     {
 <a name="l00024"></a>00024 
 <a name="l00025"></a>00025 
@@ -80,7 +80,7 @@
 <a name="l00055"></a>00055                         : m_sum(0)
 <a name="l00056"></a>00056                         , m_radius(radius)
 <a name="l00057"></a>00057                     {}
-<a name="l00058"></a>00058                     <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">area</a>()<span class="keyword"> const</span>
+<a name="l00058"></a>00058                     <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">area</a>()<span class="keyword"> const</span>
 <a name="l00059"></a>00059 <span class="keyword">                    </span>{
 <a name="l00060"></a>00060                         <span class="keywordflow">return</span> - m_sum * m_radius * m_radius;
 <a name="l00061"></a>00061                             <span class="comment">//constants::average_earth_radius * constants::average_earth_radius;</span>
@@ -100,9 +100,9 @@
 <a name="l00075"></a>00075                     , m_radius(radius)
 <a name="l00076"></a>00076                 {}
 <a name="l00077"></a>00077 
-<a name="l00078"></a><a class="code" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html#b05fba0d842e52d836c6e603045e8f7b">00078</a>                 <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html#b05fba0d842e52d836c6e603045e8f7b">operator()</a>(<a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment<const P></a> <span class="keyword">const</span>& <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>, <a class="code" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html#ca224a54396a8ff91a31831888ddc65e">state_type</a>& state)<span class="keyword"> const</span>
+<a name="l00078"></a><a class="code" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html#b05fba0d842e52d836c6e603045e8f7b">00078</a>                 <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html#b05fba0d842e52d836c6e603045e8f7b">operator()</a>(<a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment<const P></a> <span class="keyword">const</span>& <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>, <a class="code" href="classggl_1_1strategy_1_1area_1_1by__spherical__excess.html#ca224a54396a8ff91a31831888ddc65e">state_type</a>& state)<span class="keyword"> const</span>
 <a name="l00079"></a>00079 <span class="keyword">                </span>{
-<a name="l00080"></a>00080                     <span class="keywordflow">if</span> (get<0>(segment.<a class="code" href="structggl_1_1segment.html#3f8aa8a3542ebf499e4987ef3ccfd5b1">first</a>) != get<0>(segment.<a class="code" href="structggl_1_1segment.html#e5aea8fdfbd0e0dece9b227a8a5cec33">second</a>))
+<a name="l00080"></a>00080                     <span class="keywordflow">if</span> (get<0>(segment.<a class="code" href="classggl_1_1segment.html#76c7f18dd19699ccb7353137b8981c65">first</a>) != get<0>(segment.<a class="code" href="classggl_1_1segment.html#543b3806df8d74067157587323917a71">second</a>))
 <a name="l00081"></a>00081                     {
 <a name="l00082"></a>00082                         <span class="keyword">typedef</span> <a class="code" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a>
 <a name="l00083"></a>00083                             <
@@ -125,11 +125,11 @@
 <a name="l00100"></a>00100                                     <a class="code" href="structggl_1_1dimension.html" title="Meta-function which defines coordinate dimensions, i.e. the number of axes of any...">dimension<PR>::value</a>,
 <a name="l00101"></a>00101                                     P, PR>::type transform_strategy;
 <a name="l00102"></a>00102 
-<a name="l00103"></a>00103                         transform_strategy(segment.<a class="code" href="structggl_1_1segment.html#3f8aa8a3542ebf499e4987ef3ccfd5b1">first</a>, p1);
-<a name="l00104"></a>00104                         transform_strategy(segment.<a class="code" href="structggl_1_1segment.html#e5aea8fdfbd0e0dece9b227a8a5cec33">second</a>, p2);
+<a name="l00103"></a>00103                         transform_strategy(segment.<a class="code" href="classggl_1_1segment.html#76c7f18dd19699ccb7353137b8981c65">first</a>, p1);
+<a name="l00104"></a>00104                         transform_strategy(segment.<a class="code" href="classggl_1_1segment.html#543b3806df8d74067157587323917a71">second</a>, p2);
 <a name="l00105"></a>00105 
 <a name="l00106"></a>00106                         <span class="comment">// Distance p1 p2</span>
-<a name="l00107"></a>00107                         <span class="keywordtype">double</span> a = m_unit_sphere(segment.<a class="code" href="structggl_1_1segment.html#3f8aa8a3542ebf499e4987ef3ccfd5b1">first</a>, segment.<a class="code" href="structggl_1_1segment.html#e5aea8fdfbd0e0dece9b227a8a5cec33">second</a>);
+<a name="l00107"></a>00107                         <span class="keywordtype">double</span> a = m_unit_sphere(segment.<a class="code" href="classggl_1_1segment.html#76c7f18dd19699ccb7353137b8981c65">first</a>, segment.<a class="code" href="classggl_1_1segment.html#543b3806df8d74067157587323917a71">second</a>);
 <a name="l00108"></a>00108                         <span class="comment">// Sides on unit sphere to south pole</span>
 <a name="l00109"></a>00109                         <span class="keywordtype">double</span> b = 0.5 * <a class="code" href="namespaceggl_1_1math.html#54fc384779fa97a61e07149d880a599c">math::pi</a> - ggl::get<1>(p2);
 <a name="l00110"></a>00110                         <span class="keywordtype">double</span> c = 0.5 * <a class="code" href="namespaceggl_1_1math.html#54fc384779fa97a61e07149d880a599c">math::pi</a> - ggl::get<1>(p1);
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1area__result-members.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1area__result-members.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1area__result-members.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -45,8 +45,8 @@
 <div class="contents">
 <h1>ggl::area_result< Geometry > Member List</h1>This is the complete list of members for <a class="el" href="structggl_1_1area__result.html">ggl::area_result< Geometry ></a>, including all inherited members.<p><table>
   <tr class="memlist"><td><a class="el" href="structggl_1_1area__result.html#d6428313802f153cd99b803ecde23872">point_type</a> typedef</td><td><a class="el" href="structggl_1_1area__result.html">ggl::area_result< Geometry ></a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="structggl_1_1area__result.html#4915057a85bc6a0c7292b3db1e4f33be">return_type</a> typedef</td><td><a class="el" href="structggl_1_1area__result.html">ggl::area_result< Geometry ></a></td><td></td></tr>
   <tr class="memlist"><td><a class="el" href="structggl_1_1area__result.html#ccb03cf635c157788a99c33d8f3c3a1e">strategy_type</a> typedef</td><td><a class="el" href="structggl_1_1area__result.html">ggl::area_result< Geometry ></a></td><td></td></tr>
+  <tr class="memlist"><td><a class="el" href="structggl_1_1area__result.html#6f843780140b8fa0ac0a4a36c4c00d81">type</a> typedef</td><td><a class="el" href="structggl_1_1area__result.html">ggl::area_result< Geometry ></a></td><td></td></tr>
 </table></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1area__result.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1area__result.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1area__result.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -45,27 +45,36 @@
   </div>
 </div>
 <div class="contents">
-<h1>ggl::area_result< Geometry > Struct Template Reference</h1><!-- doxytag: class="ggl::area_result" -->
+<h1>ggl::area_result< Geometry > Struct Template Reference<br>
+<small>
+[<a class="el" href="group__area.html">area calculation</a>]</small>
+</h1><!-- doxytag: class="ggl::area_result" -->Meta-function defining return type of area function.  
+More...
+<p>
+
 <p>
 <a href="structggl_1_1area__result-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
 <tr><td></td></tr>
 <tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structggl_1_1point__type.html">point_type</a>< Geometry ><br class="typebreak">
-::type </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1area__result.html#d6428313802f153cd99b803ecde23872">point_type</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef strategy_type::return_type </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1area__result.html#4915057a85bc6a0c7292b3db1e4f33be">return_type</a></td></tr>
+::<a class="el" href="structggl_1_1area__result.html#6f843780140b8fa0ac0a4a36c4c00d81">type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1area__result.html#d6428313802f153cd99b803ecde23872">point_type</a></td></tr>
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structggl_1_1strategy__area.html">strategy_area</a><br class="typebreak">
 < typename <a class="el" href="structggl_1_1cs__tag.html">cs_tag</a>< <a class="el" href="structggl_1_1point__type.html">point_type</a> ><br class="typebreak">
-::type, <a class="el" href="structggl_1_1point__type.html">point_type</a> >::type </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1area__result.html#ccb03cf635c157788a99c33d8f3c3a1e">strategy_type</a></td></tr>
+::<a class="el" href="structggl_1_1area__result.html#6f843780140b8fa0ac0a4a36c4c00d81">type</a>, <a class="el" href="structggl_1_1point__type.html">point_type</a> >::<a class="el" href="structggl_1_1area__result.html#6f843780140b8fa0ac0a4a36c4c00d81">type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1area__result.html#ccb03cf635c157788a99c33d8f3c3a1e">strategy_type</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef strategy_type::return_type </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1area__result.html#6f843780140b8fa0ac0a4a36c4c00d81">type</a></td></tr>
 
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
 <h3>template<typename Geometry><br>
  struct ggl::area_result< Geometry ></h3>
 
+Meta-function defining return type of area function. 
+<p>
+<dl class="note" compact><dt><b>Note:</b></dt><dd>The <a class="el" href="namespaceggl_1_1strategy.html">strategy</a> defines the return-type (so this situation is different from length, where distance is sqr/sqrt, but length always squared) </dd></dl>
 
-<p>Definition at line <a class="el" href="algorithms_2area_8hpp_source.html#l00231">231</a> of file <a class="el" href="algorithms_2area_8hpp_source.html">area.hpp</a>.</p>
+<p>Definition at line <a class="el" href="area__result_8hpp_source.html#l00028">28</a> of file <a class="el" href="area__result_8hpp_source.html">area_result.hpp</a>.</p>
 <hr><h2>Member Typedef Documentation</h2>
 <a class="anchor" name="d6428313802f153cd99b803ecde23872"></a><!-- doxytag: member="ggl::area_result::point_type" ref="d6428313802f153cd99b803ecde23872" args="" -->
 <div class="memitem">
@@ -74,7 +83,7 @@
 template<typename Geometry> </div>
       <table class="memname">
         <tr>
-          <td class="memname">typedef <a class="el" href="structggl_1_1point__type.html">point_type</a><Geometry>::type <a class="el" href="structggl_1_1area__result.html">ggl::area_result</a>< Geometry >::<a class="el" href="structggl_1_1point__type.html">point_type</a>          </td>
+          <td class="memname">typedef <a class="el" href="structggl_1_1point__type.html">point_type</a><Geometry>::<a class="el" href="structggl_1_1area__result.html#6f843780140b8fa0ac0a4a36c4c00d81">type</a> <a class="el" href="structggl_1_1area__result.html">ggl::area_result</a>< Geometry >::<a class="el" href="structggl_1_1point__type.html">point_type</a>          </td>
         </tr>
       </table>
 </div>
@@ -82,7 +91,7 @@
 
 <p>
 
-<p>Definition at line <a class="el" href="algorithms_2area_8hpp_source.html#l00233">233</a> of file <a class="el" href="algorithms_2area_8hpp_source.html">area.hpp</a>.</p>
+<p>Definition at line <a class="el" href="area__result_8hpp_source.html#l00030">30</a> of file <a class="el" href="area__result_8hpp_source.html">area_result.hpp</a>.</p>
 
 </div>
 </div><p>
@@ -93,7 +102,7 @@
 template<typename Geometry> </div>
       <table class="memname">
         <tr>
-          <td class="memname">typedef <a class="el" href="structggl_1_1strategy__area.html">strategy_area</a>< typename <a class="el" href="structggl_1_1cs__tag.html">cs_tag</a><<a class="el" href="structggl_1_1point__type.html">point_type</a>>::type, <a class="el" href="structggl_1_1point__type.html">point_type</a> >::type <a class="el" href="structggl_1_1area__result.html">ggl::area_result</a>< Geometry >::<a class="el" href="structggl_1_1strategy_1_1not__implemented.html">strategy_type</a>          </td>
+          <td class="memname">typedef <a class="el" href="structggl_1_1strategy__area.html">strategy_area</a>< typename <a class="el" href="structggl_1_1cs__tag.html">cs_tag</a><<a class="el" href="structggl_1_1point__type.html">point_type</a>>::<a class="el" href="structggl_1_1area__result.html#6f843780140b8fa0ac0a4a36c4c00d81">type</a>, <a class="el" href="structggl_1_1point__type.html">point_type</a> >::<a class="el" href="structggl_1_1area__result.html#6f843780140b8fa0ac0a4a36c4c00d81">type</a> <a class="el" href="structggl_1_1area__result.html">ggl::area_result</a>< Geometry >::<a class="el" href="structggl_1_1strategy_1_1not__implemented.html">strategy_type</a>          </td>
         </tr>
       </table>
 </div>
@@ -101,18 +110,18 @@
 
 <p>
 
-<p>Definition at line <a class="el" href="algorithms_2area_8hpp_source.html#l00238">238</a> of file <a class="el" href="algorithms_2area_8hpp_source.html">area.hpp</a>.</p>
+<p>Definition at line <a class="el" href="area__result_8hpp_source.html#l00035">35</a> of file <a class="el" href="area__result_8hpp_source.html">area_result.hpp</a>.</p>
 
 </div>
 </div><p>
-<a class="anchor" name="4915057a85bc6a0c7292b3db1e4f33be"></a><!-- doxytag: member="ggl::area_result::return_type" ref="4915057a85bc6a0c7292b3db1e4f33be" args="" -->
+<a class="anchor" name="6f843780140b8fa0ac0a4a36c4c00d81"></a><!-- doxytag: member="ggl::area_result::type" ref="6f843780140b8fa0ac0a4a36c4c00d81" args="" -->
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
 template<typename Geometry> </div>
       <table class="memname">
         <tr>
-          <td class="memname">typedef strategy_type::return_type <a class="el" href="structggl_1_1area__result.html">ggl::area_result</a>< Geometry >::<a class="el" href="structggl_1_1area__result.html#4915057a85bc6a0c7292b3db1e4f33be">return_type</a>          </td>
+          <td class="memname">typedef strategy_type::return_type <a class="el" href="structggl_1_1area__result.html">ggl::area_result</a>< Geometry >::<a class="el" href="structggl_1_1area__result.html#6f843780140b8fa0ac0a4a36c4c00d81">type</a>          </td>
         </tr>
       </table>
 </div>
@@ -120,7 +129,7 @@
 
 <p>
 
-<p>Definition at line <a class="el" href="algorithms_2area_8hpp_source.html#l00239">239</a> of file <a class="el" href="algorithms_2area_8hpp_source.html">area.hpp</a>.</p>
+<p>Definition at line <a class="el" href="area__result_8hpp_source.html#l00037">37</a> of file <a class="el" href="area__result_8hpp_source.html">area_result.hpp</a>.</p>
 
 </div>
 </div><p>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1cartesian__distance.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1cartesian__distance.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1cartesian__distance.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -87,7 +87,7 @@
 Distance calculation for xy points or xyz points is done by taking the square root. However, for distance comparison drawing the square root is not necessary. Therefore the distance strategies are allowed to return the squares of the distance. This structure contains the distance, and a boolean to indicate if it is squared. It has an automatic conversion to a double value, which does the square root if necessary. <dl class="note" compact><dt><b>Note:</b></dt><dd>Thanks to Phil Endecott for his suggestion to change the pair to the double-convertable http://article.gmane.org/gmane.comp.lib.boost.devel/172709/match=greatcircle_distance <p>
 It might be templatized with a T </dd></dl>
 
-<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00035">35</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
+<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00039">39</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
 <hr><h2>Constructor & Destructor Documentation</h2>
 <a class="anchor" name="441dcc3558edeb3bee94c667cfdfbd68"></a><!-- doxytag: member="ggl::cartesian_distance::cartesian_distance" ref="441dcc3558edeb3bee94c667cfdfbd68" args="(T const &v)" -->
 <div class="memitem">
@@ -111,7 +111,7 @@
 Constructor with a value. 
 <p>
 
-<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00057">57</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
+<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00061">61</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
 
 </div>
 </div><p>
@@ -135,7 +135,7 @@
 
 <p>
 Automatic conversion to double or higher precision, taking squareroot if necessary 
-<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00061">61</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
+<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00065">65</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
 
 </div>
 </div><p>
@@ -159,7 +159,7 @@
 
 <p>
 
-<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00071">71</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
+<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00083">83</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
 
 </div>
 </div><p>
@@ -183,7 +183,7 @@
 
 <p>
 
-<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00075">75</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
+<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00087">87</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
 
 </div>
 </div><p>
@@ -207,7 +207,7 @@
 
 <p>
 
-<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00079">79</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
+<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00091">91</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
 
 </div>
 </div><p>
@@ -230,7 +230,7 @@
 
 <p>
 
-<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00104">104</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
+<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00116">116</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
 
 </div>
 </div><p>
@@ -255,7 +255,7 @@
 The "squared_value" method returns the internal squared value. 
 <p>
 
-<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00110">110</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
+<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00122">122</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
 
 </div>
 </div><p>
@@ -293,7 +293,7 @@
 Make streamable to enable std::cout << <a class="el" href="group__distance.html#g22a618786d2601e9201896a8346c161b" title="Calculate distance between two geometries with a specified strategy.">ggl::distance( )</a>. 
 <p>
 
-<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00117">117</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
+<p>Definition at line <a class="el" href="distance__result_8hpp_source.html#l00129">129</a> of file <a class="el" href="distance__result_8hpp_source.html">distance_result.hpp</a>.</p>
 
 </div>
 </div><p>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1concept_1_1_point.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1concept_1_1_point.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1concept_1_1_point.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -88,20 +88,6 @@
 {
     <span class="keyword">namespace </span>traits
     {
-        <span class="keyword">template</span> <<span class="keywordtype">int</span> I> <span class="keyword">struct </span>accessor;
-
-        <span class="keyword">template</span> <> <span class="keyword">struct </span>accessor<0>
-        {
-            <span class="keyword">inline</span> <span class="keyword">static</span> <span class="keywordtype">double</span> <span class="keyword">get</span>(<span class="keyword">const</span> example_point_1& p) { <span class="keywordflow">return</span> p.x; }
-            <span class="keyword">inline</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(example_point_1& p, <span class="keyword">const</span> <span class="keywordtype">double</span>& value) { p.x = value; }
-        };
-
-        <span class="keyword">template</span> <> <span class="keyword">struct </span>accessor<1>
-        {
-            <span class="keyword">inline</span> <span class="keyword">static</span> <span class="keywordtype">double</span> <span class="keyword">get</span>(<span class="keyword">const</span> example_point_1& p) { <span class="keywordflow">return</span> p.y; }
-            <span class="keyword">inline</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(example_point_1& p, <span class="keyword">const</span> <span class="keywordtype">double</span>& value) { p.y = value; }
-        };
-
         <span class="comment">// For legacy points, define the necessary structs coordinate (with typedef),</span>
         <span class="comment">// dimension (with value) and access (with get function).</span>
         <span class="comment">// Be sure to define them within the namespace ggl::traits</span>
@@ -109,15 +95,21 @@
         <span class="keyword">template</span> <> <span class="keyword">struct </span>coordinate_type<example_point_1> { <span class="keyword">typedef</span> <span class="keywordtype">double</span> type; };
         <span class="keyword">template</span> <> <span class="keyword">struct </span>coordinate_system<example_point_1> { <span class="keyword">typedef</span> cs::cartesian type; };
         <span class="keyword">template</span> <> <span class="keyword">struct </span><a class="code" href="classcore__dispatch_1_1dimension.html">dimension</a><example_point_1>: boost::mpl::int_<2> {};
-        <span class="keyword">template</span> <> <span class="keyword">struct </span>access<example_point_1>
+        <span class="keyword">template</span> <> <span class="keyword">struct </span>access<example_point_1, 0>
         {
-            <span class="keyword">template</span> <<span class="keywordtype">int</span> I>
-            <span class="keyword">static</span> <span class="keywordtype">double</span> <span class="keyword">get</span>(<span class="keyword">const</span> example_point_1& p)
-            { <span class="keywordflow">return</span> <a class="code" href="group__access.html#g6cf833a7f9622af2fc05fd94aa61153f" title="get a coordinate value of a point / nsphere">accessor<I>::get</a>(p); }
-
-            <span class="keyword">template</span> <<span class="keywordtype">int</span> I>
-            <span class="keyword">static</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(example_point_1& p, <span class="keyword">const</span> <span class="keywordtype">double</span>& value)
-            { <a class="code" href="group__access.html#g411ad2eab588e3fa0f0a3d35c79cbb4a" title="assign coordinate value to a point / sphere">accessor<I>::set</a>(p, value); }
+            <span class="keyword">static</span> <span class="keywordtype">double</span> <span class="keyword">get</span>(example_point_1 <span class="keyword">const</span>& p)
+            { <span class="keywordflow">return</span> p.x; }
+
+            <span class="keyword">static</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(example_point_1& p, <span class="keywordtype">double</span> <span class="keyword">const</span>& value)
+            { p.x = value; }
+        };
+        <span class="keyword">template</span> <> <span class="keyword">struct </span>access<example_point_1, 1>
+        {
+            <span class="keyword">static</span> <span class="keywordtype">double</span> <span class="keyword">get</span>(example_point_1 <span class="keyword">const</span>& p)
+            { <span class="keywordflow">return</span> p.y; }
+
+            <span class="keyword">static</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(example_point_1& p, <span class="keywordtype">double</span> <span class="keyword">const</span>& value)
+            { p.y = value; }
         };
     }
 }
@@ -160,24 +152,24 @@
     };
 }
 
-<span class="comment">// WILL BE CONVERTED TO MACRO</span>
+<span class="comment">// MIGHT BE CONVERTED TO MACRO</span>
 <span class="keyword">namespace </span>ggl
 {
     <span class="keyword">namespace </span>traits
     {
         <span class="keyword">using namespace </span>example_own_point2;
 
-        <span class="keyword">template</span> <> <span class="keyword">struct </span>tag<example_point_2  > { <span class="keyword">typedef</span> point_tag type; };
-        <span class="keyword">template</span> <> <span class="keyword">struct </span>coordinate_type<example_point_2 > { <span class="keyword">typedef</span> <span class="keywordtype">float</span> type; };
-        <span class="keyword">template</span> <> <span class="keyword">struct </span>coordinate_system<example_point_2 > { <span class="keyword">typedef</span> <a class="code" href="structggl_1_1cs_1_1cartesian.html" title="Cartesian coordinate system.">ggl::cs::cartesian</a> type; };
-        <span class="keyword">template</span> <> <span class="keyword">struct </span><a class="code" href="classcore__dispatch_1_1dimension.html">dimension</a><example_point_2 > : boost::mpl::int_<2> {};
-        <span class="keyword">template</span> <> <span class="keyword">struct </span>access<example_point_2 >
+        <span class="keyword">template</span> <> <span class="keyword">struct </span>tag<example_point_2> { <span class="keyword">typedef</span> point_tag type; };
+        <span class="keyword">template</span> <> <span class="keyword">struct </span>coordinate_type<example_point_2> { <span class="keyword">typedef</span> <span class="keywordtype">float</span> type; };
+        <span class="keyword">template</span> <> <span class="keyword">struct </span>coordinate_system<example_point_2> { <span class="keyword">typedef</span> <a class="code" href="structggl_1_1cs_1_1cartesian.html" title="Cartesian coordinate system.">ggl::cs::cartesian</a> type; };
+        <span class="keyword">template</span> <> <span class="keyword">struct </span><a class="code" href="classcore__dispatch_1_1dimension.html">dimension</a><example_point_2> : boost::mpl::int_<2> {};
+        <span class="keyword">template</span> <std::<span class="keywordtype">size_t</span> Dimension> <span class="keyword">struct </span>access<example_point_2, Dimension>
         {
-            <span class="keyword">template</span> <<span class="keywordtype">int</span> I>
-            <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">float</span> <span class="keyword">get</span>(<span class="keyword">const</span> example_point_2& p) { <span class="keywordflow">return</span> p.get<I>(); }
+            <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">float</span> <span class="keyword">get</span>(example_point_2 <span class="keyword">const</span>& p) 
+            { <span class="keywordflow">return</span> p.get<Dimension>(); }
 
-            <span class="keyword">template</span> <<span class="keywordtype">int</span> I>
-            <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(example_point_2& p, <span class="keyword">const</span> <span class="keywordtype">float</span>& value) { p.get<I>() = value; }
+            <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(example_point_2& p, <span class="keywordtype">float</span> <span class="keyword">const</span>& value) 
+            { p.get<Dimension>() = value; }
         };
 
         <span class="comment">// The library user has</span>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1concept_1_1_segment.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1concept_1_1_segment.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1concept_1_1_segment.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -48,7 +48,7 @@
 <h1>ggl::concept::Segment< S > Struct Template Reference<br>
 <small>
 [<a class="el" href="group__concepts.html">concept checking</a>]</small>
-</h1><!-- doxytag: class="ggl::concept::Segment" -->Checks <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> <a class="el" href="namespaceggl_1_1concept.html">concept</a>, using Boost Concept Check Library and metafunctions.  
+</h1><!-- doxytag: class="ggl::concept::Segment" -->Checks <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> <a class="el" href="namespaceggl_1_1concept.html">concept</a>, using Boost Concept Check Library and metafunctions.  
 <a href="#_details">More...</a>
 <p>
 
@@ -70,7 +70,7 @@
 <h3>template<typename S><br>
  struct ggl::concept::Segment< S ></h3>
 
-Checks <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> <a class="el" href="namespaceggl_1_1concept.html">concept</a>, using Boost Concept Check Library and metafunctions. 
+Checks <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> <a class="el" href="namespaceggl_1_1concept.html">concept</a>, using Boost Concept Check Library and metafunctions. 
 <p>Definition at line <a class="el" href="segment__concept_8hpp_source.html#l00033">33</a> of file <a class="el" href="segment__concept_8hpp_source.html">segment_concept.hpp</a>.</p>
 <hr><h2>Member Function Documentation</h2>
 <a class="anchor" name="d2e340dff544a40ed257a1823dfd4749"></a><!-- doxytag: member="ggl::concept::Segment::BOOST_CONCEPT_USAGE" ref="d2e340dff544a40ed257a1823dfd4749" args="(Segment)" -->
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1geometry__collection__tag.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1geometry__collection__tag.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1geometry__collection__tag.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -53,7 +53,7 @@
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
 OGC Geometry Collection identifying <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a>. 
-<p>Definition at line <a class="el" href="multi_2core_2tags_8hpp_source.html#l00026">26</a> of file <a class="el" href="multi_2core_2tags_8hpp_source.html">tags.hpp</a>.</p>
+<p>Definition at line <a class="el" href="multi_2core_2tags_8hpp_source.html#l00028">28</a> of file <a class="el" href="multi_2core_2tags_8hpp_source.html">tags.hpp</a>.</p>
 </div>
 <hr size="1">
 <table width="100%">
Added: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1length__result-members.html
==============================================================================
--- (empty file)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1length__result-members.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -0,0 +1,70 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Generic Geometry Library</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head>
+<body style="background-image: url(images/draft.png);">
+
+<table cellpadding="2" width="100%">
+<tbody>
+<tr>
+<td valign="top">
+<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
+  
+</td>
+<td valign="top" align="right">
+<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
+</td>
+</tr>
+</tbody>
+</table>
+<!-- Generated by Doxygen 1.5.9 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li>Main Page</li>
+      <li>Related Pages</li>
+      <li>Modules</li>
+      <li>Namespaces</li>
+      <li class="current">Classes</li>
+      <li>Files</li>
+      <li>Examples</li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li>Class List</li>
+      <li>Class Hierarchy</li>
+      <li>Class Members</li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+<h1>ggl::length_result< Geometry > Member List</h1>This is the complete list of members for <a class="el" href="structggl_1_1length__result.html">ggl::length_result< Geometry ></a>, including all inherited members.<p><table>
+  <tr class="memlist"><td><a class="el" href="structggl_1_1length__result.html#804491e987771a8c50f977a209ee0599">type</a> typedef</td><td><a class="el" href="structggl_1_1length__result.html">ggl::length_result< Geometry ></a></td><td></td></tr>
+</table></div>
+<hr size="1">
+<table width="100%">
+<tbody>
+<tr>
+<td align="left"><small>
+<p>October 13, 2009</p>
+</small></td>
+<td align="right">
+<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
+Copyright © 2008-2009 Bruno Lalande, Paris<br>
+Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
+</small>
+</td>
+</tr>
+</tbody>
+</table>
+
+<address style="text-align: right;"><small>
+Documentation is generated by Doxygen
+</small></address>
+</body>
+</html>
Added: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1length__result.html
==============================================================================
--- (empty file)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1length__result.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -0,0 +1,116 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Generic Geometry Library</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head>
+<body style="background-image: url(images/draft.png);">
+
+<table cellpadding="2" width="100%">
+<tbody>
+<tr>
+<td valign="top">
+<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
+  
+</td>
+<td valign="top" align="right">
+<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
+</td>
+</tr>
+</tbody>
+</table>
+<!-- Generated by Doxygen 1.5.9 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li>Main Page</li>
+      <li>Related Pages</li>
+      <li>Modules</li>
+      <li>Namespaces</li>
+      <li class="current">Classes</li>
+      <li>Files</li>
+      <li>Examples</li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li>Class List</li>
+      <li>Class Hierarchy</li>
+      <li>Class Members</li>
+    </ul>
+  </div>
+  <div class="navpath"><a class="el" href="namespaceggl.html">ggl</a>::<a class="el" href="structggl_1_1length__result.html">length_result</a>
+  </div>
+</div>
+<div class="contents">
+<h1>ggl::length_result< Geometry > Struct Template Reference<br>
+<small>
+[<a class="el" href="group__length.html">length calculation</a>]</small>
+</h1><!-- doxytag: class="ggl::length_result" -->Meta-function defining return type of length function.  
+More...
+<p>
+
+<p>
+List of all members.<table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structggl_1_1select__most__precise.html">select_most_precise</a><br class="typebreak">
+< typename <a class="el" href="structggl_1_1coordinate__type.html">coordinate_type</a><br class="typebreak">
+< Geometry >::<a class="el" href="structggl_1_1length__result.html#804491e987771a8c50f977a209ee0599">type</a>, long <br class="typebreak">
+double >::<a class="el" href="structggl_1_1length__result.html#804491e987771a8c50f977a209ee0599">type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1length__result.html#804491e987771a8c50f977a209ee0599">type</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+<h3>template<typename Geometry><br>
+ struct ggl::length_result< Geometry ></h3>
+
+Meta-function defining return type of length function. 
+<p>
+<dl class="note" compact><dt><b>Note:</b></dt><dd>Length of a line of integer coordinates can be double. So we take at least a double. If Big Number types are used, we take that type. </dd></dl>
+
+<p>Definition at line <a class="el" href="length__result_8hpp_source.html#l00028">28</a> of file <a class="el" href="length__result_8hpp_source.html">length_result.hpp</a>.</p>
+<hr><h2>Member Typedef Documentation</h2>
+<a class="anchor" name="804491e987771a8c50f977a209ee0599"></a><!-- doxytag: member="ggl::length_result::type" ref="804491e987771a8c50f977a209ee0599" args="" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template<typename Geometry> </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef <a class="el" href="structggl_1_1select__most__precise.html">select_most_precise</a>< typename <a class="el" href="structggl_1_1coordinate__type.html">coordinate_type</a><Geometry>::<a class="el" href="structggl_1_1length__result.html#804491e987771a8c50f977a209ee0599">type</a>, long double >::<a class="el" href="structggl_1_1length__result.html#804491e987771a8c50f977a209ee0599">type</a> <a class="el" href="structggl_1_1length__result.html">ggl::length_result</a>< Geometry >::<a class="el" href="structggl_1_1length__result.html#804491e987771a8c50f977a209ee0599">type</a>          </td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+<p>Definition at line <a class="el" href="length__result_8hpp_source.html#l00034">34</a> of file <a class="el" href="length__result_8hpp_source.html">length_result.hpp</a>.</p>
+
+</div>
+</div><p>
+</div>
+<hr size="1">
+<table width="100%">
+<tbody>
+<tr>
+<td align="left"><small>
+<p>October 13, 2009</p>
+</small></td>
+<td align="right">
+<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
+Copyright © 2008-2009 Bruno Lalande, Paris<br>
+Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
+</small>
+</td>
+</tr>
+</tbody>
+</table>
+
+<address style="text-align: right;"><small>
+Documentation is generated by Doxygen
+</small></address>
+</body>
+</html>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__linestring.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__linestring.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__linestring.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -64,7 +64,7 @@
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
-template<typename L, template< typename, typename > class V = std::vector, template< typename > class A = std::allocator> </div>
+template<typename L , template< typename, typename > class V = std::vector, template< typename > class A = std::allocator> </div>
       <table class="memname">
         <tr>
           <td class="memname"><a class="el" href="structggl_1_1multi__linestring.html">ggl::multi_linestring</a>< L, V, A >::BOOST_CONCEPT_ASSERT           </td>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__linestring__tag.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__linestring__tag.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__linestring__tag.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -53,7 +53,7 @@
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
 OGC Multi <a class="el" href="classggl_1_1linestring.html" title="A linestring (named so by OGC) is a collection (default a vector) of points.">linestring</a> identifying <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a>. 
-<p>Definition at line <a class="el" href="multi_2core_2tags_8hpp_source.html#l00020">20</a> of file <a class="el" href="multi_2core_2tags_8hpp_source.html">tags.hpp</a>.</p>
+<p>Definition at line <a class="el" href="multi_2core_2tags_8hpp_source.html#l00022">22</a> of file <a class="el" href="multi_2core_2tags_8hpp_source.html">tags.hpp</a>.</p>
 </div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__point.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__point.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__point.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -64,7 +64,7 @@
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
-template<typename P, template< typename, typename > class V = std::vector, template< typename > class A = std::allocator> </div>
+template<typename P , template< typename, typename > class V = std::vector, template< typename > class A = std::allocator> </div>
       <table class="memname">
         <tr>
           <td class="memname"><a class="el" href="structggl_1_1multi__point.html">ggl::multi_point</a>< P, V, A >::BOOST_CONCEPT_ASSERT           </td>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__point__tag.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__point__tag.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__point__tag.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -53,7 +53,7 @@
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
 OGC Multi <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> identifying <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a>. 
-<p>Definition at line <a class="el" href="multi_2core_2tags_8hpp_source.html#l00017">17</a> of file <a class="el" href="multi_2core_2tags_8hpp_source.html">tags.hpp</a>.</p>
+<p>Definition at line <a class="el" href="multi_2core_2tags_8hpp_source.html#l00019">19</a> of file <a class="el" href="multi_2core_2tags_8hpp_source.html">tags.hpp</a>.</p>
 </div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__polygon.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__polygon.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__polygon.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -64,7 +64,7 @@
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
-template<typename P, template< typename, typename > class V = std::vector, template< typename > class A = std::allocator> </div>
+template<typename P , template< typename, typename > class V = std::vector, template< typename > class A = std::allocator> </div>
       <table class="memname">
         <tr>
           <td class="memname"><a class="el" href="structggl_1_1multi__polygon.html">ggl::multi_polygon</a>< P, V, A >::BOOST_CONCEPT_ASSERT           </td>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__polygon__tag.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__polygon__tag.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1multi__polygon__tag.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -53,7 +53,7 @@
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
 OGC Multi <a class="el" href="classggl_1_1polygon.html" title="The polygon contains an outer ring and zero or more inner rings.">polygon</a> identifying <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a>. 
-<p>Definition at line <a class="el" href="multi_2core_2tags_8hpp_source.html#l00023">23</a> of file <a class="el" href="multi_2core_2tags_8hpp_source.html">tags.hpp</a>.</p>
+<p>Definition at line <a class="el" href="multi_2core_2tags_8hpp_source.html#l00025">25</a> of file <a class="el" href="multi_2core_2tags_8hpp_source.html">tags.hpp</a>.</p>
 </div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1policies_1_1relate_1_1segments__de9im.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1policies_1_1relate_1_1segments__de9im.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1policies_1_1relate_1_1segments__de9im.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -73,7 +73,7 @@
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="structggl_1_1de9im__segment.html">return_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#c9112222bb21c8bbc164008c9bdbfa24">collinear_touch</a> (<a class="el" href="structggl_1_1coordinate__type.html">coordinate_type</a> const &x, <a class="el" href="structggl_1_1coordinate__type.html">coordinate_type</a> const &y, bool opposite, char)</td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="structggl_1_1de9im__segment.html">return_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#c38201cbc6a2788b300413a7f90103b2">degenerate</a> (S1 const &<a class="el" href="structggl_1_1segment.html">segment</a>, bool a_degenerate)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="structggl_1_1de9im__segment.html">return_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#c38201cbc6a2788b300413a7f90103b2">degenerate</a> (S1 const &<a class="el" href="classggl_1_1segment.html">segment</a>, bool a_degenerate)</td></tr>
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="structggl_1_1de9im__segment.html">return_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__de9im.html#3887cd4e999e77056841445b19f82628">parallel</a> ()</td></tr>
 
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1policies_1_1relate_1_1segments__tupled.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1policies_1_1relate_1_1segments__tupled.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1policies_1_1relate_1_1segments__tupled.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -63,20 +63,20 @@
 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef Policy1::segment_type2 </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#192979bbc532077e533e31a827ed473d">segment_type2</a></td></tr>
 
 <tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">return_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#512bec33f0d13ffe8bdcaa7d2c6cd1ec">collinear_a_in_b</a> (<a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#a85d9e4477a04f1263e99c63b56bca1b">segment_type1</a> const &<a class="el" href="structggl_1_1segment.html">segment</a>, bool opposite)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">return_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#512bec33f0d13ffe8bdcaa7d2c6cd1ec">collinear_a_in_b</a> (<a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#a85d9e4477a04f1263e99c63b56bca1b">segment_type1</a> const &<a class="el" href="classggl_1_1segment.html">segment</a>, bool opposite)</td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">return_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#f95f9b1c2e967c260d060c24aabf160f">collinear_b_in_a</a> (<a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#192979bbc532077e533e31a827ed473d">segment_type2</a> const &<a class="el" href="structggl_1_1segment.html">segment</a>, bool opposite)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">return_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#f95f9b1c2e967c260d060c24aabf160f">collinear_b_in_a</a> (<a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#192979bbc532077e533e31a827ed473d">segment_type2</a> const &<a class="el" href="classggl_1_1segment.html">segment</a>, bool opposite)</td></tr>
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">return_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#7e99a479fc3e9b45db7ab065305dccc6">collinear_disjoint</a> ()</td></tr>
 
 <tr><td class="memTemplParams" nowrap colspan="2">template<typename S > </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">return_type</a> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#036ae4e5762ae6b9f981e7b9d39f0b2a">collinear_interior_boundary_intersect</a> (S const &<a class="el" href="structggl_1_1segment.html">segment</a>, bool a_within_b, bool opposite)</td></tr>
+<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">return_type</a> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#036ae4e5762ae6b9f981e7b9d39f0b2a">collinear_interior_boundary_intersect</a> (S const &<a class="el" href="classggl_1_1segment.html">segment</a>, bool a_within_b, bool opposite)</td></tr>
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">return_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fc31e769602ef50ec62d22ed157554b4">collinear_overlaps</a> (<a class="el" href="structggl_1_1coordinate__type.html">coordinate_type</a> const &x1, <a class="el" href="structggl_1_1coordinate__type.html">coordinate_type</a> const &y1, <a class="el" href="structggl_1_1coordinate__type.html">coordinate_type</a> const &x2, <a class="el" href="structggl_1_1coordinate__type.html">coordinate_type</a> const &y2, bool opposite)</td></tr>
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">return_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#047b8574e173fd4ccb5f32dba6adb904">collinear_touch</a> (<a class="el" href="structggl_1_1coordinate__type.html">coordinate_type</a> const &x, <a class="el" href="structggl_1_1coordinate__type.html">coordinate_type</a> const &y, bool opposite, char how)</td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">return_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#d68c9fa4dbac13be78e0f2d8a099ca6a">degenerate</a> (<a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#a85d9e4477a04f1263e99c63b56bca1b">segment_type1</a> const &<a class="el" href="structggl_1_1segment.html">segment</a>, bool a_degenerate)</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">return_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#d68c9fa4dbac13be78e0f2d8a099ca6a">degenerate</a> (<a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#a85d9e4477a04f1263e99c63b56bca1b">segment_type1</a> const &<a class="el" href="classggl_1_1segment.html">segment</a>, bool a_degenerate)</td></tr>
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">return_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#970335edc3c8374463b8c0c4296c87f3">parallel</a> ()</td></tr>
 
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1segment-members.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1segment-members.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,73 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li>Class Members</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
-<h1>ggl::segment< P > Member List</h1>This is the complete list of members for <a class="el" href="structggl_1_1segment.html">ggl::segment< P ></a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="structggl_1_1segment.html#3f8aa8a3542ebf499e4987ef3ccfd5b1">first</a></td><td><a class="el" href="structggl_1_1segment.html">ggl::segment< P ></a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="structggl_1_1segment.html#47f8bba55326d5ae988dc3a5a9f146c7">point_type</a> typedef</td><td><a class="el" href="structggl_1_1segment.html">ggl::segment< P ></a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="structggl_1_1segment.html#e5aea8fdfbd0e0dece9b227a8a5cec33">second</a></td><td><a class="el" href="structggl_1_1segment.html">ggl::segment< P ></a></td><td></td></tr>
-  <tr class="memlist"><td><a class="el" href="structggl_1_1segment.html#e8e37a9f4eeacb317a1ce971da6cbd87">segment</a>(P &p1, P &p2)</td><td><a class="el" href="structggl_1_1segment.html">ggl::segment< P ></a></td><td></td></tr>
-</table></div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1segment.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1segment.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,199 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li>Class Members</li>
-    </ul>
-  </div>
-  <div class="navpath"><a class="el" href="namespaceggl.html">ggl</a>::<a class="el" href="structggl_1_1segment.html">segment</a>
-  </div>
-</div>
-<div class="contents">
-<h1>ggl::segment< P > Struct Template Reference</h1><!-- doxytag: class="ggl::segment" -->Class <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>: small containing two (templatized) <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> references.  
-More...
-<p>
-
-<p>
-List of all members.<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef P </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment.html#47f8bba55326d5ae988dc3a5a9f146c7">point_type</a></td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment.html#e8e37a9f4eeacb317a1ce971da6cbd87">segment</a> (P &p1, P &p2)</td></tr>
-
-<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">P & </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment.html#3f8aa8a3542ebf499e4987ef3ccfd5b1">first</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">P & </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment.html#e5aea8fdfbd0e0dece9b227a8a5cec33">second</a></td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-<h3>template<typename P><br>
- struct ggl::segment< P ></h3>
-
-Class <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>: small containing two (templatized) <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> references. 
-<p>
-From Wikipedia: In geometry, a line <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> is a part of a line that is bounded by two distinct end points, and contains every <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> on the line between its end points. <dl class="note" compact><dt><b>Note:</b></dt><dd>The structure is like std::pair, and can often be used interchangeable. So points are public available. We cannot derive from std::pair<P&, P&> because of reference assignments. Points are not const and might be changed by the algorithm (used in intersection_linestring). </dd></dl>
-<dl compact><dt><b>Template Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>P</em> </td><td><a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> type of the <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> </td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Examples: </b></dt><dd>
-
-<p>
-<a class="el" href="02__linestring__example_8cpp-example.html#_a11">02_linestring_example.cpp</a>.</dl>
-<p>Definition at line <a class="el" href="segment_8hpp_source.html#l00035">35</a> of file <a class="el" href="segment_8hpp_source.html">segment.hpp</a>.</p>
-<hr><h2>Member Typedef Documentation</h2>
-<a class="anchor" name="47f8bba55326d5ae988dc3a5a9f146c7"></a><!-- doxytag: member="ggl::segment::point_type" ref="47f8bba55326d5ae988dc3a5a9f146c7" args="" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename P> </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef P <a class="el" href="structggl_1_1segment.html">ggl::segment</a>< P >::<a class="el" href="structggl_1_1point__type.html">point_type</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="segment_8hpp_source.html#l00049">49</a> of file <a class="el" href="segment_8hpp_source.html">segment.hpp</a>.</p>
-
-</div>
-</div><p>
-<hr><h2>Constructor & Destructor Documentation</h2>
-<a class="anchor" name="e8e37a9f4eeacb317a1ce971da6cbd87"></a><!-- doxytag: member="ggl::segment::segment" ref="e8e37a9f4eeacb317a1ce971da6cbd87" args="(P &p1, P &p2)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename P> </div>
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="structggl_1_1segment.html">ggl::segment</a>< P >::<a class="el" href="structggl_1_1segment.html">segment</a>           </td>
-          <td>(</td>
-          <td class="paramtype">P & </td>
-          <td class="paramname"> <em>p1</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">P & </td>
-          <td class="paramname"> <em>p2</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="segment_8hpp_source.html#l00054">54</a> of file <a class="el" href="segment_8hpp_source.html">segment.hpp</a>.</p>
-
-</div>
-</div><p>
-<hr><h2>Member Data Documentation</h2>
-<a class="anchor" name="3f8aa8a3542ebf499e4987ef3ccfd5b1"></a><!-- doxytag: member="ggl::segment::first" ref="3f8aa8a3542ebf499e4987ef3ccfd5b1" args="" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename P> </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">P& <a class="el" href="structggl_1_1segment.html">ggl::segment</a>< P >::<a class="el" href="structggl_1_1segment.html#3f8aa8a3542ebf499e4987ef3ccfd5b1">first</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="segment_8hpp_source.html#l00051">51</a> of file <a class="el" href="segment_8hpp_source.html">segment.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="e5aea8fdfbd0e0dece9b227a8a5cec33"></a><!-- doxytag: member="ggl::segment::second" ref="e5aea8fdfbd0e0dece9b227a8a5cec33" args="" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename P> </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">P& <a class="el" href="structggl_1_1segment.html">ggl::segment</a>< P >::<a class="el" href="structggl_1_1segment.html#e5aea8fdfbd0e0dece9b227a8a5cec33">second</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="segment_8hpp_source.html#l00052">52</a> of file <a class="el" href="segment_8hpp_source.html">segment.hpp</a>.</p>
-
-</div>
-</div><p>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1segment__iterator.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1segment__iterator.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1segment__iterator.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -59,24 +59,24 @@
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef Point </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment__iterator.html#e388acc7d123761a41a0132ed0b19d29">point_type</a></td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structggl_1_1segment.html">segment_type</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment__iterator.html#fe664c6678e12e841a1c0be1e77e53a0">pointer</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classggl_1_1segment.html">segment_type</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment__iterator.html#fe664c6678e12e841a1c0be1e77e53a0">pointer</a></td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structggl_1_1segment.html">segment_type</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment__iterator.html#71b04f78cf84d967d8d11ec092d54dcc">reference</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classggl_1_1segment.html">segment_type</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment__iterator.html#71b04f78cf84d967d8d11ec092d54dcc">reference</a></td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structggl_1_1segment.html">ggl::segment</a>< Point > </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment__iterator.html#410f1a0aa22f7f4fb6c0850213aba66d">segment_type</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classggl_1_1segment.html">ggl::segment</a>< Point > </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment__iterator.html#410f1a0aa22f7f4fb6c0850213aba66d">segment_type</a></td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structggl_1_1segment.html">segment_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment__iterator.html#e7521e2f53256bf6bd96b99079c92b4f">value_type</a></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classggl_1_1segment.html">segment_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment__iterator.html#e7521e2f53256bf6bd96b99079c92b4f">value_type</a></td></tr>
 
 <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
 <tr><td class="memItemLeft" nowrap align="right" valign="top">Base const & </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment__iterator.html#932c0212e2ba798d82d4484c2278150a">base</a> () const </td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structggl_1_1segment.html">reference</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment__iterator.html#5f87341660aa48a2807c5d1a1392f4c2">operator*</a> ()</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classggl_1_1segment.html">reference</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment__iterator.html#5f87341660aa48a2807c5d1a1392f4c2">operator*</a> ()</td></tr>
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structggl_1_1segment__iterator.html">segment_iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment__iterator.html#63c6edf091022da4e2afee8d395eeeaa">operator++</a> (int)</td></tr>
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structggl_1_1segment__iterator.html">segment_iterator</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment__iterator.html#2f1e23e907229c052a65e8b9b6be6ef0">operator++</a> ()</td></tr>
 
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structggl_1_1segment.html">pointer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment__iterator.html#2b2dfc371bc599e81a16671a83fc16de">operator-></a> ()</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classggl_1_1segment.html">pointer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment__iterator.html#2b2dfc371bc599e81a16671a83fc16de">operator-></a> ()</td></tr>
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1segment__iterator.html#44f6909b510f65b300fa9ae0fa473b2c">segment_iterator</a> (Base const &it, Base const &end)</td></tr>
 
@@ -135,7 +135,7 @@
 template<typename Base, typename Point> </div>
       <table class="memname">
         <tr>
-          <td class="memname">typedef <a class="el" href="structggl_1_1segment.html">ggl::segment</a><Point> <a class="el" href="structggl_1_1segment__iterator.html">ggl::segment_iterator</a>< Base, Point >::<a class="el" href="structggl_1_1segment.html">segment_type</a>          </td>
+          <td class="memname">typedef <a class="el" href="classggl_1_1segment.html">ggl::segment</a><Point> <a class="el" href="structggl_1_1segment__iterator.html">ggl::segment_iterator</a>< Base, Point >::<a class="el" href="classggl_1_1segment.html">segment_type</a>          </td>
         </tr>
       </table>
 </div>
@@ -192,7 +192,7 @@
 template<typename Base, typename Point> </div>
       <table class="memname">
         <tr>
-          <td class="memname">typedef <a class="el" href="structggl_1_1segment.html">segment_type</a> <a class="el" href="structggl_1_1segment__iterator.html">ggl::segment_iterator</a>< Base, Point >::<a class="el" href="structggl_1_1segment.html">value_type</a>          </td>
+          <td class="memname">typedef <a class="el" href="classggl_1_1segment.html">segment_type</a> <a class="el" href="structggl_1_1segment__iterator.html">ggl::segment_iterator</a>< Base, Point >::<a class="el" href="classggl_1_1segment.html">value_type</a>          </td>
         </tr>
       </table>
 </div>
@@ -211,7 +211,7 @@
 template<typename Base, typename Point> </div>
       <table class="memname">
         <tr>
-          <td class="memname">typedef <a class="el" href="structggl_1_1segment.html">segment_type</a>* <a class="el" href="structggl_1_1segment__iterator.html">ggl::segment_iterator</a>< Base, Point >::<a class="el" href="structggl_1_1segment.html">pointer</a>          </td>
+          <td class="memname">typedef <a class="el" href="classggl_1_1segment.html">segment_type</a>* <a class="el" href="structggl_1_1segment__iterator.html">ggl::segment_iterator</a>< Base, Point >::<a class="el" href="classggl_1_1segment.html">pointer</a>          </td>
         </tr>
       </table>
 </div>
@@ -230,7 +230,7 @@
 template<typename Base, typename Point> </div>
       <table class="memname">
         <tr>
-          <td class="memname">typedef <a class="el" href="structggl_1_1segment.html">segment_type</a>& <a class="el" href="structggl_1_1segment__iterator.html">ggl::segment_iterator</a>< Base, Point >::<a class="el" href="structggl_1_1segment.html">reference</a>          </td>
+          <td class="memname">typedef <a class="el" href="classggl_1_1segment.html">segment_type</a>& <a class="el" href="structggl_1_1segment__iterator.html">ggl::segment_iterator</a>< Base, Point >::<a class="el" href="classggl_1_1segment.html">reference</a>          </td>
         </tr>
       </table>
 </div>
@@ -308,7 +308,7 @@
 template<typename Base, typename Point> </div>
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="structggl_1_1segment.html">reference</a> <a class="el" href="structggl_1_1segment__iterator.html">ggl::segment_iterator</a>< Base, Point >::operator*           </td>
+          <td class="memname"><a class="el" href="classggl_1_1segment.html">reference</a> <a class="el" href="structggl_1_1segment__iterator.html">ggl::segment_iterator</a>< Base, Point >::operator*           </td>
           <td>(</td>
           <td class="paramname">          </td>
           <td> ) </td>
@@ -331,7 +331,7 @@
 template<typename Base, typename Point> </div>
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="structggl_1_1segment.html">pointer</a> <a class="el" href="structggl_1_1segment__iterator.html">ggl::segment_iterator</a>< Base, Point >::operator->           </td>
+          <td class="memname"><a class="el" href="classggl_1_1segment.html">pointer</a> <a class="el" href="structggl_1_1segment__iterator.html">ggl::segment_iterator</a>< Base, Point >::operator->           </td>
           <td>(</td>
           <td class="paramname">          </td>
           <td> ) </td>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1segment__tag.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1segment__tag.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1segment__tag.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -45,14 +45,14 @@
   </div>
 </div>
 <div class="contents">
-<h1>ggl::segment_tag Struct Reference</h1><!-- doxytag: class="ggl::segment_tag" -->Convenience <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> (2-points) identifying <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a>.  
+<h1>ggl::segment_tag Struct Reference</h1><!-- doxytag: class="ggl::segment_tag" -->Convenience <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> (2-points) identifying <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a>.  
 <a href="#_details">More...</a>
 <p>
 <table border="0" cellpadding="0" cellspacing="0">
 <tr><td></td></tr>
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
-Convenience <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> (2-points) identifying <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a>. 
+Convenience <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> (2-points) identifying <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a>. 
 <p>Definition at line <a class="el" href="core_2tags_8hpp_source.html#l00060">60</a> of file <a class="el" href="core_2tags_8hpp_source.html">tags.hpp</a>.</p>
 </div>
 <hr size="1">
Added: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1single__tag.html
==============================================================================
--- (empty file)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1single__tag.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -0,0 +1,82 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Generic Geometry Library</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head>
+<body style="background-image: url(images/draft.png);">
+
+<table cellpadding="2" width="100%">
+<tbody>
+<tr>
+<td valign="top">
+<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
+  
+</td>
+<td valign="top" align="right">
+<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
+</td>
+</tr>
+</tbody>
+</table>
+<!-- Generated by Doxygen 1.5.9 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li>Main Page</li>
+      <li>Related Pages</li>
+      <li>Modules</li>
+      <li>Namespaces</li>
+      <li class="current">Classes</li>
+      <li>Files</li>
+      <li>Examples</li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li>Class List</li>
+      <li>Class Hierarchy</li>
+      <li>Class Members</li>
+    </ul>
+  </div>
+  <div class="navpath"><a class="el" href="namespaceggl.html">ggl</a>::<a class="el" href="structggl_1_1single__tag.html">single_tag</a>
+  </div>
+</div>
+<div class="contents">
+<h1>ggl::single_tag< Tag > Struct Template Reference</h1><!-- doxytag: class="ggl::single_tag" -->Meta-function to get for a <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a> of a multi-geometry the <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a> of the corresponding single-geometry.  
+More...
+<p>
+<table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+<h3>template<typename Tag><br>
+ struct ggl::single_tag< Tag ></h3>
+
+Meta-function to get for a <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a> of a multi-geometry the <a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a> of the corresponding single-geometry. 
+<p>Definition at line <a class="el" href="multi_2core_2tags_8hpp_source.html#l00038">38</a> of file <a class="el" href="multi_2core_2tags_8hpp_source.html">tags.hpp</a>.</p>
+</div>
+<hr size="1">
+<table width="100%">
+<tbody>
+<tr>
+<td align="left"><small>
+<p>October 13, 2009</p>
+</small></td>
+<td align="right">
+<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
+Copyright © 2008-2009 Bruno Lalande, Paris<br>
+Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
+</small>
+</td>
+</tr>
+</tbody>
+</table>
+
+<address style="text-align: right;"><small>
+Documentation is generated by Doxygen
+</small></address>
+</body>
+</html>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1strategy_1_1distance_1_1xy__point__segment.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1strategy_1_1distance_1_1xy__point__segment.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1strategy_1_1distance_1_1xy__point__segment.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -48,7 +48,7 @@
 <h1>ggl::strategy::distance::xy_point_segment< P, Segment, Strategy > Struct Template Reference<br>
 <small>
 [<a class="el" href="group__distance.html">distance calculation</a>]</small>
-</h1><!-- doxytag: class="ggl::strategy::distance::xy_point_segment" -->Strategy for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>.  
+</h1><!-- doxytag: class="ggl::strategy::distance::xy_point_segment" -->Strategy for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>.  
 <a href="#_details">More...</a>
 <p>
 
@@ -74,13 +74,13 @@
 <h3>template<typename P, typename Segment, typename Strategy = pythagoras<P, typename point_type<Segment>::type>><br>
  struct ggl::strategy::distance::xy_point_segment< P, Segment, Strategy ></h3>
 
-Strategy for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>. 
+Strategy for <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> to <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>. 
 <p>
 Calculates <a class="el" href="namespaceggl_1_1strategy_1_1distance.html">distance</a> using projected-point method, and (optionally) Pythagoras <dl class="author" compact><dt><b>Author:</b></dt><dd>Adapted from: http://geometryalgorithms.com/Archive/algorithm_0102/algorithm_0102.htm </dd></dl>
 <dl compact><dt><b>Template Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>P</em> </td><td><a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> type </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>SEG</em> </td><td><a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> type </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>SEG</em> </td><td><a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> type </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>S</em> </td><td><a class="el" href="namespaceggl_1_1strategy.html">strategy</a>, optional, defaults to <a class="el" href="structggl_1_1strategy_1_1distance_1_1pythagoras.html" title="Strategy for distance point to point: pythagoras.">pythagoras</a> </td></tr>
   </table>
 </dl>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1strategy_1_1side_1_1xy__side.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1strategy_1_1side_1_1xy__side.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1strategy_1_1side_1_1xy__side.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -53,7 +53,7 @@
 <tr><td class="memItemLeft" nowrap align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1strategy_1_1side_1_1xy__side.html#ef3dcea77c310bdd72a534539ef72edd">side</a> (const P &p0, const P &p1, const P &p2)</td></tr>
 
 <tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="structggl_1_1select__coordinate__type.html">select_coordinate_type</a><br class="typebreak">
-< P, PS >::type </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1strategy_1_1side_1_1xy__side.html#b35869205a5eefee505f491bc1a53f4a">side</a> (const <a class="el" href="structggl_1_1segment.html">segment</a>< const PS > &s, const P &p)</td></tr>
+< P, PS >::type </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1strategy_1_1side_1_1xy__side.html#b35869205a5eefee505f491bc1a53f4a">side</a> (const <a class="el" href="classggl_1_1segment.html">segment</a>< const PS > &s, const P &p)</td></tr>
 
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
@@ -72,7 +72,7 @@
         <tr>
           <td class="memname">static <a class="el" href="structggl_1_1select__coordinate__type.html">select_coordinate_type</a><P, PS>::type <a class="el" href="structggl_1_1strategy_1_1side_1_1xy__side.html">ggl::strategy::side::xy_side</a>< P, PS >::side           </td>
           <td>(</td>
-          <td class="paramtype">const <a class="el" href="structggl_1_1segment.html">segment</a>< const PS > & </td>
+          <td class="paramtype">const <a class="el" href="classggl_1_1segment.html">segment</a>< const PS > & </td>
           <td class="paramname"> <em>s</em>, </td>
         </tr>
         <tr>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1strategy_1_1within_1_1franklin.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1strategy_1_1within_1_1franklin.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1strategy_1_1within_1_1franklin.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -59,7 +59,7 @@
 <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef crossings </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1strategy_1_1within_1_1franklin.html#ae1dd9c468a086bdaaa4b1235fc26bce">state_type</a></td></tr>
 
 <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1strategy_1_1within_1_1franklin.html#bc36ab444ff56273a4536af3f3d4a281">operator()</a> (const <a class="el" href="structggl_1_1segment.html">segment</a>< const PS > &s, <a class="el" href="structggl_1_1strategy_1_1within_1_1franklin.html#ae1dd9c468a086bdaaa4b1235fc26bce">state_type</a> &state) const </td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1strategy_1_1within_1_1franklin.html#bc36ab444ff56273a4536af3f3d4a281">operator()</a> (const <a class="el" href="classggl_1_1segment.html">segment</a>< const PS > &s, <a class="el" href="structggl_1_1strategy_1_1within_1_1franklin.html#ae1dd9c468a086bdaaa4b1235fc26bce">state_type</a> &state) const </td></tr>
 
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
@@ -105,7 +105,7 @@
         <tr>
           <td class="memname">bool <a class="el" href="structggl_1_1strategy_1_1within_1_1franklin.html">ggl::strategy::within::franklin</a>< P, PS >::operator()           </td>
           <td>(</td>
-          <td class="paramtype">const <a class="el" href="structggl_1_1segment.html">segment</a>< const PS > & </td>
+          <td class="paramtype">const <a class="el" href="classggl_1_1segment.html">segment</a>< const PS > & </td>
           <td class="paramname"> <em>s</em>, </td>
         </tr>
         <tr>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1strategy__centroid.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1strategy__centroid.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1strategy__centroid.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -69,7 +69,7 @@
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>T</em> </td><td><a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a> of coordinate system </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>P</em> </td><td>point-type </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>PS</em> </td><td><a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> point-type </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>PS</em> </td><td><a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> point-type </td></tr>
   </table>
 </dl>
 
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1strategy__distance__segment.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1strategy__distance__segment.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1strategy__distance__segment.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -68,7 +68,7 @@
 <dl compact><dt><b>Template Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>CsTag1</em> </td><td><a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a> of coordinate system of <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> type </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>CsTag2</em> </td><td><a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a> of coordinate system of <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> type, usually same as CsTag1 </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>CsTag2</em> </td><td><a class="el" href="structggl_1_1tag.html" title="Meta-function to get the tag of any geometry type.">tag</a> of coordinate system of <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> type, usually same as CsTag1 </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>Point</em> </td><td>point-type </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>Segment</em> </td><td>segment-type </td></tr>
   </table>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1access.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1access.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1access.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -45,7 +45,7 @@
   </div>
 </div>
 <div class="contents">
-<h1>ggl::traits::access< G > Struct Template Reference<br>
+<h1>ggl::traits::access< Geometry, Dimension > Struct Template Reference<br>
 <small>
 [<a class="el" href="group__traits.html">traits: adapt geometries</a>]</small>
 </h1><!-- doxytag: class="ggl::traits::access" -->Traits class which gives <a class="el" href="structggl_1_1traits_1_1access.html" title="Traits class which gives access (get,set) to points.">access</a> (get,set) to points.  
@@ -55,24 +55,25 @@
 <tr><td></td></tr>
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
-<h3>template<typename G><br>
- struct ggl::traits::access< G ></h3>
+<h3>template<typename Geometry, std::size_t Dimension><br>
+ struct ggl::traits::access< Geometry, Dimension ></h3>
 
 Traits class which gives <a class="el" href="structggl_1_1traits_1_1access.html" title="Traits class which gives access (get,set) to points.">access</a> (get,set) to points. 
 <p>
 <dl class="user" compact><dt><b>Geometries:</b></dt><dd><ul>
 <li><a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a></li><li>n-sphere (circle,sphere) for their center </li></ul>
 </dd></dl>
-<dl class="user" compact><dt><b>Specializations should provide:</b></dt><dd><ul>
-<li>static inline T get<I>(const G&)</li><li>static inline void set<I>(G&, const T&) </li></ul>
+<dl class="user" compact><dt><b>Specializations should provide, per Dimension</b></dt><dd><ul>
+<li>static inline T get(const G&)</li><li>static inline void set(G&, T const&) </li></ul>
 </dd></dl>
 <dl compact><dt><b>Template Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>G</em> </td><td>geometry </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>Geometry</em> </td><td>geometry-type </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>Dimension</em> </td><td><a class="el" href="structggl_1_1traits_1_1dimension.html" title="Traits class indicating the number of dimensions of a point.">dimension</a> to <a class="el" href="structggl_1_1traits_1_1access.html" title="Traits class which gives access (get,set) to points.">access</a> </td></tr>
   </table>
 </dl>
 
-<p>Definition at line <a class="el" href="access_8hpp_source.html#l00042">42</a> of file <a class="el" href="access_8hpp_source.html">access.hpp</a>.</p>
+<p>Definition at line <a class="el" href="access_8hpp_source.html#l00043">43</a> of file <a class="el" href="access_8hpp_source.html">access.hpp</a>.</p>
 </div>
 <hr size="1">
 <table width="100%">
Added: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4-members.html
==============================================================================
--- (empty file)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4-members.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -0,0 +1,71 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Generic Geometry Library</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head>
+<body style="background-image: url(images/draft.png);">
+
+<table cellpadding="2" width="100%">
+<tbody>
+<tr>
+<td valign="top">
+<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
+  
+</td>
+<td valign="top" align="right">
+<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
+</td>
+</tr>
+</tbody>
+</table>
+<!-- Generated by Doxygen 1.5.9 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li>Main Page</li>
+      <li>Related Pages</li>
+      <li>Modules</li>
+      <li>Namespaces</li>
+      <li class="current">Classes</li>
+      <li>Files</li>
+      <li>Examples</li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li>Class List</li>
+      <li>Class Hierarchy</li>
+      <li>Class Members</li>
+    </ul>
+  </div>
+</div>
+<div class="contents">
+<h1>ggl::traits::access< ggl::detail::intersection::intersection_point< P >, Dimension > Member List</h1>This is the complete list of members for <a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html">ggl::traits::access< ggl::detail::intersection::intersection_point< P >, Dimension ></a>, including all inherited members.<p><table>
+  <tr class="memlist"><td><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html#82a62232a7a2092e0a3850771871e9ee">get</a>(ggl::detail::intersection::intersection_point< P > const &p)</td><td><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html">ggl::traits::access< ggl::detail::intersection::intersection_point< P >, Dimension ></a></td><td><code> [static]</code></td></tr>
+  <tr class="memlist"><td><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html#840ddd0e5e5719de54570e292d17cfb0">set</a>(ggl::detail::intersection::intersection_point< P > &p, typename coordinate_type< P >::type const &value)</td><td><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html">ggl::traits::access< ggl::detail::intersection::intersection_point< P >, Dimension ></a></td><td><code> [static]</code></td></tr>
+</table></div>
+<hr size="1">
+<table width="100%">
+<tbody>
+<tr>
+<td align="left"><small>
+<p>October 13, 2009</p>
+</small></td>
+<td align="right">
+<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
+Copyright © 2008-2009 Bruno Lalande, Paris<br>
+Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
+</small>
+</td>
+</tr>
+</tbody>
+</table>
+
+<address style="text-align: right;"><small>
+Documentation is generated by Doxygen
+</small></address>
+</body>
+</html>
Added: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html
==============================================================================
--- (empty file)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Generic Geometry Library</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head>
+<body style="background-image: url(images/draft.png);">
+
+<table cellpadding="2" width="100%">
+<tbody>
+<tr>
+<td valign="top">
+<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
+  
+</td>
+<td valign="top" align="right">
+<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
+</td>
+</tr>
+</tbody>
+</table>
+<!-- Generated by Doxygen 1.5.9 -->
+<div class="navigation" id="top">
+  <div class="tabs">
+    <ul>
+      <li>Main Page</li>
+      <li>Related Pages</li>
+      <li>Modules</li>
+      <li>Namespaces</li>
+      <li class="current">Classes</li>
+      <li>Files</li>
+      <li>Examples</li>
+    </ul>
+  </div>
+  <div class="tabs">
+    <ul>
+      <li>Class List</li>
+      <li>Class Hierarchy</li>
+      <li>Class Members</li>
+    </ul>
+  </div>
+  <div class="navpath"><a class="el" href="namespaceggl.html">ggl</a>::<a class="el" href="namespaceggl_1_1traits.html">traits</a>::<a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html">access< ggl::detail::intersection::intersection_point< P >, Dimension ></a>
+  </div>
+</div>
+<div class="contents">
+<h1>ggl::traits::access< ggl::detail::intersection::intersection_point< P >, Dimension > Struct Template Reference</h1><!-- doxytag: class="ggl::traits::access< ggl::detail::intersection::intersection_point< P >, Dimension >" -->
+<p>
+List of all members.<table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="structggl_1_1traits_1_1coordinate__type.html">coordinate_type</a>< P >::type </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html#82a62232a7a2092e0a3850771871e9ee">get</a> (ggl::detail::intersection::intersection_point< P > const &p)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_00_01_dimension_01_4.html#840ddd0e5e5719de54570e292d17cfb0">set</a> (ggl::detail::intersection::intersection_point< P > &p, typename <a class="el" href="structggl_1_1traits_1_1coordinate__type.html">coordinate_type</a>< P >::type const &value)</td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+<h3>template<typename P, std::size_t Dimension><br>
+ struct ggl::traits::access< ggl::detail::intersection::intersection_point< P >, Dimension ></h3>
+
+
+<p>Definition at line <a class="el" href="intersection__point_8hpp_source.html#l00213">213</a> of file <a class="el" href="intersection__point_8hpp_source.html">intersection_point.hpp</a>.</p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="82a62232a7a2092e0a3850771871e9ee"></a><!-- doxytag: member="ggl::traits::access< ggl::detail::intersection::intersection_point< P >, Dimension >::get" ref="82a62232a7a2092e0a3850771871e9ee" args="(ggl::detail::intersection::intersection_point< P > const &p)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template<typename P , std::size_t Dimension> </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">static <a class="el" href="structggl_1_1traits_1_1coordinate__type.html">coordinate_type</a><P>::type <a class="el" href="structggl_1_1traits_1_1access.html">ggl::traits::access</a>< ggl::detail::intersection::intersection_point< P >, Dimension >::get           </td>
+          <td>(</td>
+          <td class="paramtype">ggl::detail::intersection::intersection_point< P > const & </td>
+          <td class="paramname"> <em>p</em>          </td>
+          <td> ) </td>
+          <td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+<p>Definition at line <a class="el" href="intersection__point_8hpp_source.html#l00215">215</a> of file <a class="el" href="intersection__point_8hpp_source.html">intersection_point.hpp</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="840ddd0e5e5719de54570e292d17cfb0"></a><!-- doxytag: member="ggl::traits::access< ggl::detail::intersection::intersection_point< P >, Dimension >::set" ref="840ddd0e5e5719de54570e292d17cfb0" args="(ggl::detail::intersection::intersection_point< P > &p, typename coordinate_type< P >::type const &value)" -->
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template<typename P , std::size_t Dimension> </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">static void <a class="el" href="structggl_1_1traits_1_1access.html">ggl::traits::access</a>< ggl::detail::intersection::intersection_point< P >, Dimension >::set           </td>
+          <td>(</td>
+          <td class="paramtype">ggl::detail::intersection::intersection_point< P > & </td>
+          <td class="paramname"> <em>p</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">typename <a class="el" href="structggl_1_1traits_1_1coordinate__type.html">coordinate_type</a>< P >::type const & </td>
+          <td class="paramname"> <em>value</em></td><td> </td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td><td><code> [static]</code></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+<p>Definition at line <a class="el" href="intersection__point_8hpp_source.html#l00221">221</a> of file <a class="el" href="intersection__point_8hpp_source.html">intersection_point.hpp</a>.</p>
+
+</div>
+</div><p>
+</div>
+<hr size="1">
+<table width="100%">
+<tbody>
+<tr>
+<td align="left"><small>
+<p>October 13, 2009</p>
+</small></td>
+<td align="right">
+<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
+Copyright © 2008-2009 Bruno Lalande, Paris<br>
+Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
+</small>
+</td>
+</tr>
+</tbody>
+</table>
+
+<address style="text-align: right;"><small>
+Documentation is generated by Doxygen
+</small></address>
+</body>
+</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4-members.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4-members.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,71 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li>Class Members</li>
-    </ul>
-  </div>
-</div>
-<div class="contents">
-<h1>ggl::traits::access< ggl::detail::intersection::intersection_point< P > > Member List</h1>This is the complete list of members for <a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html">ggl::traits::access< ggl::detail::intersection::intersection_point< P > ></a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html#a25393c19c53fae14f51f6be484113b9">get</a>(ggl::detail::intersection::intersection_point< P > const &p)</td><td><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html">ggl::traits::access< ggl::detail::intersection::intersection_point< P > ></a></td><td><code> [static]</code></td></tr>
-  <tr class="memlist"><td><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html#bce25b446714591183532373ceeaf1f7">set</a>(ggl::detail::intersection::intersection_point< P > &p, typename coordinate_type< P >::type const &value)</td><td><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html">ggl::traits::access< ggl::detail::intersection::intersection_point< P > ></a></td><td><code> [static]</code></td></tr>
-</table></div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Deleted: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
+++ (empty file)
@@ -1,150 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Generic Geometry Library</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body style="background-image: url(images/draft.png);">
-
-<table cellpadding="2" width="100%">
-<tbody>
-<tr>
-<td valign="top">
-<img alt="GGL" src="images/ggl-logo-big.png" height="80" width="200">
-  
-</td>
-<td valign="top" align="right">
-<img alt="Boost C++ Libraries" src="images/proposed_boost.png" height="86" width="277">
-</td>
-</tr>
-</tbody>
-</table>
-<!-- Generated by Doxygen 1.5.9 -->
-<div class="navigation" id="top">
-  <div class="tabs">
-    <ul>
-      <li>Main Page</li>
-      <li>Related Pages</li>
-      <li>Modules</li>
-      <li>Namespaces</li>
-      <li class="current">Classes</li>
-      <li>Files</li>
-      <li>Examples</li>
-    </ul>
-  </div>
-  <div class="tabs">
-    <ul>
-      <li>Class List</li>
-      <li>Class Hierarchy</li>
-      <li>Class Members</li>
-    </ul>
-  </div>
-  <div class="navpath"><a class="el" href="namespaceggl.html">ggl</a>::<a class="el" href="namespaceggl_1_1traits.html">traits</a>::<a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html">access< ggl::detail::intersection::intersection_point< P > ></a>
-  </div>
-</div>
-<div class="contents">
-<h1>ggl::traits::access< ggl::detail::intersection::intersection_point< P > > Struct Template Reference</h1><!-- doxytag: class="ggl::traits::access< ggl::detail::intersection::intersection_point< P > >" -->
-<p>
-List of all members.<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
-<tr><td class="memTemplParams" nowrap colspan="2">template<int Index> </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static <a class="el" href="structggl_1_1traits_1_1coordinate__type.html">coordinate_type</a>< P >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html#a25393c19c53fae14f51f6be484113b9">get</a> (ggl::detail::intersection::intersection_point< P > const &p)</td></tr>
-
-<tr><td class="memTemplParams" nowrap colspan="2">template<int Index> </td></tr>
-<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1access_3_01ggl_1_1detail_1_1intersection_1_1intersection__point_3_01_p_01_4_01_4.html#bce25b446714591183532373ceeaf1f7">set</a> (ggl::detail::intersection::intersection_point< P > &p, typename <a class="el" href="structggl_1_1traits_1_1coordinate__type.html">coordinate_type</a>< P >::type const &value)</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-<h3>template<typename P><br>
- struct ggl::traits::access< ggl::detail::intersection::intersection_point< P > ></h3>
-
-
-<p>Definition at line <a class="el" href="intersection__point_8hpp_source.html#l00213">213</a> of file <a class="el" href="intersection__point_8hpp_source.html">intersection_point.hpp</a>.</p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a25393c19c53fae14f51f6be484113b9"></a><!-- doxytag: member="ggl::traits::access< ggl::detail::intersection::intersection_point< P > >::get" ref="a25393c19c53fae14f51f6be484113b9" args="(ggl::detail::intersection::intersection_point< P > const &p)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename P > </div>
-<div class="memtemplate">
-template<int Index> </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">static <a class="el" href="structggl_1_1traits_1_1coordinate__type.html">coordinate_type</a><P>::type <a class="el" href="structggl_1_1traits_1_1access.html">ggl::traits::access</a>< ggl::detail::intersection::intersection_point< P > >::get           </td>
-          <td>(</td>
-          <td class="paramtype">ggl::detail::intersection::intersection_point< P > const & </td>
-          <td class="paramname"> <em>p</em>          </td>
-          <td> ) </td>
-          <td><code> [static]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="intersection__point_8hpp_source.html#l00216">216</a> of file <a class="el" href="intersection__point_8hpp_source.html">intersection_point.hpp</a>.</p>
-
-</div>
-</div><p>
-<a class="anchor" name="bce25b446714591183532373ceeaf1f7"></a><!-- doxytag: member="ggl::traits::access< ggl::detail::intersection::intersection_point< P > >::set" ref="bce25b446714591183532373ceeaf1f7" args="(ggl::detail::intersection::intersection_point< P > &p, typename coordinate_type< P >::type const &value)" -->
-<div class="memitem">
-<div class="memproto">
-<div class="memtemplate">
-template<typename P > </div>
-<div class="memtemplate">
-template<int Index> </div>
-      <table class="memname">
-        <tr>
-          <td class="memname">static void <a class="el" href="structggl_1_1traits_1_1access.html">ggl::traits::access</a>< ggl::detail::intersection::intersection_point< P > >::set           </td>
-          <td>(</td>
-          <td class="paramtype">ggl::detail::intersection::intersection_point< P > & </td>
-          <td class="paramname"> <em>p</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">typename <a class="el" href="structggl_1_1traits_1_1coordinate__type.html">coordinate_type</a>< P >::type const & </td>
-          <td class="paramname"> <em>value</em></td><td> </td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td><code> [static]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-<p>Definition at line <a class="el" href="intersection__point_8hpp_source.html#l00223">223</a> of file <a class="el" href="intersection__point_8hpp_source.html">intersection_point.hpp</a>.</p>
-
-</div>
-</div><p>
-</div>
-<hr size="1">
-<table width="100%">
-<tbody>
-<tr>
-<td align="left"><small>
-<p>October 13, 2009</p>
-</small></td>
-<td align="right">
-<small>Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam<br>
-Copyright © 2008-2009 Bruno Lalande, Paris<br>
-Copyright © 2009 Mateusz Loskot, Cadcorp, London<br>
-</small>
-</td>
-</tr>
-</tbody>
-</table>
-
-<address style="text-align: right;"><small>
-Documentation is generated by Doxygen
-</small></address>
-</body>
-</html>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1indexed__access.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1indexed__access.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1indexed__access.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -45,7 +45,7 @@
   </div>
 </div>
 <div class="contents">
-<h1>ggl::traits::indexed_access< G, I, D > Struct Template Reference<br>
+<h1>ggl::traits::indexed_access< Geometry, Index, Dimension > Struct Template Reference<br>
 <small>
 [<a class="el" href="group__traits.html">traits: adapt geometries</a>]</small>
 </h1><!-- doxytag: class="ggl::traits::indexed_access" -->Traits class defining "get" and "set" to get and set <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> coordinate values.  
@@ -55,26 +55,26 @@
 <tr><td></td></tr>
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
-<h3>template<typename G, std::size_t I, std::size_t D><br>
- struct ggl::traits::indexed_access< G, I, D ></h3>
+<h3>template<typename Geometry, std::size_t Index, std::size_t Dimension><br>
+ struct ggl::traits::indexed_access< Geometry, Index, Dimension ></h3>
 
 Traits class defining "get" and "set" to get and set <a class="el" href="classggl_1_1point.html" title="Basic point class, having coordinates defined in a neutral way.">point</a> coordinate values. 
 <p>
 <dl compact><dt><b>Template Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>G</em> </td><td>geometry (<a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a>, <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>) </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>I</em> </td><td>index (min_corner/max_corner for <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a>, 0/1 for <a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>) </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>D</em> </td><td><a class="el" href="structggl_1_1traits_1_1dimension.html" title="Traits class indicating the number of dimensions of a point.">dimension</a> </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>Geometry</em> </td><td>geometry (<a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a>, <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>) </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>Index</em> </td><td>index (min_corner/max_corner for <a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a>, 0/1 for <a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>) </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>Dimension</em> </td><td><a class="el" href="structggl_1_1traits_1_1dimension.html" title="Traits class indicating the number of dimensions of a point.">dimension</a> </td></tr>
   </table>
 </dl>
 <dl class="user" compact><dt><b>Geometries:</b></dt><dd><ul>
-<li><a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a></li><li><a class="el" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a> </li></ul>
+<li><a class="el" href="classggl_1_1box.html" title="Class box: defines a box made of two describing points.">box</a></li><li><a class="el" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a> </li></ul>
 </dd></dl>
 <dl class="user" compact><dt><b>Specializations should provide:</b></dt><dd><ul>
-<li>static inline T get(const G&)</li><li>static inline void set(G&, const T&) </li></ul>
+<li>static inline T get(const G&)</li><li>static inline void set(G&, T const&) </li></ul>
 </dd></dl>
 
-<p>Definition at line <a class="el" href="access_8hpp_source.html#l00059">59</a> of file <a class="el" href="access_8hpp_source.html">access.hpp</a>.</p>
+<p>Definition at line <a class="el" href="access_8hpp_source.html#l00060">60</a> of file <a class="el" href="access_8hpp_source.html">access.hpp</a>.</p>
 </div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1use__std-members.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1use__std-members.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1use__std-members.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -43,8 +43,8 @@
   </div>
 </div>
 <div class="contents">
-<h1>ggl::traits::use_std< G > Member List</h1>This is the complete list of members for <a class="el" href="structggl_1_1traits_1_1use__std.html">ggl::traits::use_std< G ></a>, including all inherited members.<p><table>
-  <tr class="memlist"><td><a class="el" href="structggl_1_1traits_1_1use__std.html#17f62fd601472a4c970adeda2281f145">value</a></td><td><a class="el" href="structggl_1_1traits_1_1use__std.html">ggl::traits::use_std< G ></a></td><td><code> [static]</code></td></tr>
+<h1>ggl::traits::use_std< Geometry > Member List</h1>This is the complete list of members for <a class="el" href="structggl_1_1traits_1_1use__std.html">ggl::traits::use_std< Geometry ></a>, including all inherited members.<p><table>
+  <tr class="memlist"><td><a class="el" href="structggl_1_1traits_1_1use__std.html#53e09180303edd2ec2735f749db2305d">value</a></td><td><a class="el" href="structggl_1_1traits_1_1use__std.html">ggl::traits::use_std< Geometry ></a></td><td><code> [static]</code></td></tr>
 </table></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1use__std.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1use__std.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/structggl_1_1traits_1_1use__std.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -45,7 +45,7 @@
   </div>
 </div>
 <div class="contents">
-<h1>ggl::traits::use_std< G > Struct Template Reference<br>
+<h1>ggl::traits::use_std< Geometry > Struct Template Reference<br>
 <small>
 [<a class="el" href="group__traits.html">traits: adapt geometries</a>]</small>
 </h1><!-- doxytag: class="ggl::traits::use_std" -->Traits class, optional, indicating that the std-library should be used.  
@@ -56,12 +56,12 @@
 <a href="structggl_1_1traits_1_1use__std-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
 <tr><td></td></tr>
 <tr><td colspan="2"><br><h2>Static Public Attributes</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">static const bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1use__std.html#17f62fd601472a4c970adeda2281f145">value</a> = true</td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static const bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structggl_1_1traits_1_1use__std.html#53e09180303edd2ec2735f749db2305d">value</a> = true</td></tr>
 
 </table>
 <hr><a name="_details"></a><h2>Detailed Description</h2>
-<h3>template<typename G><br>
- struct ggl::traits::use_std< G ></h3>
+<h3>template<typename Geometry><br>
+ struct ggl::traits::use_std< Geometry ></h3>
 
 Traits class, optional, indicating that the std-library should be used. 
 <p>
@@ -73,16 +73,16 @@
 <li>value (defaults to true) </li></ul>
 </dd></dl>
 
-<p>Definition at line <a class="el" href="access_8hpp_source.html#l00076">76</a> of file <a class="el" href="access_8hpp_source.html">access.hpp</a>.</p>
+<p>Definition at line <a class="el" href="access_8hpp_source.html#l00077">77</a> of file <a class="el" href="access_8hpp_source.html">access.hpp</a>.</p>
 <hr><h2>Member Data Documentation</h2>
-<a class="anchor" name="17f62fd601472a4c970adeda2281f145"></a><!-- doxytag: member="ggl::traits::use_std::value" ref="17f62fd601472a4c970adeda2281f145" args="" -->
+<a class="anchor" name="53e09180303edd2ec2735f749db2305d"></a><!-- doxytag: member="ggl::traits::use_std::value" ref="53e09180303edd2ec2735f749db2305d" args="" -->
 <div class="memitem">
 <div class="memproto">
 <div class="memtemplate">
-template<typename G > </div>
+template<typename Geometry > </div>
       <table class="memname">
         <tr>
-          <td class="memname">const bool <a class="el" href="structggl_1_1traits_1_1use__std.html">ggl::traits::use_std</a>< G >::<a class="el" href="structggl_1_1traits_1_1use__std.html#17f62fd601472a4c970adeda2281f145">value</a> = true<code> [static]</code>          </td>
+          <td class="memname">const bool <a class="el" href="structggl_1_1traits_1_1use__std.html">ggl::traits::use_std</a>< Geometry >::<a class="el" href="structggl_1_1traits_1_1use__std.html#53e09180303edd2ec2735f749db2305d">value</a> = true<code> [static]</code>          </td>
         </tr>
       </table>
 </div>
@@ -90,7 +90,7 @@
 
 <p>
 
-<p>Definition at line <a class="el" href="access_8hpp_source.html#l00078">78</a> of file <a class="el" href="access_8hpp_source.html">access.hpp</a>.</p>
+<p>Definition at line <a class="el" href="access_8hpp_source.html#l00079">79</a> of file <a class="el" href="access_8hpp_source.html">access.hpp</a>.</p>
 
 </div>
 </div><p>
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/tuple_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/tuple_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/tuple_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -66,80 +66,100 @@
 <a name="l00024"></a>00024 {
 <a name="l00025"></a>00025 
 <a name="l00026"></a>00026 <span class="comment">// boost::tuple, 2D</span>
-<a name="l00027"></a>00027 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
-<a name="l00028"></a>00028 <span class="keyword">struct </span>coordinate_type<boost::tuple<T, T> >
+<a name="l00027"></a>00027 <span class="keyword">template</span> <<span class="keyword">typename</span> CoordinateType>
+<a name="l00028"></a>00028 <span class="keyword">struct </span>coordinate_type<boost::tuple<CoordinateType, CoordinateType> >
 <a name="l00029"></a>00029 {
-<a name="l00030"></a>00030     <span class="keyword">typedef</span> T type;
+<a name="l00030"></a>00030     <span class="keyword">typedef</span> CoordinateType type;
 <a name="l00031"></a>00031 };
 <a name="l00032"></a>00032 
-<a name="l00033"></a>00033 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
-<a name="l00034"></a>00034 <span class="keyword">struct </span><a class="code" href="classcore__dispatch_1_1dimension.html">dimension</a><boost::tuple<T, T> > : boost::mpl::int_<2> {};
-<a name="l00035"></a>00035 
-<a name="l00036"></a>00036 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
-<a name="l00037"></a>00037 <span class="keyword">struct </span>access<boost::tuple<T, T> >
-<a name="l00038"></a>00038 {
-<a name="l00039"></a>00039     <span class="keyword">template</span> <<span class="keywordtype">int</span> I>
-<a name="l00040"></a>00040     <span class="keyword">static</span> <span class="keyword">inline</span> T <span class="keyword">get</span>(<span class="keyword">const</span> boost::tuple<T, T>& p)
-<a name="l00041"></a>00041     {
-<a name="l00042"></a>00042         <span class="keywordflow">return</span> p.get<I>();
-<a name="l00043"></a>00043     }
-<a name="l00044"></a>00044 
-<a name="l00045"></a>00045     <span class="keyword">template</span> <<span class="keywordtype">int</span> I>
-<a name="l00046"></a>00046     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(boost::tuple<T, T>& p, <span class="keyword">const</span> T& value)
+<a name="l00033"></a>00033 <span class="keyword">template</span> <<span class="keyword">typename</span> CoordinateType>
+<a name="l00034"></a>00034 <span class="keyword">struct </span><a class="code" href="classcore__dispatch_1_1dimension.html">dimension</a><boost::tuple<CoordinateType, CoordinateType> > 
+<a name="l00035"></a>00035     : boost::mpl::int_<2> 
+<a name="l00036"></a>00036 {};
+<a name="l00037"></a>00037 
+<a name="l00038"></a>00038 <span class="keyword">template</span> <<span class="keyword">typename</span> CoordinateType, std::<span class="keywordtype">size_t</span> Dimension>
+<a name="l00039"></a>00039 <span class="keyword">struct </span>access
+<a name="l00040"></a>00040     <
+<a name="l00041"></a>00041         boost::tuple<CoordinateType, CoordinateType>,
+<a name="l00042"></a>00042         Dimension
+<a name="l00043"></a>00043     >
+<a name="l00044"></a>00044 {
+<a name="l00045"></a>00045     <span class="keyword">static</span> <span class="keyword">inline</span> CoordinateType <span class="keyword">get</span>(
+<a name="l00046"></a>00046         boost::tuple<CoordinateType, CoordinateType> <span class="keyword">const</span>& point)
 <a name="l00047"></a>00047     {
-<a name="l00048"></a>00048         p.get<I>() = value;
+<a name="l00048"></a>00048         <span class="keywordflow">return</span> point.template get<Dimension>();
 <a name="l00049"></a>00049     }
-<a name="l00050"></a>00050 };
-<a name="l00051"></a>00051 
-<a name="l00052"></a>00052 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
-<a name="l00053"></a>00053 <span class="keyword">struct </span>tag<boost::tuple<T, T> >
-<a name="l00054"></a>00054 {
-<a name="l00055"></a>00055     <span class="keyword">typedef</span> point_tag <a class="code" href="structggl_1_1traits_1_1tag.html#6a33811e99e92e16ae2529e6ecd8a1b6">type</a>;
+<a name="l00050"></a>00050 
+<a name="l00051"></a>00051     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(boost::tuple<CoordinateType, CoordinateType>& point, 
+<a name="l00052"></a>00052         CoordinateType <span class="keyword">const</span>& value)
+<a name="l00053"></a>00053     {
+<a name="l00054"></a>00054         point.template get<Dimension>() = value;
+<a name="l00055"></a>00055     }
 <a name="l00056"></a>00056 };
 <a name="l00057"></a>00057 
-<a name="l00058"></a>00058 <span class="comment">// boost::tuple, 3D</span>
-<a name="l00059"></a>00059 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
-<a name="l00060"></a>00060 <span class="keyword">struct </span>coordinate_type<boost::tuple<T, T, T> >
-<a name="l00061"></a>00061 {
-<a name="l00062"></a>00062     <span class="keyword">typedef</span> T type;
-<a name="l00063"></a>00063 };
-<a name="l00064"></a>00064 
-<a name="l00065"></a>00065 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
-<a name="l00066"></a>00066 <span class="keyword">struct </span><a class="code" href="classcore__dispatch_1_1dimension.html">dimension</a><boost::tuple<T, T, T> > : boost::mpl::int_<3> {};
-<a name="l00067"></a>00067 
-<a name="l00068"></a>00068 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
-<a name="l00069"></a>00069 <span class="keyword">struct </span>access<boost::tuple<T, T, T> >
+<a name="l00058"></a>00058 <span class="keyword">template</span> <<span class="keyword">typename</span> CoordinateType>
+<a name="l00059"></a>00059 <span class="keyword">struct </span>tag<boost::tuple<CoordinateType, CoordinateType> >
+<a name="l00060"></a>00060 {
+<a name="l00061"></a>00061     <span class="keyword">typedef</span> point_tag <a class="code" href="structggl_1_1traits_1_1tag.html#6a33811e99e92e16ae2529e6ecd8a1b6">type</a>;
+<a name="l00062"></a>00062 };
+<a name="l00063"></a>00063 
+<a name="l00064"></a>00064 <span class="comment">// boost::tuple, 3D</span>
+<a name="l00065"></a>00065 <span class="keyword">template</span> <<span class="keyword">typename</span> CoordinateType>
+<a name="l00066"></a>00066 <span class="keyword">struct </span>coordinate_type
+<a name="l00067"></a>00067     <
+<a name="l00068"></a>00068         boost::tuple<CoordinateType, CoordinateType, CoordinateType> 
+<a name="l00069"></a>00069     >
 <a name="l00070"></a>00070 {
-<a name="l00071"></a>00071     <span class="keyword">template</span> <<span class="keywordtype">int</span> I>
-<a name="l00072"></a>00072     <span class="keyword">static</span> <span class="keyword">inline</span> T <span class="keyword">get</span>(<span class="keyword">const</span> boost::tuple<T, T, T>& p)
-<a name="l00073"></a>00073     {
-<a name="l00074"></a>00074         <span class="keywordflow">return</span> p.get<I>();
-<a name="l00075"></a>00075     }
-<a name="l00076"></a>00076 
-<a name="l00077"></a>00077     <span class="keyword">template</span> <<span class="keywordtype">int</span> I>
-<a name="l00078"></a>00078     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(boost::tuple<T, T, T>& p, <span class="keyword">const</span> T& value)
-<a name="l00079"></a>00079     {
-<a name="l00080"></a>00080         p.get<I>() = value;
-<a name="l00081"></a>00081     }
-<a name="l00082"></a>00082 };
-<a name="l00083"></a>00083 
-<a name="l00084"></a>00084 <span class="keyword">template</span> <<span class="keyword">typename</span> T>
-<a name="l00085"></a>00085 <span class="keyword">struct </span>tag<boost::tuple<T, T, T> >
-<a name="l00086"></a>00086 {
-<a name="l00087"></a>00087     <span class="keyword">typedef</span> point_tag <a class="code" href="structggl_1_1traits_1_1tag.html#6a33811e99e92e16ae2529e6ecd8a1b6">type</a>;
-<a name="l00088"></a>00088 };
-<a name="l00089"></a>00089 
-<a name="l00090"></a>00090 <span class="comment">// The library user has</span>
-<a name="l00091"></a>00091 <span class="comment">// 1) either to specify the coordinate system using a traits class</span>
-<a name="l00092"></a>00092 <span class="comment">// 2) or include <ggl/geometries/adapted/tuple__at_.hpp> where @=cartesian,geographic,...</span>
-<a name="l00093"></a>00093 
-<a name="l00094"></a>00094 } <span class="comment">// namespace traits</span>
-<a name="l00095"></a>00095 <span class="preprocessor">#endif // DOXYGEN_NO_TRAITS_SPECIALIZATIONS</span>
-<a name="l00096"></a>00096 <span class="preprocessor"></span>
-<a name="l00097"></a>00097 } <span class="comment">// namespace ggl</span>
-<a name="l00098"></a>00098 
-<a name="l00099"></a>00099 <span class="preprocessor">#endif // GGL_GEOMETRIES_ADAPTED_TUPLE_HPP</span>
-<a name="l00100"></a>00100 <span class="preprocessor"></span>
+<a name="l00071"></a>00071     <span class="keyword">typedef</span> CoordinateType type;
+<a name="l00072"></a>00072 };
+<a name="l00073"></a>00073 
+<a name="l00074"></a>00074 <span class="keyword">template</span> <<span class="keyword">typename</span> CoordinateType>
+<a name="l00075"></a>00075 <span class="keyword">struct </span><a class="code" href="classcore__dispatch_1_1dimension.html">dimension</a><boost::tuple<CoordinateType, CoordinateType, CoordinateType> > 
+<a name="l00076"></a>00076     : boost::mpl::int_<3> 
+<a name="l00077"></a>00077 {};
+<a name="l00078"></a>00078 
+<a name="l00079"></a>00079 <span class="keyword">template</span> <<span class="keyword">typename</span> CoordinateType, std::<span class="keywordtype">size_t</span> Dimension>
+<a name="l00080"></a>00080 <span class="keyword">struct </span>access
+<a name="l00081"></a>00081     <
+<a name="l00082"></a>00082         boost::tuple<CoordinateType, CoordinateType, CoordinateType>,
+<a name="l00083"></a>00083         Dimension 
+<a name="l00084"></a>00084     >
+<a name="l00085"></a>00085 {
+<a name="l00086"></a>00086     <span class="keyword">static</span> <span class="keyword">inline</span> CoordinateType <span class="keyword">get</span>(
+<a name="l00087"></a>00087         boost::tuple
+<a name="l00088"></a>00088             <
+<a name="l00089"></a>00089                 CoordinateType, CoordinateType, CoordinateType
+<a name="l00090"></a>00090             > <span class="keyword">const</span>& point)
+<a name="l00091"></a>00091     {
+<a name="l00092"></a>00092         <span class="keywordflow">return</span> point.template get<Dimension>();
+<a name="l00093"></a>00093     }
+<a name="l00094"></a>00094 
+<a name="l00095"></a>00095     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <span class="keyword">set</span>(
+<a name="l00096"></a>00096         boost::tuple<CoordinateType, CoordinateType, CoordinateType>& point, 
+<a name="l00097"></a>00097         CoordinateType <span class="keyword">const</span>& value)
+<a name="l00098"></a>00098     {
+<a name="l00099"></a>00099         point.template get<Dimension>() = value;
+<a name="l00100"></a>00100     }
+<a name="l00101"></a>00101 };
+<a name="l00102"></a>00102 
+<a name="l00103"></a>00103 <span class="keyword">template</span> <<span class="keyword">typename</span> CoordinateType>
+<a name="l00104"></a>00104 <span class="keyword">struct </span>tag<boost::tuple<CoordinateType, CoordinateType, CoordinateType> >
+<a name="l00105"></a>00105 {
+<a name="l00106"></a>00106     <span class="keyword">typedef</span> point_tag <a class="code" href="structggl_1_1traits_1_1tag.html#6a33811e99e92e16ae2529e6ecd8a1b6">type</a>;
+<a name="l00107"></a>00107 };
+<a name="l00108"></a>00108 
+<a name="l00109"></a>00109 <span class="comment">// The library user has</span>
+<a name="l00110"></a>00110 <span class="comment">// 1) either to specify the coordinate system using a traits class</span>
+<a name="l00111"></a>00111 <span class="comment">// 2) or include <ggl/geometries/adapted/tuple__at_.hpp> </span>
+<a name="l00112"></a>00112 <span class="comment">//          where @=cartesian,geographic,...</span>
+<a name="l00113"></a>00113 
+<a name="l00114"></a>00114 } <span class="comment">// namespace traits</span>
+<a name="l00115"></a>00115 <span class="preprocessor">#endif // DOXYGEN_NO_TRAITS_SPECIALIZATIONS</span>
+<a name="l00116"></a>00116 <span class="preprocessor"></span>
+<a name="l00117"></a>00117 } <span class="comment">// namespace ggl</span>
+<a name="l00118"></a>00118 
+<a name="l00119"></a>00119 <span class="preprocessor">#endif // GGL_GEOMETRIES_ADAPTED_TUPLE_HPP</span>
+<a name="l00120"></a>00120 <span class="preprocessor"></span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/tupled_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/tupled_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/tupled_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -107,7 +107,7 @@
 <a name="l00065"></a>00065     }
 <a name="l00066"></a>00066 
 <a name="l00067"></a>00067     <span class="keyword">template</span> <<span class="keyword">typename</span> S>
-<a name="l00068"></a><a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#036ae4e5762ae6b9f981e7b9d39f0b2a">00068</a>     <span class="keyword">static</span> <span class="keyword">inline</span> <a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">return_type</a> <a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#036ae4e5762ae6b9f981e7b9d39f0b2a">collinear_interior_boundary_intersect</a>(S <span class="keyword">const</span>& <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>,
+<a name="l00068"></a><a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#036ae4e5762ae6b9f981e7b9d39f0b2a">00068</a>     <span class="keyword">static</span> <span class="keyword">inline</span> <a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">return_type</a> <a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#036ae4e5762ae6b9f981e7b9d39f0b2a">collinear_interior_boundary_intersect</a>(S <span class="keyword">const</span>& <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>,
 <a name="l00069"></a>00069                 <span class="keywordtype">bool</span> a_within_b, <span class="keywordtype">bool</span> opposite)
 <a name="l00070"></a>00070     {
 <a name="l00071"></a>00071         <span class="keywordflow">return</span> boost::make_tuple
@@ -117,7 +117,7 @@
 <a name="l00075"></a>00075             );
 <a name="l00076"></a>00076     }
 <a name="l00077"></a>00077 
-<a name="l00078"></a><a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#512bec33f0d13ffe8bdcaa7d2c6cd1ec">00078</a>     <span class="keyword">static</span> <span class="keyword">inline</span> <a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">return_type</a> <a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#512bec33f0d13ffe8bdcaa7d2c6cd1ec">collinear_a_in_b</a>(<a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#a85d9e4477a04f1263e99c63b56bca1b">segment_type1</a> <span class="keyword">const</span>& <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>,
+<a name="l00078"></a><a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#512bec33f0d13ffe8bdcaa7d2c6cd1ec">00078</a>     <span class="keyword">static</span> <span class="keyword">inline</span> <a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">return_type</a> <a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#512bec33f0d13ffe8bdcaa7d2c6cd1ec">collinear_a_in_b</a>(<a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#a85d9e4477a04f1263e99c63b56bca1b">segment_type1</a> <span class="keyword">const</span>& <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>,
 <a name="l00079"></a>00079                 <span class="keywordtype">bool</span> opposite)
 <a name="l00080"></a>00080     {
 <a name="l00081"></a>00081         <span class="keywordflow">return</span> boost::make_tuple
@@ -126,7 +126,7 @@
 <a name="l00084"></a>00084                 Policy2::collinear_a_in_b(segment, opposite)
 <a name="l00085"></a>00085             );
 <a name="l00086"></a>00086     }
-<a name="l00087"></a><a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#f95f9b1c2e967c260d060c24aabf160f">00087</a>     <span class="keyword">static</span> <span class="keyword">inline</span> <a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">return_type</a> <a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#f95f9b1c2e967c260d060c24aabf160f">collinear_b_in_a</a>(<a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#192979bbc532077e533e31a827ed473d">segment_type2</a> <span class="keyword">const</span>& <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>,
+<a name="l00087"></a><a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#f95f9b1c2e967c260d060c24aabf160f">00087</a>     <span class="keyword">static</span> <span class="keyword">inline</span> <a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">return_type</a> <a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#f95f9b1c2e967c260d060c24aabf160f">collinear_b_in_a</a>(<a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#192979bbc532077e533e31a827ed473d">segment_type2</a> <span class="keyword">const</span>& <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>,
 <a name="l00088"></a>00088                     <span class="keywordtype">bool</span> opposite)
 <a name="l00089"></a>00089     {
 <a name="l00090"></a>00090         <span class="keywordflow">return</span> boost::make_tuple
@@ -159,7 +159,7 @@
 <a name="l00117"></a>00117             );
 <a name="l00118"></a>00118     }
 <a name="l00119"></a>00119 
-<a name="l00120"></a><a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#d68c9fa4dbac13be78e0f2d8a099ca6a">00120</a>     <span class="keyword">static</span> <span class="keyword">inline</span> <a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">return_type</a> <a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#d68c9fa4dbac13be78e0f2d8a099ca6a">degenerate</a>(<a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#a85d9e4477a04f1263e99c63b56bca1b">segment_type1</a> <span class="keyword">const</span>& <a class="code" href="structggl_1_1segment.html" title="Class segment: small containing two (templatized) point references.">segment</a>,
+<a name="l00120"></a><a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#d68c9fa4dbac13be78e0f2d8a099ca6a">00120</a>     <span class="keyword">static</span> <span class="keyword">inline</span> <a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#fd5a4a56a3f161178b97885e9ae27738">return_type</a> <a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#d68c9fa4dbac13be78e0f2d8a099ca6a">degenerate</a>(<a class="code" href="structggl_1_1policies_1_1relate_1_1segments__tupled.html#a85d9e4477a04f1263e99c63b56bca1b">segment_type1</a> <span class="keyword">const</span>& <a class="code" href="classggl_1_1segment.html" title="Class segment: small class containing two (templatized) point references.">segment</a>,
 <a name="l00121"></a>00121                 <span class="keywordtype">bool</span> a_degenerate)
 <a name="l00122"></a>00122     {
 <a name="l00123"></a>00123         <span class="keywordflow">return</span> boost::make_tuple
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/write__dsv_8hpp_source.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/write__dsv_8hpp_source.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/write__dsv_8hpp_source.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -43,336 +43,359 @@
 <h1>ggl/util/write_dsv.hpp</h1>Go to the documentation of this file.<div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">// Generic Geometry Library</span>
 <a name="l00002"></a>00002 <span class="comment">//</span>
 <a name="l00003"></a>00003 <span class="comment">// Copyright Barend Gehrels 1995-2009, Geodan Holding B.V. Amsterdam, the Netherlands.</span>
-<a name="l00004"></a>00004 <span class="comment">// Copyright Bruno Lalande 2008, 2009</span>
-<a name="l00005"></a>00005 <span class="comment">// Use, modification and distribution is subject to the Boost Software License,</span>
-<a name="l00006"></a>00006 <span class="comment">// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at</span>
-<a name="l00007"></a>00007 <span class="comment">// http://www.boost.org/LICENSE_1_0.txt)</span>
-<a name="l00008"></a>00008 
-<a name="l00009"></a>00009 <span class="preprocessor">#ifndef GGL_UTIL_WRITE_DSV_HPP</span>
-<a name="l00010"></a>00010 <span class="preprocessor"></span><span class="preprocessor">#define GGL_UTIL_WRITE_DSV_HPP</span>
-<a name="l00011"></a>00011 <span class="preprocessor"></span>
-<a name="l00012"></a>00012 <span class="preprocessor">#include <iostream></span>
-<a name="l00013"></a>00013 <span class="preprocessor">#include <string></span>
-<a name="l00014"></a>00014 
-<a name="l00015"></a>00015 <span class="preprocessor">#include <boost/concept/assert.hpp></span>
-<a name="l00016"></a>00016 <span class="preprocessor">#include <boost/range/functions.hpp></span>
-<a name="l00017"></a>00017 <span class="preprocessor">#include <boost/range/metafunctions.hpp></span>
-<a name="l00018"></a>00018 
-<a name="l00019"></a>00019 <span class="preprocessor">#include <<a class="code" href="convert_8hpp.html">ggl/algorithms/convert.hpp</a>></span>
-<a name="l00020"></a>00020 <span class="preprocessor">#include <<a class="code" href="point__concept_8hpp.html">ggl/core/concepts/point_concept.hpp</a>></span>
-<a name="l00021"></a>00021 <span class="preprocessor">#include <<a class="code" href="exterior__ring_8hpp.html">ggl/core/exterior_ring.hpp</a>></span>
-<a name="l00022"></a>00022 <span class="preprocessor">#include <<a class="code" href="interior__rings_8hpp.html">ggl/core/interior_rings.hpp</a>></span>
-<a name="l00023"></a>00023 <span class="preprocessor">#include <<a class="code" href="core_2ring__type_8hpp.html">ggl/core/ring_type.hpp</a>></span>
-<a name="l00024"></a>00024 <span class="preprocessor">#include <<a class="code" href="core_2is__multi_8hpp.html">ggl/core/is_multi.hpp</a>></span>
-<a name="l00025"></a>00025 <span class="preprocessor">#include <<a class="code" href="linear__ring_8hpp.html">ggl/geometries/linear_ring.hpp</a>></span>
+<a name="l00004"></a>00004 <span class="comment">// Use, modification and distribution is subject to the Boost Software License,</span>
+<a name="l00005"></a>00005 <span class="comment">// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at</span>
+<a name="l00006"></a>00006 <span class="comment">// http://www.boost.org/LICENSE_1_0.txt)</span>
+<a name="l00007"></a>00007 
+<a name="l00008"></a>00008 <span class="preprocessor">#ifndef GGL_UTIL_WRITE_DSV_HPP</span>
+<a name="l00009"></a>00009 <span class="preprocessor"></span><span class="preprocessor">#define GGL_UTIL_WRITE_DSV_HPP</span>
+<a name="l00010"></a>00010 <span class="preprocessor"></span>
+<a name="l00011"></a>00011 <span class="preprocessor">#include <iostream></span>
+<a name="l00012"></a>00012 <span class="preprocessor">#include <string></span>
+<a name="l00013"></a>00013 
+<a name="l00014"></a>00014 <span class="preprocessor">#include <boost/concept/assert.hpp></span>
+<a name="l00015"></a>00015 <span class="preprocessor">#include <boost/range/functions.hpp></span>
+<a name="l00016"></a>00016 <span class="preprocessor">#include <boost/range/metafunctions.hpp></span>
+<a name="l00017"></a>00017 
+<a name="l00018"></a>00018 <span class="preprocessor">#include <<a class="code" href="convert_8hpp.html">ggl/algorithms/convert.hpp</a>></span>
+<a name="l00019"></a>00019 <span class="preprocessor">#include <<a class="code" href="point__concept_8hpp.html">ggl/core/concepts/point_concept.hpp</a>></span>
+<a name="l00020"></a>00020 <span class="preprocessor">#include <<a class="code" href="exterior__ring_8hpp.html">ggl/core/exterior_ring.hpp</a>></span>
+<a name="l00021"></a>00021 <span class="preprocessor">#include <<a class="code" href="interior__rings_8hpp.html">ggl/core/interior_rings.hpp</a>></span>
+<a name="l00022"></a>00022 <span class="preprocessor">#include <<a class="code" href="core_2ring__type_8hpp.html">ggl/core/ring_type.hpp</a>></span>
+<a name="l00023"></a>00023 <span class="preprocessor">#include <<a class="code" href="core_2is__multi_8hpp.html">ggl/core/is_multi.hpp</a>></span>
+<a name="l00024"></a>00024 <span class="preprocessor">#include <<a class="code" href="linear__ring_8hpp.html">ggl/geometries/linear_ring.hpp</a>></span>
+<a name="l00025"></a>00025 
 <a name="l00026"></a>00026 
 <a name="l00027"></a>00027 
-<a name="l00028"></a>00028 
-<a name="l00029"></a>00029 <span class="keyword">namespace </span>ggl
-<a name="l00030"></a>00030 {
-<a name="l00031"></a>00031 
-<a name="l00032"></a>00032 <span class="preprocessor">#ifndef DOXYGEN_NO_DETAIL</span>
-<a name="l00033"></a>00033 <span class="preprocessor"></span><span class="keyword">namespace </span>detail { <span class="keyword">namespace </span><a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a> {
+<a name="l00028"></a>00028 <span class="keyword">namespace </span>ggl
+<a name="l00029"></a>00029 {
+<a name="l00030"></a>00030 
+<a name="l00031"></a>00031 <span class="preprocessor">#ifndef DOXYGEN_NO_DETAIL</span>
+<a name="l00032"></a>00032 <span class="preprocessor"></span><span class="keyword">namespace </span>detail { <span class="keyword">namespace </span><a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a> {
+<a name="l00033"></a>00033 
 <a name="l00034"></a>00034 
-<a name="l00035"></a>00035 
-<a name="l00036"></a>00036 <span class="keyword">struct </span>dsv_settings
-<a name="l00037"></a>00037 {
-<a name="l00038"></a>00038     std::string coordinate_separator;
-<a name="l00039"></a>00039     std::string point_open;
-<a name="l00040"></a>00040     std::string point_close;
-<a name="l00041"></a>00041     std::string point_separator;
-<a name="l00042"></a>00042     std::string list_open;
-<a name="l00043"></a>00043     std::string list_close;
-<a name="l00044"></a>00044     std::string list_separator;
-<a name="l00045"></a>00045 
-<a name="l00046"></a>00046     dsv_settings(std::string <span class="keyword">const</span>& sep
-<a name="l00047"></a>00047             , std::string <span class="keyword">const</span>& open
-<a name="l00048"></a>00048             , std::string <span class="keyword">const</span>& close
-<a name="l00049"></a>00049             , std::string <span class="keyword">const</span>& psep
-<a name="l00050"></a>00050             , std::string <span class="keyword">const</span>& lopen
-<a name="l00051"></a>00051             , std::string <span class="keyword">const</span>& lclose
-<a name="l00052"></a>00052             , std::string <span class="keyword">const</span>& lsep
-<a name="l00053"></a>00053             )
-<a name="l00054"></a>00054         : coordinate_separator(sep)
-<a name="l00055"></a>00055         , point_open(open)
-<a name="l00056"></a>00056         , point_close(close)
-<a name="l00057"></a>00057         , point_separator(psep)
-<a name="l00058"></a>00058         , list_open(lopen)
-<a name="l00059"></a>00059         , list_close(lclose)
-<a name="l00060"></a>00060         , list_separator(lsep)
-<a name="l00061"></a>00061     {}
-<a name="l00062"></a>00062 };
-<a name="l00063"></a>00063 
-<a name="l00064"></a>00064 <span class="keyword">template</span> <<span class="keyword">typename</span> P, <span class="keywordtype">int</span> Dimension, <span class="keywordtype">int</span> Count>
-<a name="l00065"></a>00065 <span class="keyword">struct </span>stream_coordinate
-<a name="l00066"></a>00066 {
-<a name="l00067"></a>00067     <span class="keyword">template</span> <<span class="keyword">typename</span> Char, <span class="keyword">typename</span> Traits>
-<a name="l00068"></a>00068     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> apply(std::basic_ostream<Char, Traits>& os, P <span class="keyword">const</span>& p,
-<a name="l00069"></a>00069             dsv_settings <span class="keyword">const</span>& settings)
-<a name="l00070"></a>00070     {
-<a name="l00071"></a>00071         os << (Dimension > 0 ? settings.coordinate_separator : <span class="stringliteral">""</span>) 
-<a name="l00072"></a>00072             << get<Dimension>(p);
-<a name="l00073"></a>00073         stream_coordinate<P, Dimension + 1, Count>::apply(os, p, settings);
-<a name="l00074"></a>00074     }
-<a name="l00075"></a>00075 };
+<a name="l00035"></a>00035 <span class="keyword">struct </span>dsv_settings
+<a name="l00036"></a>00036 {
+<a name="l00037"></a>00037     std::string coordinate_separator;
+<a name="l00038"></a>00038     std::string point_open;
+<a name="l00039"></a>00039     std::string point_close;
+<a name="l00040"></a>00040     std::string point_separator;
+<a name="l00041"></a>00041     std::string list_open;
+<a name="l00042"></a>00042     std::string list_close;
+<a name="l00043"></a>00043     std::string list_separator;
+<a name="l00044"></a>00044 
+<a name="l00045"></a>00045     dsv_settings(std::string <span class="keyword">const</span>& sep
+<a name="l00046"></a>00046             , std::string <span class="keyword">const</span>& open
+<a name="l00047"></a>00047             , std::string <span class="keyword">const</span>& close
+<a name="l00048"></a>00048             , std::string <span class="keyword">const</span>& psep
+<a name="l00049"></a>00049             , std::string <span class="keyword">const</span>& lopen
+<a name="l00050"></a>00050             , std::string <span class="keyword">const</span>& lclose
+<a name="l00051"></a>00051             , std::string <span class="keyword">const</span>& lsep
+<a name="l00052"></a>00052             )
+<a name="l00053"></a>00053         : coordinate_separator(sep)
+<a name="l00054"></a>00054         , point_open(open)
+<a name="l00055"></a>00055         , point_close(close)
+<a name="l00056"></a>00056         , point_separator(psep)
+<a name="l00057"></a>00057         , list_open(lopen)
+<a name="l00058"></a>00058         , list_close(lclose)
+<a name="l00059"></a>00059         , list_separator(lsep)
+<a name="l00060"></a>00060     {}
+<a name="l00061"></a>00061 };
+<a name="l00062"></a>00062 
+<a name="l00066"></a>00066 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>, std::<span class="keywordtype">size_t</span> Dimension, std::<span class="keywordtype">size_t</span> Count>
+<a name="l00067"></a>00067 <span class="keyword">struct </span>stream_coordinate
+<a name="l00068"></a>00068 {
+<a name="l00069"></a>00069     <span class="keyword">template</span> <<span class="keyword">typename</span> Char, <span class="keyword">typename</span> Traits>
+<a name="l00070"></a>00070     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> apply(std::basic_ostream<Char, Traits>& os,
+<a name="l00071"></a>00071             Point <span class="keyword">const</span>& point,
+<a name="l00072"></a>00072             dsv_settings <span class="keyword">const</span>& settings)
+<a name="l00073"></a>00073     {
+<a name="l00074"></a>00074         os << (Dimension > 0 ? settings.coordinate_separator : <span class="stringliteral">""</span>)
+<a name="l00075"></a>00075             << get<Dimension>(point);
 <a name="l00076"></a>00076 
-<a name="l00077"></a>00077 <span class="keyword">template</span> <<span class="keyword">typename</span> P, <span class="keywordtype">int</span> Count>
-<a name="l00078"></a>00078 <span class="keyword">struct </span>stream_coordinate<P, Count, Count>
-<a name="l00079"></a>00079 {
-<a name="l00080"></a>00080     <span class="keyword">template</span> <<span class="keyword">typename</span> Char, <span class="keyword">typename</span> Traits>
-<a name="l00081"></a>00081     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> apply(std::basic_ostream<Char, Traits>&, P <span class="keyword">const</span>&,
-<a name="l00082"></a>00082             dsv_settings <span class="keyword">const</span>& settings)
-<a name="l00083"></a>00083     {}
-<a name="l00084"></a>00084 };
-<a name="l00085"></a>00085 
-<a name="l00086"></a>00086 
-<a name="l00087"></a>00087 <span class="keyword">template</span> <<span class="keyword">typename</span> P, <span class="keywordtype">int</span> Index, <span class="keywordtype">int</span> Dimension, <span class="keywordtype">int</span> Count>
-<a name="l00088"></a>00088 <span class="keyword">struct </span>stream_box_corner
-<a name="l00089"></a>00089 {
-<a name="l00090"></a>00090     <span class="keyword">template</span> <<span class="keyword">typename</span> Char, <span class="keyword">typename</span> Traits>
-<a name="l00091"></a>00091     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> apply(std::basic_ostream<Char, Traits>& os, P <span class="keyword">const</span>& p,
-<a name="l00092"></a>00092             dsv_settings <span class="keyword">const</span>& settings)
-<a name="l00093"></a>00093     {
-<a name="l00094"></a>00094         os << (Dimension > 0 ? settings.coordinate_separator : <span class="stringliteral">""</span>) 
-<a name="l00095"></a>00095             << get<Index, Dimension>(p);
-<a name="l00096"></a>00096         stream_box_corner<P, Index, Dimension + 1, Count>::apply(os, p, settings);
-<a name="l00097"></a>00097     }
-<a name="l00098"></a>00098 };
-<a name="l00099"></a>00099 
-<a name="l00100"></a>00100 <span class="keyword">template</span> <<span class="keyword">typename</span> P, <span class="keywordtype">int</span> Index, <span class="keywordtype">int</span> Count>
-<a name="l00101"></a>00101 <span class="keyword">struct </span>stream_box_corner<P, Index, Count, Count>
-<a name="l00102"></a>00102 {
-<a name="l00103"></a>00103     <span class="keyword">template</span> <<span class="keyword">typename</span> Char, <span class="keyword">typename</span> Traits>
-<a name="l00104"></a>00104     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> apply(std::basic_ostream<Char, Traits>&, P <span class="keyword">const</span>&,
-<a name="l00105"></a>00105             dsv_settings <span class="keyword">const</span>& settings)
-<a name="l00106"></a>00106     {}
-<a name="l00107"></a>00107 };
-<a name="l00108"></a>00108 
-<a name="l00109"></a>00109 
-<a name="l00110"></a>00110 
-<a name="l00111"></a>00111 
-<a name="l00112"></a>00112 
-<a name="l00116"></a>00116 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>>
-<a name="l00117"></a>00117 <span class="keyword">struct </span>dsv_point
-<a name="l00118"></a>00118 {
-<a name="l00119"></a>00119     <span class="keyword">template</span> <<span class="keyword">typename</span> Char, <span class="keyword">typename</span> Traits>
-<a name="l00120"></a>00120     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> apply(std::basic_ostream<Char, Traits>& os, Point <span class="keyword">const</span>& p,
-<a name="l00121"></a>00121             dsv_settings <span class="keyword">const</span>& settings)
-<a name="l00122"></a>00122     {
-<a name="l00123"></a>00123         os << settings.point_open;
-<a name="l00124"></a>00124         stream_coordinate<Point, 0, dimension<Point>::type::value>::apply(os, p, settings);
-<a name="l00125"></a>00125         os << settings.point_close;
-<a name="l00126"></a>00126     }
-<a name="l00127"></a>00127 
-<a name="l00128"></a>00128     <span class="keyword">private</span>:
-<a name="l00129"></a>00129         BOOST_CONCEPT_ASSERT( (concept::ConstPoint<Point>) );
-<a name="l00130"></a>00130 };
+<a name="l00077"></a>00077         stream_coordinate
+<a name="l00078"></a>00078             <
+<a name="l00079"></a>00079                 Point, Dimension + 1, Count
+<a name="l00080"></a>00080             >::apply(os, point, settings);
+<a name="l00081"></a>00081     }
+<a name="l00082"></a>00082 };
+<a name="l00083"></a>00083 
+<a name="l00084"></a>00084 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>, std::<span class="keywordtype">size_t</span> Count>
+<a name="l00085"></a>00085 <span class="keyword">struct </span>stream_coordinate<Point, Count, Count>
+<a name="l00086"></a>00086 {
+<a name="l00087"></a>00087     <span class="keyword">template</span> <<span class="keyword">typename</span> Char, <span class="keyword">typename</span> Traits>
+<a name="l00088"></a>00088     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> apply(std::basic_ostream<Char, Traits>&,
+<a name="l00089"></a>00089             Point <span class="keyword">const</span>&,
+<a name="l00090"></a>00090             dsv_settings <span class="keyword">const</span>& settings)
+<a name="l00091"></a>00091     {}
+<a name="l00092"></a>00092 };
+<a name="l00093"></a>00093 
+<a name="l00094"></a>00094 
+<a name="l00098"></a>00098 <span class="keyword">template</span>
+<a name="l00099"></a>00099 <
+<a name="l00100"></a>00100     <span class="keyword">typename</span> Geometry,
+<a name="l00101"></a>00101     std::size_t Index,
+<a name="l00102"></a>00102     std::size_t Dimension,
+<a name="l00103"></a>00103     std::size_t Count
+<a name="l00104"></a>00104 >
+<a name="l00105"></a>00105 <span class="keyword">struct </span>stream_indexed
+<a name="l00106"></a>00106 {
+<a name="l00107"></a>00107     <span class="keyword">template</span> <<span class="keyword">typename</span> Char, <span class="keyword">typename</span> Traits>
+<a name="l00108"></a>00108     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> apply(std::basic_ostream<Char, Traits>& os,
+<a name="l00109"></a>00109             Geometry <span class="keyword">const</span>& geometry,
+<a name="l00110"></a>00110             dsv_settings <span class="keyword">const</span>& settings)
+<a name="l00111"></a>00111     {
+<a name="l00112"></a>00112         os << (Dimension > 0 ? settings.coordinate_separator : <span class="stringliteral">""</span>)
+<a name="l00113"></a>00113             << get<Index, Dimension>(geometry);
+<a name="l00114"></a>00114         stream_indexed
+<a name="l00115"></a>00115             <
+<a name="l00116"></a>00116                 Geometry, Index, Dimension + 1, Count
+<a name="l00117"></a>00117             >::apply(os, geometry, settings);
+<a name="l00118"></a>00118     }
+<a name="l00119"></a>00119 };
+<a name="l00120"></a>00120 
+<a name="l00121"></a>00121 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry, std::<span class="keywordtype">size_t</span> Index, std::<span class="keywordtype">size_t</span> Count>
+<a name="l00122"></a>00122 <span class="keyword">struct </span>stream_indexed<Geometry, Index, Count, Count>
+<a name="l00123"></a>00123 {
+<a name="l00124"></a>00124     <span class="keyword">template</span> <<span class="keyword">typename</span> Char, <span class="keyword">typename</span> Traits>
+<a name="l00125"></a>00125     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> apply(std::basic_ostream<Char, Traits>&, Geometry <span class="keyword">const</span>&,
+<a name="l00126"></a>00126             dsv_settings <span class="keyword">const</span>& settings)
+<a name="l00127"></a>00127     {}
+<a name="l00128"></a>00128 };
+<a name="l00129"></a>00129 
+<a name="l00130"></a>00130 
 <a name="l00131"></a>00131 
-<a name="l00136"></a>00136 <span class="keyword">template</span> <<span class="keyword">typename</span> Range>
-<a name="l00137"></a>00137 <span class="keyword">struct </span>dsv_range
-<a name="l00138"></a>00138 {
-<a name="l00139"></a>00139     <span class="keyword">template</span> <<span class="keyword">typename</span> Char, <span class="keyword">typename</span> Traits>
-<a name="l00140"></a>00140     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> apply(std::basic_ostream<Char, Traits>& os,
-<a name="l00141"></a>00141                 Range <span class="keyword">const</span>& range,
-<a name="l00142"></a>00142                 dsv_settings <span class="keyword">const</span>& settings)
-<a name="l00143"></a>00143     {
-<a name="l00144"></a>00144         <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::range_const_iterator<Range>::type iterator_type;
-<a name="l00145"></a>00145 
-<a name="l00146"></a>00146         <span class="keywordtype">bool</span> first = <span class="keyword">true</span>;
-<a name="l00147"></a>00147 
-<a name="l00148"></a>00148         os << settings.list_open;
+<a name="l00132"></a>00132 
+<a name="l00133"></a>00133 
+<a name="l00137"></a>00137 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>>
+<a name="l00138"></a>00138 <span class="keyword">struct </span>dsv_point
+<a name="l00139"></a>00139 {
+<a name="l00140"></a>00140     <span class="keyword">template</span> <<span class="keyword">typename</span> Char, <span class="keyword">typename</span> Traits>
+<a name="l00141"></a>00141     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> apply(std::basic_ostream<Char, Traits>& os,
+<a name="l00142"></a>00142             Point <span class="keyword">const</span>& p,
+<a name="l00143"></a>00143             dsv_settings <span class="keyword">const</span>& settings)
+<a name="l00144"></a>00144     {
+<a name="l00145"></a>00145         os << settings.point_open;
+<a name="l00146"></a>00146         stream_coordinate<Point, 0, dimension<Point>::type::value>::apply(os, p, settings);
+<a name="l00147"></a>00147         os << settings.point_close;
+<a name="l00148"></a>00148     }
 <a name="l00149"></a>00149 
-<a name="l00150"></a>00150         <span class="comment">// TODO: check EMPTY here</span>
-<a name="l00151"></a>00151 
-<a name="l00152"></a>00152         <span class="keywordflow">for</span> (iterator_type it = boost::begin(range);
-<a name="l00153"></a>00153             it != boost::end(range);
-<a name="l00154"></a>00154             ++it)
-<a name="l00155"></a>00155         {
-<a name="l00156"></a>00156             os << (first ? <span class="stringliteral">""</span> : settings.point_separator)
-<a name="l00157"></a>00157                 << settings.point_open;
-<a name="l00158"></a>00158 
-<a name="l00159"></a>00159             stream_coordinate
-<a name="l00160"></a>00160                 <
-<a name="l00161"></a>00161                     point, 0, <a class="code" href="classcore__dispatch_1_1dimension.html">dimension<point>::type::value</a>
-<a name="l00162"></a>00162                 >::apply(os, *it, settings);
-<a name="l00163"></a>00163             os << settings.point_close;
-<a name="l00164"></a>00164 
-<a name="l00165"></a>00165             first = <span class="keyword">false</span>;
-<a name="l00166"></a>00166         }
+<a name="l00150"></a>00150     <span class="keyword">private</span>:
+<a name="l00151"></a>00151         BOOST_CONCEPT_ASSERT( (concept::ConstPoint<Point>) );
+<a name="l00152"></a>00152 };
+<a name="l00153"></a>00153 
+<a name="l00158"></a>00158 <span class="keyword">template</span> <<span class="keyword">typename</span> Range>
+<a name="l00159"></a>00159 <span class="keyword">struct </span>dsv_range
+<a name="l00160"></a>00160 {
+<a name="l00161"></a>00161     <span class="keyword">template</span> <<span class="keyword">typename</span> Char, <span class="keyword">typename</span> Traits>
+<a name="l00162"></a>00162     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> apply(std::basic_ostream<Char, Traits>& os,
+<a name="l00163"></a>00163             Range <span class="keyword">const</span>& range,
+<a name="l00164"></a>00164             dsv_settings <span class="keyword">const</span>& settings)
+<a name="l00165"></a>00165     {
+<a name="l00166"></a>00166         <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::range_const_iterator<Range>::type iterator_type;
 <a name="l00167"></a>00167 
-<a name="l00168"></a>00168         os << settings.list_close;
-<a name="l00169"></a>00169     }
-<a name="l00170"></a>00170 
-<a name="l00171"></a>00171     <span class="keyword">private</span>:
-<a name="l00172"></a>00172         <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::range_value<Range>::type point;
-<a name="l00173"></a>00173         BOOST_CONCEPT_ASSERT( (concept::ConstPoint<point>) );
-<a name="l00174"></a>00174 };
-<a name="l00175"></a>00175 
-<a name="l00185"></a>00185 <span class="keyword">template</span> <<span class="keyword">typename</span> Polygon>
-<a name="l00186"></a>00186 <span class="keyword">struct </span>dsv_poly
-<a name="l00187"></a>00187 {
-<a name="l00188"></a>00188     <span class="keyword">template</span> <<span class="keyword">typename</span> Char, <span class="keyword">typename</span> Traits>
-<a name="l00189"></a>00189     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> apply(std::basic_ostream<Char, Traits>& os,
-<a name="l00190"></a>00190                 Polygon <span class="keyword">const</span>& poly,
-<a name="l00191"></a>00191                 dsv_settings <span class="keyword">const</span>& settings)
-<a name="l00192"></a>00192     {
-<a name="l00193"></a>00193         <span class="keyword">typedef</span> <span class="keyword">typename</span> ring_type<Polygon>::type ring;
-<a name="l00194"></a>00194         <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::range_const_iterator<
-<a name="l00195"></a>00195                     <span class="keyword">typename</span> interior_type<Polygon>::type>::type iterator;
-<a name="l00196"></a>00196 
-<a name="l00197"></a>00197         os << settings.list_open;
-<a name="l00198"></a>00198 
-<a name="l00199"></a>00199         dsv_range<ring>::apply(os, <a class="code" href="group__access.html#gf92470d0612da7f0e118d296e7fcfe01" title="Function to get the exterior_ring ring of a polygon.">exterior_ring</a>(poly), settings);
-<a name="l00200"></a>00200         <span class="keywordflow">for</span> (iterator it = boost::begin(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly));
-<a name="l00201"></a>00201             it != boost::end(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly));
-<a name="l00202"></a>00202             ++it)
-<a name="l00203"></a>00203         {
-<a name="l00204"></a>00204             os << settings.list_separator;
-<a name="l00205"></a>00205             dsv_range<ring>::apply(os, *it, settings);
-<a name="l00206"></a>00206         }
-<a name="l00207"></a>00207         os << settings.list_close;
-<a name="l00208"></a>00208     }
-<a name="l00209"></a>00209 
-<a name="l00210"></a>00210     <span class="keyword">private</span>:
-<a name="l00211"></a>00211         BOOST_CONCEPT_ASSERT( (concept::ConstPoint<<span class="keyword">typename</span> point_type<Polygon>::type>) );
-<a name="l00212"></a>00212 };
-<a name="l00213"></a>00213 
-<a name="l00214"></a>00214 <span class="keyword">template</span> <<span class="keyword">typename</span> Box, std::<span class="keywordtype">size_t</span> Index>
-<a name="l00215"></a>00215 <span class="keyword">struct </span>dsv_box_corner
-<a name="l00216"></a>00216 {
-<a name="l00217"></a>00217     <span class="keyword">typedef</span> <span class="keyword">typename</span> point_type<Box>::type point_type;
-<a name="l00218"></a>00218 
-<a name="l00219"></a>00219     <span class="keyword">template</span> <<span class="keyword">typename</span> Char, <span class="keyword">typename</span> Traits>
-<a name="l00220"></a>00220     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> apply(std::basic_ostream<Char, Traits>& os,
-<a name="l00221"></a>00221             Box <span class="keyword">const</span>& box,
-<a name="l00222"></a>00222             dsv_settings <span class="keyword">const</span>& settings)
-<a name="l00223"></a>00223     {
-<a name="l00224"></a>00224         os << settings.point_open;
-<a name="l00225"></a>00225         stream_box_corner
-<a name="l00226"></a>00226             <
-<a name="l00227"></a>00227                 Box, Index, 0, <a class="code" href="classcore__dispatch_1_1dimension.html">dimension<Box>::type::value</a>
-<a name="l00228"></a>00228             >::apply(os, box, settings);
-<a name="l00229"></a>00229         os << settings.point_close;
-<a name="l00230"></a>00230     }
-<a name="l00231"></a>00231 };
-<a name="l00232"></a>00232 
+<a name="l00168"></a>00168         <span class="keywordtype">bool</span> first = <span class="keyword">true</span>;
+<a name="l00169"></a>00169 
+<a name="l00170"></a>00170         os << settings.list_open;
+<a name="l00171"></a>00171 
+<a name="l00172"></a>00172         <span class="comment">// TODO: check EMPTY here</span>
+<a name="l00173"></a>00173 
+<a name="l00174"></a>00174         <span class="keywordflow">for</span> (iterator_type it = boost::begin(range);
+<a name="l00175"></a>00175             it != boost::end(range);
+<a name="l00176"></a>00176             ++it)
+<a name="l00177"></a>00177         {
+<a name="l00178"></a>00178             os << (first ? <span class="stringliteral">""</span> : settings.point_separator)
+<a name="l00179"></a>00179                 << settings.point_open;
+<a name="l00180"></a>00180 
+<a name="l00181"></a>00181             stream_coordinate
+<a name="l00182"></a>00182                 <
+<a name="l00183"></a>00183                     point, 0, <a class="code" href="classcore__dispatch_1_1dimension.html">dimension<point>::type::value</a>
+<a name="l00184"></a>00184                 >::apply(os, *it, settings);
+<a name="l00185"></a>00185             os << settings.point_close;
+<a name="l00186"></a>00186 
+<a name="l00187"></a>00187             first = <span class="keyword">false</span>;
+<a name="l00188"></a>00188         }
+<a name="l00189"></a>00189 
+<a name="l00190"></a>00190         os << settings.list_close;
+<a name="l00191"></a>00191     }
+<a name="l00192"></a>00192 
+<a name="l00193"></a>00193     <span class="keyword">private</span>:
+<a name="l00194"></a>00194         <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::range_value<Range>::type point;
+<a name="l00195"></a>00195         BOOST_CONCEPT_ASSERT( (concept::ConstPoint<point>) );
+<a name="l00196"></a>00196 };
+<a name="l00197"></a>00197 
+<a name="l00207"></a>00207 <span class="keyword">template</span> <<span class="keyword">typename</span> Polygon>
+<a name="l00208"></a>00208 <span class="keyword">struct </span>dsv_poly
+<a name="l00209"></a>00209 {
+<a name="l00210"></a>00210     <span class="keyword">template</span> <<span class="keyword">typename</span> Char, <span class="keyword">typename</span> Traits>
+<a name="l00211"></a>00211     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> apply(std::basic_ostream<Char, Traits>& os,
+<a name="l00212"></a>00212                 Polygon <span class="keyword">const</span>& poly,
+<a name="l00213"></a>00213                 dsv_settings <span class="keyword">const</span>& settings)
+<a name="l00214"></a>00214     {
+<a name="l00215"></a>00215         <span class="keyword">typedef</span> <span class="keyword">typename</span> ring_type<Polygon>::type ring;
+<a name="l00216"></a>00216         <span class="keyword">typedef</span> <span class="keyword">typename</span> boost::range_const_iterator
+<a name="l00217"></a>00217             <
+<a name="l00218"></a>00218                 <span class="keyword">typename</span> interior_type<Polygon>::type
+<a name="l00219"></a>00219             >::type iterator_type;
+<a name="l00220"></a>00220 
+<a name="l00221"></a>00221         os << settings.list_open;
+<a name="l00222"></a>00222 
+<a name="l00223"></a>00223         dsv_range<ring>::apply(os, <a class="code" href="group__access.html#gf92470d0612da7f0e118d296e7fcfe01" title="Function to get the exterior_ring ring of a polygon.">exterior_ring</a>(poly), settings);
+<a name="l00224"></a>00224         <span class="keywordflow">for</span> (iterator_type it = boost::begin(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly));
+<a name="l00225"></a>00225             it != boost::end(<a class="code" href="group__access.html#gfb1abbb52eaeb5391c51fb6c209ab758" title="Function to get the interior rings of a polygon (non const version).">interior_rings</a>(poly));
+<a name="l00226"></a>00226             ++it)
+<a name="l00227"></a>00227         {
+<a name="l00228"></a>00228             os << settings.list_separator;
+<a name="l00229"></a>00229             dsv_range<ring>::apply(os, *it, settings);
+<a name="l00230"></a>00230         }
+<a name="l00231"></a>00231         os << settings.list_close;
+<a name="l00232"></a>00232     }
 <a name="l00233"></a>00233 
-<a name="l00234"></a>00234 <span class="keyword">template</span> <<span class="keyword">typename</span> Box>
-<a name="l00235"></a>00235 <span class="keyword">struct </span>dsv_box
-<a name="l00236"></a>00236 {
-<a name="l00237"></a>00237     <span class="keyword">typedef</span> <span class="keyword">typename</span> point_type<Box>::type point_type;
-<a name="l00238"></a>00238 
-<a name="l00239"></a>00239     <span class="keyword">template</span> <<span class="keyword">typename</span> Char, <span class="keyword">typename</span> Traits>
-<a name="l00240"></a>00240     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> apply(std::basic_ostream<Char, Traits>& os,
-<a name="l00241"></a>00241             Box <span class="keyword">const</span>& box,
-<a name="l00242"></a>00242             dsv_settings <span class="keyword">const</span>& settings)
-<a name="l00243"></a>00243     {
-<a name="l00244"></a>00244         os << settings.list_open;
-<a name="l00245"></a>00245         dsv_box_corner<Box, 0>::apply(os, box, settings);
-<a name="l00246"></a>00246         os << settings.point_separator;
-<a name="l00247"></a>00247         dsv_box_corner<Box, 1>::apply(os, box, settings);
-<a name="l00248"></a>00248         os << settings.list_close;
-<a name="l00249"></a>00249     }
-<a name="l00250"></a>00250 };
-<a name="l00251"></a>00251 
-<a name="l00252"></a>00252 }} <span class="comment">// namespace detail::dsv</span>
-<a name="l00253"></a>00253 <span class="preprocessor">#endif // DOXYGEN_NO_DETAIL</span>
-<a name="l00254"></a>00254 <span class="preprocessor"></span>
-<a name="l00255"></a>00255 
-<a name="l00256"></a>00256 <span class="preprocessor">#ifndef DOXYGEN_NO_DISPATCH</span>
-<a name="l00257"></a>00257 <span class="preprocessor"></span><span class="keyword">namespace </span>dispatch {
-<a name="l00258"></a>00258 
-<a name="l00259"></a>00259 <span class="keyword">template</span> <<span class="keyword">typename</span> Tag, <span class="keywordtype">bool</span> IsMulti, <span class="keyword">typename</span> Geometry>
-<a name="l00260"></a>00260 <span class="keyword">struct </span><a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a> {};
-<a name="l00261"></a>00261 
+<a name="l00234"></a>00234     <span class="keyword">private</span>:
+<a name="l00235"></a>00235         BOOST_CONCEPT_ASSERT( (concept::ConstPoint<<span class="keyword">typename</span> point_type<Polygon>::type>) );
+<a name="l00236"></a>00236 };
+<a name="l00237"></a>00237 
+<a name="l00238"></a>00238 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry, std::<span class="keywordtype">size_t</span> Index>
+<a name="l00239"></a>00239 <span class="keyword">struct </span>dsv_per_index
+<a name="l00240"></a>00240 {
+<a name="l00241"></a>00241     <span class="keyword">typedef</span> <span class="keyword">typename</span> point_type<Geometry>::type point_type;
+<a name="l00242"></a>00242 
+<a name="l00243"></a>00243     <span class="keyword">template</span> <<span class="keyword">typename</span> Char, <span class="keyword">typename</span> Traits>
+<a name="l00244"></a>00244     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> apply(std::basic_ostream<Char, Traits>& os,
+<a name="l00245"></a>00245             Geometry <span class="keyword">const</span>& geometry,
+<a name="l00246"></a>00246             dsv_settings <span class="keyword">const</span>& settings)
+<a name="l00247"></a>00247     {
+<a name="l00248"></a>00248         os << settings.point_open;
+<a name="l00249"></a>00249         stream_indexed
+<a name="l00250"></a>00250             <
+<a name="l00251"></a>00251                 Geometry, Index, 0, <a class="code" href="classcore__dispatch_1_1dimension.html">dimension<Geometry>::type::value</a>
+<a name="l00252"></a>00252             >::apply(os, geometry, settings);
+<a name="l00253"></a>00253         os << settings.point_close;
+<a name="l00254"></a>00254     }
+<a name="l00255"></a>00255 };
+<a name="l00256"></a>00256 
+<a name="l00257"></a>00257 
+<a name="l00258"></a>00258 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry>
+<a name="l00259"></a>00259 <span class="keyword">struct </span>dsv_indexed
+<a name="l00260"></a>00260 {
+<a name="l00261"></a>00261     <span class="keyword">typedef</span> <span class="keyword">typename</span> point_type<Geometry>::type point_type;
 <a name="l00262"></a>00262 
-<a name="l00263"></a>00263 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>>
-<a name="l00264"></a>00264 <span class="keyword">struct </span><a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a><point_tag, false, Point>
-<a name="l00265"></a>00265     : detail::<a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a>::dsv_point<Point>
-<a name="l00266"></a>00266 {};
-<a name="l00267"></a>00267 
-<a name="l00268"></a>00268 
-<a name="l00269"></a>00269 <span class="keyword">template</span> <<span class="keyword">typename</span> Line<span class="keywordtype">string</span>>
-<a name="l00270"></a>00270 <span class="keyword">struct </span><a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a><linestring_tag, false, Linestring>
-<a name="l00271"></a>00271     : detail::<a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a>::dsv_range<Linestring>
-<a name="l00272"></a>00272 {};
-<a name="l00273"></a>00273 
-<a name="l00274"></a>00274 
-<a name="l00278"></a>00278 <span class="keyword">template</span> <<span class="keyword">typename</span> Box>
-<a name="l00279"></a>00279 <span class="keyword">struct </span><a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a><box_tag, false, Box>
-<a name="l00280"></a>00280     : detail::<a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a>::dsv_box<Box>
-<a name="l00281"></a>00281 {};
+<a name="l00263"></a>00263     <span class="keyword">template</span> <<span class="keyword">typename</span> Char, <span class="keyword">typename</span> Traits>
+<a name="l00264"></a>00264     <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> apply(std::basic_ostream<Char, Traits>& os,
+<a name="l00265"></a>00265             Geometry <span class="keyword">const</span>& geometry,
+<a name="l00266"></a>00266             dsv_settings <span class="keyword">const</span>& settings)
+<a name="l00267"></a>00267     {
+<a name="l00268"></a>00268         os << settings.list_open;
+<a name="l00269"></a>00269         dsv_per_index<Geometry, 0>::apply(os, geometry, settings);
+<a name="l00270"></a>00270         os << settings.point_separator;
+<a name="l00271"></a>00271         dsv_per_index<Geometry, 1>::apply(os, geometry, settings);
+<a name="l00272"></a>00272         os << settings.list_close;
+<a name="l00273"></a>00273     }
+<a name="l00274"></a>00274 };
+<a name="l00275"></a>00275 
+<a name="l00276"></a>00276 }} <span class="comment">// namespace detail::dsv</span>
+<a name="l00277"></a>00277 <span class="preprocessor">#endif // DOXYGEN_NO_DETAIL</span>
+<a name="l00278"></a>00278 <span class="preprocessor"></span>
+<a name="l00279"></a>00279 
+<a name="l00280"></a>00280 <span class="preprocessor">#ifndef DOXYGEN_NO_DISPATCH</span>
+<a name="l00281"></a>00281 <span class="preprocessor"></span><span class="keyword">namespace </span>dispatch {
 <a name="l00282"></a>00282 
-<a name="l00283"></a>00283 
-<a name="l00287"></a>00287 <span class="keyword">template</span> <<span class="keyword">typename</span> Ring>
-<a name="l00288"></a>00288 <span class="keyword">struct </span><a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a><ring_tag, false, Ring>
-<a name="l00289"></a>00289     : detail::<a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a>::dsv_range<Ring>
+<a name="l00283"></a>00283 <span class="keyword">template</span> <<span class="keyword">typename</span> Tag, <span class="keywordtype">bool</span> IsMulti, <span class="keyword">typename</span> Geometry>
+<a name="l00284"></a>00284 <span class="keyword">struct </span><a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a> {};
+<a name="l00285"></a>00285 
+<a name="l00286"></a>00286 
+<a name="l00287"></a>00287 <span class="keyword">template</span> <<span class="keyword">typename</span> Po<span class="keywordtype">int</span>>
+<a name="l00288"></a>00288 <span class="keyword">struct </span><a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a><point_tag, false, Point>
+<a name="l00289"></a>00289     : detail::<a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a>::dsv_point<Point>
 <a name="l00290"></a>00290 {};
 <a name="l00291"></a>00291 
 <a name="l00292"></a>00292 
-<a name="l00296"></a>00296 <span class="keyword">template</span> <<span class="keyword">typename</span> Polygon>
-<a name="l00297"></a>00297 <span class="keyword">struct </span><a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a><polygon_tag, false, Polygon>
-<a name="l00298"></a>00298     : detail::<a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a>::dsv_poly<Polygon>
-<a name="l00299"></a>00299 {};
-<a name="l00300"></a>00300 
-<a name="l00301"></a>00301 
-<a name="l00302"></a>00302 } <span class="comment">// namespace dispatch</span>
-<a name="l00303"></a>00303 <span class="preprocessor">#endif // DOXYGEN_NO_DISPATCH</span>
-<a name="l00304"></a>00304 <span class="preprocessor"></span>
-<a name="l00305"></a>00305 
-<a name="l00319"></a>00319 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry>
-<a name="l00320"></a><a class="code" href="classggl_1_1dsv__manipulator.html">00320</a> <span class="keyword">class </span><a class="code" href="classggl_1_1dsv__manipulator.html" title="Generic geometry template manipulator class, takes corresponding output class from...">dsv_manipulator</a>
-<a name="l00321"></a>00321 {
-<a name="l00322"></a>00322 <span class="keyword">public</span>:
-<a name="l00323"></a>00323 
-<a name="l00324"></a><a class="code" href="classggl_1_1dsv__manipulator.html#5bbe82845f3e20b44d2b75cc8faebf43">00324</a>     <span class="keyword">inline</span> <a class="code" href="classggl_1_1dsv__manipulator.html#5bbe82845f3e20b44d2b75cc8faebf43">dsv_manipulator</a>(Geometry <span class="keyword">const</span>& g,
-<a name="l00325"></a>00325             detail::dsv::dsv_settings <span class="keyword">const</span>& settings)
-<a name="l00326"></a>00326         : m_geometry(g)
-<a name="l00327"></a>00327         , m_settings(settings)
-<a name="l00328"></a>00328     {}
-<a name="l00329"></a>00329 
-<a name="l00330"></a>00330     <span class="keyword">template</span> <<span class="keyword">typename</span> Char, <span class="keyword">typename</span> Traits>
-<a name="l00331"></a><a class="code" href="classggl_1_1dsv__manipulator.html#5aa709742f33df7007f70baffcfc0d48">00331</a>     <span class="keyword">inline</span> <span class="keyword">friend</span> std::basic_ostream<Char, Traits>& <a class="code" href="classggl_1_1dsv__manipulator.html#5aa709742f33df7007f70baffcfc0d48">operator<<</a>(
-<a name="l00332"></a>00332             std::basic_ostream<Char, Traits>& os,
-<a name="l00333"></a>00333             <a class="code" href="classggl_1_1dsv__manipulator.html" title="Generic geometry template manipulator class, takes corresponding output class from...">dsv_manipulator</a> <span class="keyword">const</span>& m)
-<a name="l00334"></a>00334     {
-<a name="l00335"></a>00335         <a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dispatch::dsv</a>
-<a name="l00336"></a>00336             <
-<a name="l00337"></a>00337                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<Geometry>::type</a>,
-<a name="l00338"></a>00338                 <a class="code" href="structggl_1_1is__multi.html" title="Meta-function defining &quot;true&quot; for multi geometries (multi_point, etc).">is_multi<Geometry>::type::value</a>,
-<a name="l00339"></a>00339                 Geometry
-<a name="l00340"></a>00340             >::apply(os, m.m_geometry, m.m_settings);
-<a name="l00341"></a>00341         os.flush();
-<a name="l00342"></a>00342         <span class="keywordflow">return</span> os;
-<a name="l00343"></a>00343     }
-<a name="l00344"></a>00344 
-<a name="l00345"></a>00345 <span class="keyword">private</span>:
-<a name="l00346"></a>00346     Geometry <span class="keyword">const</span>& m_geometry;
-<a name="l00347"></a>00347     detail::dsv::dsv_settings m_settings;
-<a name="l00348"></a>00348 };
+<a name="l00293"></a>00293 <span class="keyword">template</span> <<span class="keyword">typename</span> Line<span class="keywordtype">string</span>>
+<a name="l00294"></a>00294 <span class="keyword">struct </span><a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a><linestring_tag, false, Linestring>
+<a name="l00295"></a>00295     : detail::<a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a>::dsv_range<Linestring>
+<a name="l00296"></a>00296 {};
+<a name="l00297"></a>00297 
+<a name="l00298"></a>00298 
+<a name="l00299"></a>00299 <span class="keyword">template</span> <<span class="keyword">typename</span> Box>
+<a name="l00300"></a>00300 <span class="keyword">struct </span><a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a><box_tag, false, Box>
+<a name="l00301"></a>00301     : detail::<a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a>::dsv_indexed<Box>
+<a name="l00302"></a>00302 {};
+<a name="l00303"></a>00303 
+<a name="l00304"></a>00304 <span class="keyword">template</span> <<span class="keyword">typename</span> Segment>
+<a name="l00305"></a>00305 <span class="keyword">struct </span><a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a><segment_tag, false, Segment>
+<a name="l00306"></a>00306     : detail::<a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a>::dsv_indexed<Segment>
+<a name="l00307"></a>00307 {};
+<a name="l00308"></a>00308 
+<a name="l00309"></a>00309 
+<a name="l00310"></a>00310 <span class="keyword">template</span> <<span class="keyword">typename</span> Ring>
+<a name="l00311"></a>00311 <span class="keyword">struct </span><a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a><ring_tag, false, Ring>
+<a name="l00312"></a>00312     : detail::<a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a>::dsv_range<Ring>
+<a name="l00313"></a>00313 {};
+<a name="l00314"></a>00314 
+<a name="l00315"></a>00315 
+<a name="l00316"></a>00316 <span class="keyword">template</span> <<span class="keyword">typename</span> Polygon>
+<a name="l00317"></a>00317 <span class="keyword">struct </span><a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a><polygon_tag, false, Polygon>
+<a name="l00318"></a>00318     : detail::<a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a>::dsv_poly<Polygon>
+<a name="l00319"></a>00319 {};
+<a name="l00320"></a>00320 
+<a name="l00321"></a>00321 
+<a name="l00322"></a>00322 } <span class="comment">// namespace dispatch</span>
+<a name="l00323"></a>00323 <span class="preprocessor">#endif // DOXYGEN_NO_DISPATCH</span>
+<a name="l00324"></a>00324 <span class="preprocessor"></span>
+<a name="l00325"></a>00325 
+<a name="l00339"></a>00339 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry>
+<a name="l00340"></a><a class="code" href="classggl_1_1dsv__manipulator.html">00340</a> <span class="keyword">class </span><a class="code" href="classggl_1_1dsv__manipulator.html" title="Generic geometry template manipulator class, takes corresponding output class from...">dsv_manipulator</a>
+<a name="l00341"></a>00341 {
+<a name="l00342"></a>00342 <span class="keyword">public</span>:
+<a name="l00343"></a>00343 
+<a name="l00344"></a><a class="code" href="classggl_1_1dsv__manipulator.html#5bbe82845f3e20b44d2b75cc8faebf43">00344</a>     <span class="keyword">inline</span> <a class="code" href="classggl_1_1dsv__manipulator.html#5bbe82845f3e20b44d2b75cc8faebf43">dsv_manipulator</a>(Geometry <span class="keyword">const</span>& g,
+<a name="l00345"></a>00345             detail::dsv::dsv_settings <span class="keyword">const</span>& settings)
+<a name="l00346"></a>00346         : m_geometry(g)
+<a name="l00347"></a>00347         , m_settings(settings)
+<a name="l00348"></a>00348     {}
 <a name="l00349"></a>00349 
-<a name="l00354"></a>00354 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry>
-<a name="l00355"></a><a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4">00355</a> <span class="keyword">inline</span> <a class="code" href="classggl_1_1dsv__manipulator.html" title="Generic geometry template manipulator class, takes corresponding output class from...">dsv_manipulator<Geometry></a> <a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a>(Geometry <span class="keyword">const</span>& geometry
-<a name="l00356"></a>00356     , std::string <span class="keyword">const</span>& coordinate_separator = <span class="stringliteral">", "</span>
-<a name="l00357"></a>00357     , std::string <span class="keyword">const</span>& point_open = <span class="stringliteral">"("</span>
-<a name="l00358"></a>00358     , std::string <span class="keyword">const</span>& point_close = <span class="stringliteral">")"</span>
-<a name="l00359"></a>00359     , std::string <span class="keyword">const</span>& point_separator = <span class="stringliteral">", "</span>
-<a name="l00360"></a>00360     , std::string <span class="keyword">const</span>& list_open = <span class="stringliteral">"("</span>
-<a name="l00361"></a>00361     , std::string <span class="keyword">const</span>& list_close = <span class="stringliteral">")"</span>
-<a name="l00362"></a>00362     , std::string <span class="keyword">const</span>& list_separator = <span class="stringliteral">", "</span>
-<a name="l00363"></a>00363     )
-<a name="l00364"></a>00364 {
-<a name="l00365"></a>00365     <span class="keywordflow">return</span> <a class="code" href="classggl_1_1dsv__manipulator.html" title="Generic geometry template manipulator class, takes corresponding output class from...">dsv_manipulator<Geometry></a>(geometry,
-<a name="l00366"></a>00366         detail::dsv::dsv_settings(coordinate_separator,
-<a name="l00367"></a>00367             point_open, point_close, point_separator,
-<a name="l00368"></a>00368             list_open, list_close, list_separator));
-<a name="l00369"></a>00369 }
-<a name="l00370"></a>00370 
-<a name="l00371"></a>00371 
-<a name="l00372"></a>00372 
-<a name="l00373"></a>00373 } <span class="comment">// namespace ggl</span>
-<a name="l00374"></a>00374 
-<a name="l00375"></a>00375 <span class="preprocessor">#endif // GGL_UTIL_WRITE_DSV_HPP</span>
+<a name="l00350"></a>00350     <span class="keyword">template</span> <<span class="keyword">typename</span> Char, <span class="keyword">typename</span> Traits>
+<a name="l00351"></a><a class="code" href="classggl_1_1dsv__manipulator.html#5aa709742f33df7007f70baffcfc0d48">00351</a>     <span class="keyword">inline</span> <span class="keyword">friend</span> std::basic_ostream<Char, Traits>& <a class="code" href="classggl_1_1dsv__manipulator.html#5aa709742f33df7007f70baffcfc0d48">operator<<</a>(
+<a name="l00352"></a>00352             std::basic_ostream<Char, Traits>& os,
+<a name="l00353"></a>00353             <a class="code" href="classggl_1_1dsv__manipulator.html" title="Generic geometry template manipulator class, takes corresponding output class from...">dsv_manipulator</a> <span class="keyword">const</span>& m)
+<a name="l00354"></a>00354     {
+<a name="l00355"></a>00355         <a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dispatch::dsv</a>
+<a name="l00356"></a>00356             <
+<a name="l00357"></a>00357                 <span class="keyword">typename</span> <a class="code" href="structggl_1_1geometry__not__recognized__tag.html" title="&quot;default&quot; tag">tag<Geometry>::type</a>,
+<a name="l00358"></a>00358                 <a class="code" href="structggl_1_1is__multi.html" title="Meta-function defining &quot;true&quot; for multi geometries (multi_point, etc).">is_multi<Geometry>::type::value</a>,
+<a name="l00359"></a>00359                 Geometry
+<a name="l00360"></a>00360             >::apply(os, m.m_geometry, m.m_settings);
+<a name="l00361"></a>00361         os.flush();
+<a name="l00362"></a>00362         <span class="keywordflow">return</span> os;
+<a name="l00363"></a>00363     }
+<a name="l00364"></a>00364 
+<a name="l00365"></a>00365 <span class="keyword">private</span>:
+<a name="l00366"></a>00366     Geometry <span class="keyword">const</span>& m_geometry;
+<a name="l00367"></a>00367     detail::dsv::dsv_settings m_settings;
+<a name="l00368"></a>00368 };
+<a name="l00369"></a>00369 
+<a name="l00374"></a>00374 <span class="keyword">template</span> <<span class="keyword">typename</span> Geometry>
+<a name="l00375"></a><a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4">00375</a> <span class="keyword">inline</span> <a class="code" href="classggl_1_1dsv__manipulator.html" title="Generic geometry template manipulator class, takes corresponding output class from...">dsv_manipulator<Geometry></a> <a class="code" href="namespaceggl.html#3399b7516122f515a1ea5ee5fdf49ce4" title="Main DSV-streaming function.">dsv</a>(Geometry <span class="keyword">const</span>& geometry
+<a name="l00376"></a>00376     , std::string <span class="keyword">const</span>& coordinate_separator = <span class="stringliteral">", "</span>
+<a name="l00377"></a>00377     , std::string <span class="keyword">const</span>& point_open = <span class="stringliteral">"("</span>
+<a name="l00378"></a>00378     , std::string <span class="keyword">const</span>& point_close = <span class="stringliteral">")"</span>
+<a name="l00379"></a>00379     , std::string <span class="keyword">const</span>& point_separator = <span class="stringliteral">", "</span>
+<a name="l00380"></a>00380     , std::string <span class="keyword">const</span>& list_open = <span class="stringliteral">"("</span>
+<a name="l00381"></a>00381     , std::string <span class="keyword">const</span>& list_close = <span class="stringliteral">")"</span>
+<a name="l00382"></a>00382     , std::string <span class="keyword">const</span>& list_separator = <span class="stringliteral">", "</span>
+<a name="l00383"></a>00383     )
+<a name="l00384"></a>00384 {
+<a name="l00385"></a>00385     <span class="keywordflow">return</span> <a class="code" href="classggl_1_1dsv__manipulator.html" title="Generic geometry template manipulator class, takes corresponding output class from...">dsv_manipulator<Geometry></a>(geometry,
+<a name="l00386"></a>00386         detail::dsv::dsv_settings(coordinate_separator,
+<a name="l00387"></a>00387             point_open, point_close, point_separator,
+<a name="l00388"></a>00388             list_open, list_close, list_separator));
+<a name="l00389"></a>00389 }
+<a name="l00390"></a>00390 
+<a name="l00391"></a>00391 
+<a name="l00392"></a>00392 
+<a name="l00393"></a>00393 } <span class="comment">// namespace ggl</span>
+<a name="l00394"></a>00394 
+<a name="l00395"></a>00395 <span class="preprocessor">#endif // GGL_UTIL_WRITE_DSV_HPP</span>
 </pre></div></div>
 <hr size="1">
 <table width="100%">
Modified: sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/x01__qt__example_8cpp-example.html
==============================================================================
--- sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/x01__qt__example_8cpp-example.html	(original)
+++ sandbox/ggl/formal_review_request/libs/ggl/doc/doxygen_output/html/x01__qt__example_8cpp-example.html	2009-10-22 11:28:27 EDT (Thu, 22 Oct 2009)
@@ -91,7 +91,7 @@
 
     <span class="comment">// GGL methods can be used, e.g. to calculate area </span>
     std::ostringstream out;
-    out << <span class="stringliteral">"GGL area: "</span> << <a name="a2"></a><a class="code" href="group__area.html#g3ebfdefe9c756498730b6d93b83338b3" title="Calculate area of a geometry.">ggl::area</a>(polygon) << std::endl;
+    out << <span class="stringliteral">"GGL area: "</span> << <a name="a2"></a><a class="code" href="group__area.html#gaffb471f2ef6dd4842563e533094fa0d" title="Calculate area of a geometry.">ggl::area</a>(polygon) << std::endl;
 
     <span class="comment">// Some functionality is defined in both Qt and GGL</span>
     QPointF p(20,20);