]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/boost/boost/geometry/index/detail/rtree/linear/redistribute_elements.hpp
update source to Ceph Pacific 16.2.2
[ceph.git] / ceph / src / boost / boost / geometry / index / detail / rtree / linear / redistribute_elements.hpp
index a0635acab16049bde2422baabb8b1ae1dbb1d3dd..88fb3358c88090c59aacb63b37f7678a942ed1ca 100644 (file)
@@ -322,28 +322,31 @@ inline void pick_seeds(Elements const& elements,
 
 // from void split_node(node_pointer const& n, node_pointer& n1, node_pointer& n2) const
 
-template <typename Value, typename Options, typename Translator, typename Box, typename Allocators>
-struct redistribute_elements<Value, Options, Translator, Box, Allocators, linear_tag>
+template <typename MembersHolder>
+struct redistribute_elements<MembersHolder, linear_tag>
 {
-    typedef typename Options::parameters_type parameters_type;
+    typedef typename MembersHolder::box_type box_type;
+    typedef typename MembersHolder::parameters_type parameters_type;
+    typedef typename MembersHolder::translator_type translator_type;
+    typedef typename MembersHolder::allocators_type allocators_type;
 
-    typedef typename rtree::node<Value, parameters_type, Box, Allocators, typename Options::node_tag>::type node;
-    typedef typename rtree::internal_node<Value, parameters_type, Box, Allocators, typename Options::node_tag>::type internal_node;
-    typedef typename rtree::leaf<Value, parameters_type, Box, Allocators, typename Options::node_tag>::type leaf;
+    typedef typename MembersHolder::node node;
+    typedef typename MembersHolder::internal_node internal_node;
+    typedef typename MembersHolder::leaf leaf;
 
     template <typename Node>
     static inline void apply(Node & n,
                              Node & second_node,
-                             Box & box1,
-                             Box & box2,
+                             box_type & box1,
+                             box_type & box2,
                              parameters_type const& parameters,
-                             Translator const& translator,
-                             Allocators & allocators)
+                             translator_type const& translator,
+                             allocators_type & allocators)
     {
         typedef typename rtree::elements_type<Node>::type elements_type;
         typedef typename elements_type::value_type element_type;
-        typedef typename rtree::element_indexable_type<element_type, Translator>::type indexable_type;
-        typedef typename index::detail::default_content_result<Box>::type content_type;
+        typedef typename rtree::element_indexable_type<element_type, translator_type>::type indexable_type;
+        typedef typename index::detail::default_content_result<box_type>::type content_type;
 
         typename index::detail::strategy_type<parameters_type>::type const&
             strategy = index::detail::get_strategy(parameters);
@@ -414,8 +417,8 @@ struct redistribute_elements<Value, Options, Translator, Box, Allocators, linear
                     else
                     {
                         // calculate enlarged boxes and areas
-                        Box enlarged_box1(box1);
-                        Box enlarged_box2(box2);
+                        box_type enlarged_box1(box1);
+                        box_type enlarged_box2(box2);
                         index::detail::expand(enlarged_box1, indexable, strategy);
                         index::detail::expand(enlarged_box2, indexable, strategy);
                         content_type enlarged_content1 = index::detail::content(enlarged_box1);
@@ -452,7 +455,7 @@ struct redistribute_elements<Value, Options, Translator, Box, Allocators, linear
             elements1.clear();
             elements2.clear();
 
-            rtree::destroy_elements<Value, Options, Translator, Box, Allocators>::apply(elements_copy, allocators);
+            rtree::destroy_elements<MembersHolder>::apply(elements_copy, allocators);
             //elements_copy.clear();
 
             BOOST_RETHROW                                                                                     // RETHROW, BASIC