Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r72569 - in sandbox-branches/geometry/index_080_new: boost/geometry/extensions/index/rtree boost/geometry/extensions/index/rtree/linear boost/geometry/extensions/index/rtree/quadratic boost/geometry/extensions/index/rtree/rstar boost/geometry/extensions/index/rtree/visitors tests
From: adam.wulkiewicz_at_[hidden]
Date: 2011-06-13 12:34:52


Author: awulkiew
Date: 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
New Revision: 72569
URL: http://svn.boost.org/trac/boost/changeset/72569

Log:
Algo-related names changed to Options-related names. All options gathered in one file /rtree/options.hpp instead of defining them separately for all rtree variants in /rtree/[variant]/options.hpp.
Added:
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/options.hpp (contents, props changed)
Removed:
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/algo.hpp
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/linear/algo.hpp
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/quadratic/algo.hpp
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rstar/algo.hpp
Text files modified:
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/filters.hpp | 8 +-
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/linear/linear.hpp | 1
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/linear/redistribute_elements.hpp | 10 ++--
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/quadratic/quadratic.hpp | 1
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/quadratic/redistribute_elements.hpp | 10 ++--
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rstar/choose_next_node.hpp | 10 ++--
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rstar/insert.hpp | 82 ++++++++++++++++++++--------------------
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rstar/redistribute_elements.hpp | 10 ++--
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rstar/rstar.hpp | 1
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rtree.hpp | 24 +++++-----
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/are_boxes_ok.hpp | 16 +++---
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/are_levels_ok.hpp | 16 +++---
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/destroy.hpp | 8 +-
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/find.hpp | 10 ++--
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/gl_draw.hpp | 24 +++++-----
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/insert.hpp | 46 +++++++++++-----------
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/is_leaf.hpp | 8 +-
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/print.hpp | 22 +++++-----
   sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/remove.hpp | 14 +++---
   sandbox-branches/geometry/index_080_new/tests/additional_sizes_and_times.cpp | 2
   20 files changed, 160 insertions(+), 163 deletions(-)

Deleted: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/algo.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/algo.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
+++ (empty file)
@@ -1,45 +0,0 @@
-// Boost.Geometry (aka GGL, Generic Geometry Library)
-//
-// Boost.SpatialIndex - rtree variants algorithms
-//
-// Copyright 2011 Adam Wulkiewicz.
-// Use, modification and distribution is subject to the Boost Software License,
-// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
-// http://www.boost.org/LICENSE_1_0.txt)
-
-#ifndef BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_ALGO_HPP
-#define BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_ALGO_HPP
-
-namespace boost { namespace geometry { namespace index {
-
-struct default_tag {};
-struct analyze_area_tag {};
-
-namespace detail { namespace rtree {
-
-template <typename InsertTag, typename ChooseNextNodeTag, typename RedistributeTag, typename NodeTag>
-struct algo
-{
- typedef InsertTag insert_tag;
- typedef ChooseNextNodeTag choose_next_node_tag;
- typedef RedistributeTag redistribute_tag;
- typedef NodeTag node_tag;
-};
-
-template <typename Tag>
-struct algo_type
-{
- typedef void type;
-};
-
-template <typename InsertTag, typename ChooseNextNodeTag, typename RedistributeTag, typename NodeTag>
-struct algo_type< algo<InsertTag, ChooseNextNodeTag, RedistributeTag, NodeTag> >
-{
- typedef algo<InsertTag, ChooseNextNodeTag, RedistributeTag, NodeTag> type;
-};
-
-}} // namespace detail::rtree
-
-}}} // namespace boost::geometry::index
-
-#endif // BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_ALGO_HPP

Modified: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/filters.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/filters.hpp (original)
+++ sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/filters.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
@@ -20,20 +20,20 @@
 
 namespace boost { namespace geometry { namespace index {
 
-template <typename Value, typename Tag, typename Translator>
+template <typename Value, typename Options, typename Translator>
 class rtree;
 
 namespace filters {
 
-template <typename Value, typename Translator, typename Tag>
-class spatial_filter< index::rtree<Value, Translator, Tag> >
+template <typename Value, typename Options, typename Translator>
+class spatial_filter< index::rtree<Value, Options, Translator> >
 {
 public:
     typedef typename std::deque<Value>::iterator iterator;
     typedef typename std::deque<Value>::const_iterator const_iterator;
     
     template <typename Geometry>
- inline spatial_filter(index::rtree<Value, Translator, Tag> const& rtree, Geometry const& geom)
+ inline spatial_filter(index::rtree<Value, Options, Translator> const& rtree, Geometry const& geom)
     {
         rtree.find(geom, std::back_inserter(m_result));
     }

Deleted: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/linear/algo.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/linear/algo.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
+++ (empty file)
@@ -1,29 +0,0 @@
-// Boost.Geometry (aka GGL, Generic Geometry Library)
-//
-// Boost.SpatialIndex - rtree variants algorithms
-//
-// Copyright 2011 Adam Wulkiewicz.
-// Use, modification and distribution is subject to the Boost Software License,
-// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
-// http://www.boost.org/LICENSE_1_0.txt)
-
-#ifndef BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_LINEAR_ALGO_HPP
-#define BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_LINEAR_ALGO_HPP
-
-namespace boost { namespace geometry { namespace index {
-
-struct linear_tag {};
-
-namespace detail { namespace rtree {
-
-template <>
-struct algo_type<linear_tag>
-{
- typedef algo<default_tag, analyze_area_tag, linear_tag, default_tag> type;
-};
-
-}} // namespace detail::rtree
-
-}}} // namespace boost::geometry::index
-
-#endif // BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_LINEAR_ALGO_HPP

Modified: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/linear/linear.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/linear/linear.hpp (original)
+++ sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/linear/linear.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
@@ -10,7 +10,6 @@
 #ifndef BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_LINEAR_LINEAR_HPP
 #define BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_LINEAR_LINEAR_HPP
 
-#include <boost/geometry/extensions/index/rtree/linear/algo.hpp>
 #include <boost/geometry/extensions/index/rtree/linear/redistribute_elements.hpp>
 
 #endif // BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_LINEAR_LINEAR_HPP

Modified: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/linear/redistribute_elements.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/linear/redistribute_elements.hpp (original)
+++ sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/linear/redistribute_elements.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
@@ -172,12 +172,12 @@
 
 // from void split_node(node_pointer const& n, node_pointer& n1, node_pointer& n2) const
 
-template <typename Value, typename Algo, typename Translator, typename Box>
-struct redistribute_elements<Value, Algo, Translator, Box, linear_tag>
+template <typename Value, typename Options, typename Translator, typename Box>
+struct redistribute_elements<Value, Options, Translator, Box, linear_tag>
 {
- typedef typename rtree::node<Value, Box, typename Algo::node_tag>::type node;
- typedef typename rtree::internal_node<Value, Box, typename Algo::node_tag>::type internal_node;
- typedef typename rtree::leaf<Value, Box, typename Algo::node_tag>::type leaf;
+ typedef typename rtree::node<Value, Box, typename Options::node_tag>::type node;
+ typedef typename rtree::internal_node<Value, Box, typename Options::node_tag>::type internal_node;
+ typedef typename rtree::leaf<Value, Box, typename Options::node_tag>::type leaf;
 
     template <typename Node>
     static inline void apply(Node & n,

Added: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/options.hpp
==============================================================================
--- (empty file)
+++ sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/options.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
@@ -0,0 +1,76 @@
+// Boost.Geometry (aka GGL, Generic Geometry Library)
+//
+// Boost.SpatialIndex - rtree variants options
+//
+// Copyright 2011 Adam Wulkiewicz.
+// Use, modification and distribution is subject to the Boost Software License,
+// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+#ifndef BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_OPTIONS_HPP
+#define BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_OPTIONS_HPP
+
+namespace boost { namespace geometry { namespace index {
+
+// InsertTag
+struct insert_tag {};
+struct reinsert_tag {};
+
+// ChooseNextNodeTag
+struct choose_by_area_diff_tag {};
+struct choose_by_overlap_diff_tag {};
+
+// RedistributeTag
+struct linear_tag {};
+struct quadratic_tag {};
+struct rstar_tag {};
+
+// NodeTag
+struct default_tag {};
+
+namespace detail { namespace rtree {
+
+template <typename InsertTag, typename ChooseNextNodeTag, typename RedistributeTag, typename NodeTag>
+struct options
+{
+ typedef InsertTag insert_tag;
+ typedef ChooseNextNodeTag choose_next_node_tag;
+ typedef RedistributeTag redistribute_tag;
+ typedef NodeTag node_tag;
+};
+
+template <typename Tag>
+struct options_type
+{
+ typedef void type;
+};
+
+template <typename InsertTag, typename ChooseNextNodeTag, typename RedistributeTag, typename NodeTag>
+struct options_type< options<InsertTag, ChooseNextNodeTag, RedistributeTag, NodeTag> >
+{
+ typedef options<InsertTag, ChooseNextNodeTag, RedistributeTag, NodeTag> type;
+};
+
+template <>
+struct options_type<linear_tag>
+{
+ typedef options<insert_tag, choose_by_area_diff_tag, linear_tag, default_tag> type;
+};
+
+template <>
+struct options_type<quadratic_tag>
+{
+ typedef options<insert_tag, choose_by_area_diff_tag, quadratic_tag, default_tag> type;
+};
+
+template <>
+struct options_type<rstar_tag>
+{
+ typedef options<reinsert_tag, choose_by_overlap_diff_tag, rstar_tag, default_tag> type;
+};
+
+}} // namespace detail::rtree
+
+}}} // namespace boost::geometry::index
+
+#endif // BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_OPTIONS_HPP

Deleted: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/quadratic/algo.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/quadratic/algo.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
+++ (empty file)
@@ -1,29 +0,0 @@
-// Boost.Geometry (aka GGL, Generic Geometry Library)
-//
-// Boost.SpatialIndex - rtree variants algorithms
-//
-// Copyright 2011 Adam Wulkiewicz.
-// Use, modification and distribution is subject to the Boost Software License,
-// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
-// http://www.boost.org/LICENSE_1_0.txt)
-
-#ifndef BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_QUADRATIC_ALGO_HPP
-#define BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_QUADRATIC_ALGO_HPP
-
-namespace boost { namespace geometry { namespace index {
-
-struct quadratic_tag {};
-
-namespace detail { namespace rtree {
-
-template <>
-struct algo_type<quadratic_tag>
-{
- typedef algo<default_tag, analyze_area_tag, quadratic_tag, default_tag> type;
-};
-
-}} // namespace detail::rtree
-
-}}} // namespace boost::geometry::index
-
-#endif // BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_QUADRATIC_ALGO_HPP

Modified: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/quadratic/quadratic.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/quadratic/quadratic.hpp (original)
+++ sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/quadratic/quadratic.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
@@ -10,7 +10,6 @@
 #ifndef BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_QUADRATIC_QUADRATIC_HPP
 #define BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_QUADRATIC_QUADRATIC_HPP
 
-#include <boost/geometry/extensions/index/rtree/quadratic/algo.hpp>
 #include <boost/geometry/extensions/index/rtree/quadratic/redistribute_elements.hpp>
 
 #endif // BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_QUADRATIC_QUADRATIC_HPP

Modified: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/quadratic/redistribute_elements.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/quadratic/redistribute_elements.hpp (original)
+++ sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/quadratic/redistribute_elements.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
@@ -75,12 +75,12 @@
 
 } // namespace quadratic
 
-template <typename Value, typename Algo, typename Translator, typename Box>
-struct redistribute_elements<Value, Algo, Translator, Box, quadratic_tag>
+template <typename Value, typename Options, typename Translator, typename Box>
+struct redistribute_elements<Value, Options, Translator, Box, quadratic_tag>
 {
- typedef typename rtree::node<Value, Box, typename Algo::node_tag>::type node;
- typedef typename rtree::internal_node<Value, Box, typename Algo::node_tag>::type internal_node;
- typedef typename rtree::leaf<Value, Box, typename Algo::node_tag>::type leaf;
+ typedef typename rtree::node<Value, Box, typename Options::node_tag>::type node;
+ typedef typename rtree::internal_node<Value, Box, typename Options::node_tag>::type internal_node;
+ typedef typename rtree::leaf<Value, Box, typename Options::node_tag>::type leaf;
 
     typedef typename index::default_area_result<Box>::type area_type;
 

Deleted: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rstar/algo.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rstar/algo.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
+++ (empty file)
@@ -1,31 +0,0 @@
-// Boost.Geometry (aka GGL, Generic Geometry Library)
-//
-// Boost.SpatialIndex - rtree variants algorithms
-//
-// Copyright 2011 Adam Wulkiewicz.
-// Use, modification and distribution is subject to the Boost Software License,
-// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
-// http://www.boost.org/LICENSE_1_0.txt)
-
-#ifndef BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_RSTAR_ALGO_HPP
-#define BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_RSTAR_ALGO_HPP
-
-namespace boost { namespace geometry { namespace index {
-
-struct with_reinsert_tag {};
-struct find_minimum_cost_tag {};
-struct rstar_tag {};
-
-namespace detail { namespace rtree {
-
-template <>
-struct algo_type<rstar_tag>
-{
- typedef algo<with_reinsert_tag, find_minimum_cost_tag, rstar_tag, default_tag> type;
-};
-
-}} // namespace detail::rtree
-
-}}} // namespace boost::geometry::index
-
-#endif // BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_RSTAR_ALGO_HPP

Modified: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rstar/choose_next_node.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rstar/choose_next_node.hpp (original)
+++ sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rstar/choose_next_node.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
@@ -27,12 +27,12 @@
 
 namespace detail {
 
-template <typename Value, typename Algo, typename Box>
-class choose_next_node<Value, Algo, Box, find_minimum_cost_tag>
+template <typename Value, typename Options, typename Box>
+class choose_next_node<Value, Options, Box, choose_by_overlap_diff_tag>
 {
- typedef typename rtree::node<Value, Box, typename Algo::node_tag>::type node;
- typedef typename rtree::internal_node<Value, Box, typename Algo::node_tag>::type internal_node;
- typedef typename rtree::leaf<Value, Box, typename Algo::node_tag>::type leaf;
+ typedef typename rtree::node<Value, Box, typename Options::node_tag>::type node;
+ typedef typename rtree::internal_node<Value, Box, typename Options::node_tag>::type internal_node;
+ typedef typename rtree::leaf<Value, Box, typename Options::node_tag>::type leaf;
 
     typedef typename rtree::elements_type<internal_node>::type children_type;
 

Modified: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rstar/insert.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rstar/insert.hpp (original)
+++ sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rstar/insert.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
@@ -25,13 +25,13 @@
 
 namespace rstar {
 
-template <typename Value, typename Algo, typename Translator, typename Box>
+template <typename Value, typename Options, typename Translator, typename Box>
 class remove_elements_to_reinsert
 {
 public:
- typedef typename rtree::node<Value, Box, typename Algo::node_tag>::type node;
- typedef typename rtree::internal_node<Value, Box, typename Algo::node_tag>::type internal_node;
- typedef typename rtree::leaf<Value, Box, typename Algo::node_tag>::type leaf;
+ typedef typename rtree::node<Value, Box, typename Options::node_tag>::type node;
+ typedef typename rtree::internal_node<Value, Box, typename Options::node_tag>::type internal_node;
+ typedef typename rtree::leaf<Value, Box, typename Options::node_tag>::type leaf;
 
     template <typename Node>
     static inline void apply(typename rtree::elements_type<Node>::type & result_elements,
@@ -106,32 +106,32 @@
     }
 };
 
-template <size_t InsertIndex, typename Element, typename Value, typename Algo, typename Box>
+template <size_t InsertIndex, typename Element, typename Value, typename Options, typename Box>
 struct level_insert_result_type
 {
         typedef typename rtree::elements_type<
- typename rtree::internal_node<Value, Box, typename Algo::node_tag>::type
+ typename rtree::internal_node<Value, Box, typename Options::node_tag>::type
>::type type;
 };
 
-template <typename Value, typename Algo, typename Box>
-struct level_insert_result_type<0, Value, Value, Algo, Box>
+template <typename Value, typename Options, typename Box>
+struct level_insert_result_type<0, Value, Value, Options, Box>
 {
         typedef typename rtree::elements_type<
- typename rtree::leaf<Value, Box, typename Algo::node_tag>::type
+ typename rtree::leaf<Value, Box, typename Options::node_tag>::type
>::type type;
 };
 
-template <size_t InsertIndex, typename Element, typename Value, typename Algo, typename Translator, typename Box>
+template <size_t InsertIndex, typename Element, typename Value, typename Options, typename Translator, typename Box>
 struct level_insert_base
- : public detail::insert<Element, Value, Algo, Translator, Box>
+ : public detail::insert<Element, Value, Options, Translator, Box>
 {
- typedef detail::insert<Element, Value, Algo, Translator, Box> base;
+ typedef detail::insert<Element, Value, Options, Translator, Box> base;
         typedef typename base::node node;
         typedef typename base::internal_node internal_node;
         typedef typename base::leaf leaf;
 
- typedef typename level_insert_result_type<InsertIndex, Element, Value, Algo, Box>::type result_type;
+ typedef typename level_insert_result_type<InsertIndex, Element, Value, Options, Box>::type result_type;
 
         inline level_insert_base(node* & root,
                                                           size_t & leafs_level,
@@ -158,7 +158,7 @@
                         // node isn't root node
                         if ( base::m_parent )
                         {
- rstar::remove_elements_to_reinsert<Value, Algo, Translator, Box>::apply(
+ rstar::remove_elements_to_reinsert<Value, Options, Translator, Box>::apply(
                                         result_elements, n,
                                         base::m_parent, base::m_current_child_index,
                                         base::m_min_elems_per_node, base::m_max_elems_per_node, base::m_tr);
@@ -198,11 +198,11 @@
         result_type result_elements;
 };
 
-template <size_t InsertIndex, typename Element, typename Value, typename Algo, typename Translator, typename Box>
+template <size_t InsertIndex, typename Element, typename Value, typename Options, typename Translator, typename Box>
 struct level_insert
- : public level_insert_base<InsertIndex, Element, Value, Algo, Translator, Box>
+ : public level_insert_base<InsertIndex, Element, Value, Options, Translator, Box>
 {
- typedef level_insert_base<InsertIndex, Element, Value, Algo, Translator, Box> base;
+ typedef level_insert_base<InsertIndex, Element, Value, Options, Translator, Box> base;
     typedef typename base::node node;
     typedef typename base::internal_node internal_node;
     typedef typename base::leaf leaf;
@@ -267,11 +267,11 @@
     }
 };
 
-template <size_t InsertIndex, typename Value, typename Algo, typename Translator, typename Box>
-struct level_insert<InsertIndex, Value, Value, Algo, Translator, Box>
- : public level_insert_base<InsertIndex, Value, Value, Algo, Translator, Box>
+template <size_t InsertIndex, typename Value, typename Options, typename Translator, typename Box>
+struct level_insert<InsertIndex, Value, Value, Options, Translator, Box>
+ : public level_insert_base<InsertIndex, Value, Value, Options, Translator, Box>
 {
- typedef level_insert_base<InsertIndex, Value, Value, Algo, Translator, Box> base;
+ typedef level_insert_base<InsertIndex, Value, Value, Options, Translator, Box> base;
     typedef typename base::node node;
     typedef typename base::internal_node internal_node;
     typedef typename base::leaf leaf;
@@ -318,11 +318,11 @@
     }
 };
 
-template <typename Value, typename Algo, typename Translator, typename Box>
-struct level_insert<0, Value, Value, Algo, Translator, Box>
- : public level_insert_base<0, Value, Value, Algo, Translator, Box>
+template <typename Value, typename Options, typename Translator, typename Box>
+struct level_insert<0, Value, Value, Options, Translator, Box>
+ : public level_insert_base<0, Value, Value, Options, Translator, Box>
 {
- typedef level_insert_base<0, Value, Value, Algo, Translator, Box> base;
+ typedef level_insert_base<0, Value, Value, Options, Translator, Box> base;
     typedef typename base::node node;
     typedef typename base::internal_node internal_node;
     typedef typename base::leaf leaf;
@@ -365,13 +365,13 @@
 };
 
 // R*-tree insert visitor
-template <typename Element, typename Value, typename Algo, typename Translator, typename Box>
-class insert : public rtree::visitor<Value, Box, typename Algo::node_tag, false>::type
+template <typename Element, typename Value, typename Options, typename Translator, typename Box>
+class insert : public rtree::visitor<Value, Box, typename Options::node_tag, false>::type
 {
 protected:
- typedef typename rtree::node<Value, Box, typename Algo::node_tag>::type node;
- typedef typename rtree::internal_node<Value, Box, typename Algo::node_tag>::type internal_node;
- typedef typename rtree::leaf<Value, Box, typename Algo::node_tag>::type leaf;
+ typedef typename rtree::node<Value, Box, typename Options::node_tag>::type node;
+ typedef typename rtree::internal_node<Value, Box, typename Options::node_tag>::type internal_node;
+ typedef typename rtree::leaf<Value, Box, typename Options::node_tag>::type leaf;
 
 public:
     inline insert(node* & root,
@@ -391,7 +391,7 @@
     {
         typedef typename elements_type<internal_node>::type elements_type;
 
- rstar::level_insert<0, Element, Value, Algo, Translator, Box> lins_v(
+ rstar::level_insert<0, Element, Value, Options, Translator, Box> lins_v(
             m_root, m_leafs_level, m_element, m_min_elements, m_max_elements, m_tr, m_relative_level);
 
         rtree::apply_visitor(lins_v, n);
@@ -404,7 +404,7 @@
 
     inline void operator()(leaf & n)
     {
- rstar::level_insert<0, Element, Value, Algo, Translator, Box> lins_v(
+ rstar::level_insert<0, Element, Value, Options, Translator, Box> lins_v(
             m_root, m_leafs_level, m_element, m_min_elements, m_max_elements, m_tr, m_relative_level);
 
         rtree::apply_visitor(lins_v, n);
@@ -423,7 +423,7 @@
         for ( typename Elements::const_reverse_iterator it = elements.rbegin();
             it != elements.rend(); ++it)
         {
- rstar::level_insert<1, element_type, Value, Algo, Translator, Box> lins_v(
+ rstar::level_insert<1, element_type, Value, Options, Translator, Box> lins_v(
                 m_root, m_leafs_level, *it, m_min_elements, m_max_elements, m_tr, relative_level);
 
             rtree::apply_visitor(lins_v, *m_root);
@@ -452,11 +452,11 @@
 } // namespace detail
 
 // R*-tree insert visitor
-template <typename Element, typename Value, typename Algo, typename Translator, typename Box>
-class insert<Element, Value, Algo, Translator, Box, with_reinsert_tag>
- : public detail::rstar::insert<Element, Value, Algo, Translator, Box>
+template <typename Element, typename Value, typename Options, typename Translator, typename Box>
+class insert<Element, Value, Options, Translator, Box, reinsert_tag>
+ : public detail::rstar::insert<Element, Value, Options, Translator, Box>
 {
- typedef detail::rstar::insert<Element, Value, Algo, Translator, Box> base;
+ typedef detail::rstar::insert<Element, Value, Options, Translator, Box> base;
     typedef typename base::node node;
 
 public:
@@ -473,11 +473,11 @@
 };
 
 // R*-tree insert visitor
-template <typename Value, typename Algo, typename Translator, typename Box>
-class insert<Value, Value, Algo, Translator, Box, with_reinsert_tag>
- : public detail::rstar::insert<Value, Value, Algo, Translator, Box>
+template <typename Value, typename Options, typename Translator, typename Box>
+class insert<Value, Value, Options, Translator, Box, reinsert_tag>
+ : public detail::rstar::insert<Value, Value, Options, Translator, Box>
 {
- typedef detail::rstar::insert<Value, Value, Algo, Translator, Box> base;
+ typedef detail::rstar::insert<Value, Value, Options, Translator, Box> base;
     typedef typename base::node node;
 
 public:

Modified: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rstar/redistribute_elements.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rstar/redistribute_elements.hpp (original)
+++ sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rstar/redistribute_elements.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
@@ -311,12 +311,12 @@
 
 } // namespace rstar
 
-template <typename Value, typename Algo, typename Translator, typename Box>
-struct redistribute_elements<Value, Algo, Translator, Box, rstar_tag>
+template <typename Value, typename Options, typename Translator, typename Box>
+struct redistribute_elements<Value, Options, Translator, Box, rstar_tag>
 {
- typedef typename rtree::node<Value, Box, typename Algo::node_tag>::type node;
- typedef typename rtree::internal_node<Value, Box, typename Algo::node_tag>::type internal_node;
- typedef typename rtree::leaf<Value, Box, typename Algo::node_tag>::type leaf;
+ typedef typename rtree::node<Value, Box, typename Options::node_tag>::type node;
+ typedef typename rtree::internal_node<Value, Box, typename Options::node_tag>::type internal_node;
+ typedef typename rtree::leaf<Value, Box, typename Options::node_tag>::type leaf;
 
         static const size_t dimension = index::traits::dimension<Box>::value;
 

Modified: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rstar/rstar.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rstar/rstar.hpp (original)
+++ sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rstar/rstar.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
@@ -10,7 +10,6 @@
 #ifndef BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_RSTAR_RSTAR_HPP
 #define BOOST_GEOMETRY_EXTENSIONS_INDEX_RTREE_RSTAR_RSTAR_HPP
 
-#include <boost/geometry/extensions/index/rtree/rstar/algo.hpp>
 #include <boost/geometry/extensions/index/rtree/rstar/insert.hpp>
 #include <boost/geometry/extensions/index/rtree/rstar/choose_next_node.hpp>
 #include <boost/geometry/extensions/index/rtree/rstar/redistribute_elements.hpp>

Modified: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rtree.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rtree.hpp (original)
+++ sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/rtree.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
@@ -16,7 +16,7 @@
 
 #include <boost/geometry/extensions/index/translator/def.hpp>
 
-#include <boost/geometry/extensions/index/rtree/algo.hpp>
+#include <boost/geometry/extensions/index/rtree/options.hpp>
 #include <boost/geometry/extensions/index/rtree/filters.hpp>
 
 #include <boost/geometry/extensions/index/rtree/visitors/find.hpp>
@@ -34,7 +34,7 @@
 
 template <
     typename Value,
- typename Algo = linear_tag,
+ typename Options = linear_tag,
         typename Translator = translator::def<Value>
>
 class rtree
@@ -45,8 +45,8 @@
         typedef typename translator_type::indexable_type indexable_type;
     typedef typename index::default_box_type<indexable_type>::type box_type;
     
- typedef typename detail::rtree::algo_type<Algo>::type algo_type;
- typedef typename algo_type::node_tag node_tag;
+ typedef typename detail::rtree::options_type<Options>::type options_type;
+ typedef typename options_type::node_tag node_tag;
 
     typedef typename detail::rtree::node<value_type, box_type, node_tag>::type node;
     typedef typename detail::rtree::internal_node<value_type, box_type, node_tag>::type internal_node;
@@ -74,7 +74,7 @@
 
     ~rtree()
     {
- detail::rtree::visitors::destroy<value_type, algo_type, translator_type, box_type> del_v;
+ detail::rtree::visitors::destroy<value_type, options_type, translator_type, box_type> del_v;
         detail::rtree::apply_visitor(del_v, *m_root);
     }
 
@@ -83,7 +83,7 @@
     template <typename Geometry, typename OutIter>
     inline void find(Geometry const& geom, OutIter out_it) const
     {
- detail::rtree::visitors::find<value_type, algo_type, translator_type, box_type, Geometry, OutIter>
+ detail::rtree::visitors::find<value_type, options_type, translator_type, box_type, Geometry, OutIter>
             find_v(m_translator, geom, out_it);
 
         detail::rtree::apply_visitor(find_v, *m_root);
@@ -93,7 +93,7 @@
     {
         // TODO: awulkiew - assert for correct value
 
- detail::rtree::visitors::insert<value_type, value_type, algo_type, translator_type, box_type, typename algo_type::insert_tag>
+ detail::rtree::visitors::insert<value_type, value_type, options_type, translator_type, box_type, typename options_type::insert_tag>
             insert_v(m_root, m_leafs_level, value, m_min_elems_per_node, m_max_elems_per_node, m_translator);
 
         detail::rtree::apply_visitor(insert_v, *m_root);
@@ -106,7 +106,7 @@
         // TODO: awulkiew - assert for correct value
         assert(0 < m_values_count);
 
- detail::rtree::visitors::remove<value_type, algo_type, translator_type, box_type>
+ detail::rtree::visitors::remove<value_type, options_type, translator_type, box_type>
             remove_v(m_root, m_leafs_level, value, m_min_elems_per_node, m_max_elems_per_node, m_translator);
 
         detail::rtree::apply_visitor(remove_v, *m_root);
@@ -156,14 +156,14 @@
     translator_type m_translator;
 };
 
-template <typename Value, typename Algo, typename Translator>
-void insert(rtree<Value, Algo, Translator> & tree, Value const& v)
+template <typename Value, typename Options, typename Translator>
+void insert(rtree<Value, Options, Translator> & tree, Value const& v)
 {
     tree.insert(v);
 }
 
-template <typename Value, typename Algo, typename Translator>
-void remove(rtree<Value, Algo, Translator> & tree, Value const& v)
+template <typename Value, typename Options, typename Translator>
+void remove(rtree<Value, Options, Translator> & tree, Value const& v)
 {
     tree.remove(v);
 }

Modified: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/are_boxes_ok.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/are_boxes_ok.hpp (original)
+++ sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/are_boxes_ok.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
@@ -17,11 +17,11 @@
 
 namespace detail { namespace rtree { namespace visitors {
 
-template <typename Value, typename Algo, typename Translator, typename Box>
-class are_boxes_ok : public rtree::visitor<Value, Box, typename Algo::node_tag, true>::type
+template <typename Value, typename Options, typename Translator, typename Box>
+class are_boxes_ok : public rtree::visitor<Value, Box, typename Options::node_tag, true>::type
 {
- typedef typename rtree::internal_node<Value, Box, typename Algo::node_tag>::type internal_node;
- typedef typename rtree::leaf<Value, Box, typename Algo::node_tag>::type leaf;
+ typedef typename rtree::internal_node<Value, Box, typename Options::node_tag>::type internal_node;
+ typedef typename rtree::leaf<Value, Box, typename Options::node_tag>::type leaf;
 
 public:
     inline are_boxes_ok(Translator const& tr)
@@ -107,13 +107,13 @@
 
 }}} // namespace detail::rtree::visitors
 
-template <typename Value, typename Algo, typename Translator>
-bool are_boxes_ok(rtree<Value, Algo, Translator> const& tree)
+template <typename Value, typename Options, typename Translator>
+bool are_boxes_ok(rtree<Value, Options, Translator> const& tree)
 {
- typedef rtree<Value, Algo, Translator> rt;
+ typedef rtree<Value, Options, Translator> rt;
     detail::rtree::visitors::are_boxes_ok<
         typename rt::value_type,
- typename rt::algo_type,
+ typename rt::options_type,
         typename rt::translator_type,
         typename rt::box_type> v(tree.get_translator());
     

Modified: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/are_levels_ok.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/are_levels_ok.hpp (original)
+++ sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/are_levels_ok.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
@@ -16,11 +16,11 @@
 
 namespace detail { namespace rtree { namespace visitors {
 
-template <typename Value, typename Algo, typename Translator, typename Box>
-class are_levels_ok : public rtree::visitor<Value, Box, typename Algo::node_tag, true>::type
+template <typename Value, typename Options, typename Translator, typename Box>
+class are_levels_ok : public rtree::visitor<Value, Box, typename Options::node_tag, true>::type
 {
- typedef typename rtree::internal_node<Value, Box, typename Algo::node_tag>::type internal_node;
- typedef typename rtree::leaf<Value, Box, typename Algo::node_tag>::type leaf;
+ typedef typename rtree::internal_node<Value, Box, typename Options::node_tag>::type internal_node;
+ typedef typename rtree::leaf<Value, Box, typename Options::node_tag>::type leaf;
 
 public:
     inline are_levels_ok(Translator const& tr)
@@ -85,13 +85,13 @@
 
 }}} // namespace detail::rtree::visitors
 
-template <typename Value, typename Algo, typename Translator>
-bool are_levels_ok(rtree<Value, Algo, Translator> const& tree)
+template <typename Value, typename Options, typename Translator>
+bool are_levels_ok(rtree<Value, Options, Translator> const& tree)
 {
- typedef rtree<Value, Algo, Translator> rt;
+ typedef rtree<Value, Options, Translator> rt;
     detail::rtree::visitors::are_levels_ok<
         typename rt::value_type,
- typename rt::algo_type,
+ typename rt::options_type,
         typename rt::translator_type,
         typename rt::box_type> v(tree.get_translator());
     

Modified: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/destroy.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/destroy.hpp (original)
+++ sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/destroy.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
@@ -16,11 +16,11 @@
 
 namespace detail { namespace rtree { namespace visitors {
 
-template <typename Value, typename Algo, typename Translator, typename Box>
-struct destroy : public rtree::visitor<Value, Box, typename Algo::node_tag, false>::type
+template <typename Value, typename Options, typename Translator, typename Box>
+struct destroy : public rtree::visitor<Value, Box, typename Options::node_tag, false>::type
 {
- typedef typename rtree::internal_node<Value, Box, typename Algo::node_tag>::type internal_node;
- typedef typename rtree::leaf<Value, Box, typename Algo::node_tag>::type leaf;
+ typedef typename rtree::internal_node<Value, Box, typename Options::node_tag>::type internal_node;
+ typedef typename rtree::leaf<Value, Box, typename Options::node_tag>::type leaf;
 
     inline void operator()(internal_node & n)
     {

Modified: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/find.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/find.hpp (original)
+++ sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/find.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
@@ -142,12 +142,12 @@
 
 // rtree spatial query visitor
 
-template <typename Value, typename Algo, typename Translator, typename Box, typename Geometry, typename OutIter>
-struct find : public rtree::visitor<Value, Box, typename Algo::node_tag, true>::type
+template <typename Value, typename Options, typename Translator, typename Box, typename Geometry, typename OutIter>
+struct find : public rtree::visitor<Value, Box, typename Options::node_tag, true>::type
 {
- typedef typename rtree::node<Value, Box, typename Algo::node_tag>::type node;
- typedef typename rtree::internal_node<Value, Box, typename Algo::node_tag>::type internal_node;
- typedef typename rtree::leaf<Value, Box, typename Algo::node_tag>::type leaf;
+ typedef typename rtree::node<Value, Box, typename Options::node_tag>::type node;
+ typedef typename rtree::internal_node<Value, Box, typename Options::node_tag>::type internal_node;
+ typedef typename rtree::leaf<Value, Box, typename Options::node_tag>::type leaf;
 
     inline find(Translator const& t, Geometry const& g, OutIter out_it)
         : tr(t), geom(g), out_iter(out_it)

Modified: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/gl_draw.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/gl_draw.hpp (original)
+++ sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/gl_draw.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
@@ -94,11 +94,11 @@
 
 } // namespace detail
 
-template <typename Value, typename Algo, typename Translator, typename Box>
-struct gl_draw : public rtree::visitor<Value, Box, typename Algo::node_tag, true>::type
+template <typename Value, typename Options, typename Translator, typename Box>
+struct gl_draw : public rtree::visitor<Value, Box, typename Options::node_tag, true>::type
 {
- typedef typename rtree::internal_node<Value, Box, typename Algo::node_tag>::type internal_node;
- typedef typename rtree::leaf<Value, Box, typename Algo::node_tag>::type leaf;
+ typedef typename rtree::internal_node<Value, Box, typename Options::node_tag>::type internal_node;
+ typedef typename rtree::leaf<Value, Box, typename Options::node_tag>::type leaf;
 
     inline gl_draw(Translator const& t,
                    size_t level_first = 0,
@@ -187,23 +187,23 @@
 
 }}} // namespace detail::rtree::visitors
 
-template <typename Value, typename Algo, typename Translator>
-void gl_draw(rtree<Value, Algo, Translator> const& tree,
+template <typename Value, typename Options, typename Translator>
+void gl_draw(rtree<Value, Options, Translator> const& tree,
              size_t level_first = 0,
              size_t level_last = std::numeric_limits<size_t>::max(),
              typename index::traits::coordinate_type<
- typename rtree<Value, Algo, Translator>::box_type
+ typename rtree<Value, Options, Translator>::box_type
>::type z_coord_level_multiplier = 1
              )
 {
- typedef typename rtree<Value, Algo, Translator>::value_type value_type;
- typedef typename rtree<Value, Algo, Translator>::algo_type algo_type;
- typedef typename rtree<Value, Algo, Translator>::translator_type translator_type;
- typedef typename rtree<Value, Algo, Translator>::box_type box_type;
+ typedef typename rtree<Value, Options, Translator>::value_type value_type;
+ typedef typename rtree<Value, Options, Translator>::options_type options_type;
+ typedef typename rtree<Value, Options, Translator>::translator_type translator_type;
+ typedef typename rtree<Value, Options, Translator>::box_type box_type;
 
     glClear(GL_COLOR_BUFFER_BIT);
 
- detail::rtree::visitors::gl_draw<value_type, algo_type, translator_type, box_type>
+ detail::rtree::visitors::gl_draw<value_type, options_type, translator_type, box_type>
         gl_draw_v(tree.get_translator(), level_first, level_last, z_coord_level_multiplier);
 
     tree.apply_visitor(gl_draw_v);

Modified: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/insert.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/insert.hpp (original)
+++ sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/insert.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
@@ -21,15 +21,15 @@
 namespace detail {
 
 // Default choose_next_node
-template <typename Value, typename Algo, typename Box, typename ChooseNextNodeTag>
+template <typename Value, typename Options, typename Box, typename ChooseNextNodeTag>
 struct choose_next_node;
 
-template <typename Value, typename Algo, typename Box>
-struct choose_next_node<Value, Algo, Box, analyze_area_tag>
+template <typename Value, typename Options, typename Box>
+struct choose_next_node<Value, Options, Box, choose_by_area_diff_tag>
 {
- typedef typename rtree::node<Value, Box, typename Algo::node_tag>::type node;
- typedef typename rtree::internal_node<Value, Box, typename Algo::node_tag>::type internal_node;
- typedef typename rtree::leaf<Value, Box, typename Algo::node_tag>::type leaf;
+ typedef typename rtree::node<Value, Box, typename Options::node_tag>::type node;
+ typedef typename rtree::internal_node<Value, Box, typename Options::node_tag>::type internal_node;
+ typedef typename rtree::leaf<Value, Box, typename Options::node_tag>::type leaf;
 
     typedef typename rtree::elements_type<internal_node>::type children_type;
 
@@ -78,17 +78,17 @@
 };
 
 // Not implemented here
-template <typename Value, typename Algo, typename Translator, typename Box, typename RedistributeTag>
+template <typename Value, typename Options, typename Translator, typename Box, typename RedistributeTag>
 struct redistribute_elements;
 
 // Default insert visitor
-template <typename Element, typename Value, typename Algo, typename Translator, typename Box>
-class insert : public rtree::visitor<Value, Box, typename Algo::node_tag, false>::type
+template <typename Element, typename Value, typename Options, typename Translator, typename Box>
+class insert : public rtree::visitor<Value, Box, typename Options::node_tag, false>::type
 {
 protected:
- typedef typename rtree::node<Value, Box, typename Algo::node_tag>::type node;
- typedef typename rtree::internal_node<Value, Box, typename Algo::node_tag>::type internal_node;
- typedef typename rtree::leaf<Value, Box, typename Algo::node_tag>::type leaf;
+ typedef typename rtree::node<Value, Box, typename Options::node_tag>::type node;
+ typedef typename rtree::internal_node<Value, Box, typename Options::node_tag>::type internal_node;
+ typedef typename rtree::leaf<Value, Box, typename Options::node_tag>::type leaf;
 
     inline insert(node* & root,
                   size_t & leafs_level,
@@ -120,7 +120,7 @@
     inline void traverse(Visitor & visitor, internal_node & n)
     {
         // choose next node
- size_t choosen_node_index = detail::choose_next_node<Value, Algo, Box, typename Algo::choose_next_node_tag>::
+ size_t choosen_node_index = detail::choose_next_node<Value, Options, Box, typename Options::choose_next_node_tag>::
             apply(n, rtree::element_indexable(m_element, m_tr), m_leafs_level - m_current_level);
 
         // expand the node to contain value
@@ -178,7 +178,7 @@
 
                 // redistribute elements
                 Box box1, box2;
- redistribute_elements<Value, Algo, Translator, Box, typename Algo::redistribute_tag>::
+ redistribute_elements<Value, Options, Translator, Box, typename Options::redistribute_tag>::
                         apply(n, n2, box1, box2, m_min_elems_per_node, m_max_elems_per_node, m_tr);
 
                 // check numbers of elements
@@ -227,15 +227,15 @@
 
 } // namespace detail
 
-template <typename Element, typename Value, typename Algo, typename Translator, typename Box, typename InsertTag>
+template <typename Element, typename Value, typename Options, typename Translator, typename Box, typename InsertTag>
 struct insert;
 
 // Default insert visitor
-template <typename Element, typename Value, typename Algo, typename Translator, typename Box>
-struct insert<Element, Value, Algo, Translator, Box, default_tag>
- : public detail::insert<Element, Value, Algo, Translator, Box>
+template <typename Element, typename Value, typename Options, typename Translator, typename Box>
+struct insert<Element, Value, Options, Translator, Box, insert_tag>
+ : public detail::insert<Element, Value, Options, Translator, Box>
 {
- typedef detail::insert<Element, Value, Algo, Translator, Box> base;
+ typedef detail::insert<Element, Value, Options, Translator, Box> base;
     typedef typename base::node node;
     typedef typename base::internal_node internal_node;
     typedef typename base::leaf leaf;
@@ -278,11 +278,11 @@
 };
 
 // Default insert visitor specialized for Values elements
-template <typename Value, typename Algo, typename Translator, typename Box>
-struct insert<Value, Value, Algo, Translator, Box, default_tag>
- : public detail::insert<Value, Value, Algo, Translator, Box>
+template <typename Value, typename Options, typename Translator, typename Box>
+struct insert<Value, Value, Options, Translator, Box, insert_tag>
+ : public detail::insert<Value, Value, Options, Translator, Box>
 {
- typedef detail::insert<Value, Value, Algo, Translator, Box> base;
+ typedef detail::insert<Value, Value, Options, Translator, Box> base;
     typedef typename base::node node;
     typedef typename base::internal_node internal_node;
     typedef typename base::leaf leaf;

Modified: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/is_leaf.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/is_leaf.hpp (original)
+++ sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/is_leaf.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
@@ -16,11 +16,11 @@
 
 namespace detail { namespace rtree { namespace visitors {
 
-template <typename Value, typename Algo, typename Box>
-struct is_leaf : public rtree::visitor<Value, Box, typename Algo::node_tag, true>::type
+template <typename Value, typename Options, typename Box>
+struct is_leaf : public rtree::visitor<Value, Box, typename Options::node_tag, true>::type
 {
- typedef typename rtree::internal_node<Value, Box, typename Algo::node_tag>::type internal_node;
- typedef typename rtree::leaf<Value, Box, typename Algo::node_tag>::type leaf;
+ typedef typename rtree::internal_node<Value, Box, typename Options::node_tag>::type internal_node;
+ typedef typename rtree::leaf<Value, Box, typename Options::node_tag>::type leaf;
 
     inline void operator()(internal_node const&)
     {

Modified: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/print.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/print.hpp (original)
+++ sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/print.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
@@ -113,11 +113,11 @@
 
 } // namespace detail
 
-template <typename Value, typename Algo, typename Translator, typename Box>
-struct print : public rtree::visitor<Value, Box, typename Algo::node_tag, true>::type
+template <typename Value, typename Options, typename Translator, typename Box>
+struct print : public rtree::visitor<Value, Box, typename Options::node_tag, true>::type
 {
- typedef typename rtree::internal_node<Value, Box, typename Algo::node_tag>::type internal_node;
- typedef typename rtree::leaf<Value, Box, typename Algo::node_tag>::type leaf;
+ typedef typename rtree::internal_node<Value, Box, typename Options::node_tag>::type internal_node;
+ typedef typename rtree::leaf<Value, Box, typename Options::node_tag>::type leaf;
 
     inline print(std::ostream & o, Translator const& t)
         : os(o), tr(t), level(0)
@@ -180,14 +180,14 @@
 
 }}} // namespace detail::rtree::visitors
 
-template <typename Value, typename Algo, typename Translator>
-std::ostream & operator<<(std::ostream & os, rtree<Value, Algo, Translator> const& tree)
+template <typename Value, typename Options, typename Translator>
+std::ostream & operator<<(std::ostream & os, rtree<Value, Options, Translator> const& tree)
 {
- typedef typename rtree<Value, Algo, Translator>::value_type value_type;
- typedef typename rtree<Value, Algo, Translator>::algo_type algo_type;
- typedef typename rtree<Value, Algo, Translator>::translator_type translator_type;
- typedef typename rtree<Value, Algo, Translator>::box_type box_type;
- detail::rtree::visitors::print<value_type, algo_type, translator_type, box_type> print_v(os, tree.get_translator());
+ typedef typename rtree<Value, Options, Translator>::value_type value_type;
+ typedef typename rtree<Value, Options, Translator>::options_type options_type;
+ typedef typename rtree<Value, Options, Translator>::translator_type translator_type;
+ typedef typename rtree<Value, Options, Translator>::box_type box_type;
+ detail::rtree::visitors::print<value_type, options_type, translator_type, box_type> print_v(os, tree.get_translator());
     tree.apply_visitor(print_v);
     return os;
 }

Modified: sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/remove.hpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/remove.hpp (original)
+++ sandbox-branches/geometry/index_080_new/boost/geometry/extensions/index/rtree/visitors/remove.hpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
@@ -21,12 +21,12 @@
 namespace detail { namespace rtree { namespace visitors {
 
 // Default remove algorithm
-template <typename Value, typename Algo, typename Translator, typename Box>
-class remove : public rtree::visitor<Value, Box, typename Algo::node_tag, false>::type
+template <typename Value, typename Options, typename Translator, typename Box>
+class remove : public rtree::visitor<Value, Box, typename Options::node_tag, false>::type
 {
- typedef typename rtree::node<Value, Box, typename Algo::node_tag>::type node;
- typedef typename rtree::internal_node<Value, Box, typename Algo::node_tag>::type internal_node;
- typedef typename rtree::leaf<Value, Box, typename Algo::node_tag>::type leaf;
+ typedef typename rtree::node<Value, Box, typename Options::node_tag>::type node;
+ typedef typename rtree::internal_node<Value, Box, typename Options::node_tag>::type internal_node;
+ typedef typename rtree::leaf<Value, Box, typename Options::node_tag>::type leaf;
 
 public:
     inline remove(node* & root,
@@ -115,7 +115,7 @@
                 for ( typename std::vector< std::pair<size_t, node*> >::reverse_iterator it = m_underflowed_nodes.rbegin();
                         it != m_underflowed_nodes.rend() ; ++it )
                 {
- is_leaf<Value, Algo, Box> ilv;
+ is_leaf<Value, Options, Box> ilv;
                     rtree::apply_visitor(ilv, *it->second);
                     if ( ilv.result )
                         reinsert_elements(rtree::get<leaf>(*it->second), it->first);
@@ -193,7 +193,7 @@
         for ( typename elements_type::iterator it = elements.begin();
             it != elements.end() ; ++it )
         {
- visitors::insert<typename elements_type::value_type, Value, Algo, Translator, Box, typename Algo::insert_tag> insert_v(
+ visitors::insert<typename elements_type::value_type, Value, Options, Translator, Box, typename Options::insert_tag> insert_v(
                 m_root_node,
                 m_leafs_level,
                 *it,

Modified: sandbox-branches/geometry/index_080_new/tests/additional_sizes_and_times.cpp
==============================================================================
--- sandbox-branches/geometry/index_080_new/tests/additional_sizes_and_times.cpp (original)
+++ sandbox-branches/geometry/index_080_new/tests/additional_sizes_and_times.cpp 2011-06-13 12:34:49 EDT (Mon, 13 Jun 2011)
@@ -34,7 +34,7 @@
     typedef bgi::rtree<std::pair<B, size_t>, bgi::rstar_tag> RT;
         /*typedef bgi::rtree<
                 std::pair<B, size_t>,
- bgi::detail::rtree::algo<bgi::with_reinsert_tag, bgi::analyze_area_tag, bgi::rstar_tag, bgi::default_tag>
+ bgi::detail::rtree::options<bgi::reinsert_tag, bgi::choose_by_area_diff_tag, bgi::rstar_tag, bgi::default_tag>
> RT;*/
 
     // load config file


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk