From cfc5335ccca58f5804b270f1fd01e4b62d38bcaf Mon Sep 17 00:00:00 2001 From: Adam Wulkiewicz Date: Tue, 27 Sep 2011 19:43:13 +0000 Subject: [PATCH] templates and functions parameters changed in filters and rtree's functions to suit new distances predicates. [SVN r74594] --- .../index/filters/nearest_filter.hpp | 26 +++++----- .../extensions/index/rtree/filters.hpp | 6 +-- .../geometry/extensions/index/rtree/rtree.hpp | 48 +++++++++---------- 3 files changed, 40 insertions(+), 40 deletions(-) diff --git a/include/boost/geometry/extensions/index/filters/nearest_filter.hpp b/include/boost/geometry/extensions/index/filters/nearest_filter.hpp index ea63c959e..cb6f15f4b 100644 --- a/include/boost/geometry/extensions/index/filters/nearest_filter.hpp +++ b/include/boost/geometry/extensions/index/filters/nearest_filter.hpp @@ -23,10 +23,10 @@ class nearest_filter typedef int* iterator; typedef const int* const_iterator; - template + template inline nearest_filter( Index const&, - Point const&, + DistancesPredicates const&, size_t, Predicates const& ) @@ -40,42 +40,42 @@ class nearest_filter namespace detail { -template +template struct nearest_filtered { inline nearest_filtered( - Point const& pt, + DistancesPredicates const& dpred, size_t k, Predicates const& pred ) - : point(pt) + : distances_predicates(dpred) , count(k) , predicates(pred) {} - Point const& point; + DistancesPredicates const& distances_predicates; size_t count; Predicates const& predicates; }; } // namespace detail -template -detail::nearest_filtered nearest_filtered( - Point const& pt, +template +detail::nearest_filtered nearest_filtered( + DistancesPredicates const& dpred, size_t k, Predicates const& pred = detail::empty()) { - return detail::nearest_filtered(pt, k, pred); + return detail::nearest_filtered(dpred, k, pred); } -template +template index::nearest_filter operator|( Index const& si, - detail::nearest_filtered const& f) + detail::nearest_filtered const& f) { - return index::nearest_filter(si, f.point, f.count, f.predicates); + return index::nearest_filter(si, f.distances_predicates, f.count, f.predicates); } }}} // namespace boost::geometry::index diff --git a/include/boost/geometry/extensions/index/rtree/filters.hpp b/include/boost/geometry/extensions/index/rtree/filters.hpp index 8a3eccb37..dcdfbf59c 100644 --- a/include/boost/geometry/extensions/index/rtree/filters.hpp +++ b/include/boost/geometry/extensions/index/rtree/filters.hpp @@ -55,15 +55,15 @@ public: typedef typename result_type::iterator iterator; typedef typename result_type::const_iterator const_iterator; - template + template inline nearest_filter( index::rtree const& rtree, - Point const& pt, + DistancesPredicates const& dpred, size_t k, Predicates const& pred ) { - rtree.nearest(pt, k, pred, std::back_inserter(m_result)); + rtree.nearest(dpred, k, pred, std::back_inserter(m_result)); } inline iterator begin() { return m_result.begin(); } diff --git a/include/boost/geometry/extensions/index/rtree/rtree.hpp b/include/boost/geometry/extensions/index/rtree/rtree.hpp index 863322faa..e2e0d70b3 100644 --- a/include/boost/geometry/extensions/index/rtree/rtree.hpp +++ b/include/boost/geometry/extensions/index/rtree/rtree.hpp @@ -96,27 +96,27 @@ public: // return number of elements instead of bool? template - inline size_t nearest(DistancePredicate const& p, value_type & v) const + inline size_t nearest(DistancePredicate const& dpred, value_type & v) const { - return nearest_one(p, detail::empty(), v); + return nearest_one(dpred, detail::empty(), v); } template - inline size_t nearest(DistancePredicate const& p, Predicates const& pred, value_type & v) const + inline size_t nearest(DistancePredicate const& dpred, Predicates const& pred, value_type & v) const { - return nearest_one(p, pred, v); + return nearest_one(dpred, pred, v); } template - inline size_t nearest(DistancePredicate const& p, size_t k, OutIter out_it) const + inline size_t nearest(DistancePredicate const& dpred, size_t k, OutIter out_it) const { - return nearest_k(p, k, detail::empty(), out_it); + return nearest_k(dpred, k, detail::empty(), out_it); } template - inline size_t nearest(DistancePredicate const& p, size_t k, Predicates const& pred, OutIter out_it) const + inline size_t nearest(DistancePredicate const& dpred, size_t k, Predicates const& pred, OutIter out_it) const { - return nearest_k(p, k, pred, out_it); + return nearest_k(dpred, k, pred, out_it); } inline void insert(value_type const& value) @@ -189,7 +189,7 @@ public: private: template - inline size_t nearest_one(DistancesPredicates const& p, Predicates const& pred, value_type & v) const + inline size_t nearest_one(DistancesPredicates const& dpred, Predicates const& pred, value_type & v) const { typedef typename detail::point_relation::type point_relation; typedef typename detail::relation::value_type point_type; @@ -210,7 +210,7 @@ private: DistancesPredicates, Predicates, result_type - > nearest_v(m_translator, p, pred, result); + > nearest_v(m_translator, dpred, pred, result); detail::rtree::apply_visitor(nearest_v, *m_root); @@ -218,7 +218,7 @@ private: } template - inline size_t nearest_k(DistancesPredicates const& p, size_t k, Predicates const& pred, OutIter out_it) const + inline size_t nearest_k(DistancesPredicates const& dpred, size_t k, Predicates const& pred, OutIter out_it) const { typedef typename detail::point_relation::type point_relation; typedef typename detail::relation::value_type point_type; @@ -239,7 +239,7 @@ private: DistancesPredicates, Predicates, result_type - > nearest_v(m_translator, p, pred, result); + > nearest_v(m_translator, dpred, pred, result); detail::rtree::apply_visitor(nearest_v, *m_root); @@ -270,28 +270,28 @@ inline size_t query(rtree const& tree, Predicates co return tree.query(pred, out_it); } -template -inline size_t nearest(rtree const& tree, Point const& pt, Value & v) +template +inline size_t nearest(rtree const& tree, DistancesPredicates const& dpred, Value & v) { - return tree.nearest(pt, v); + return tree.nearest(dpred, v); } -template -inline size_t nearest(rtree const& tree, Point const& pt, Predicates const& pred, Value & v) +template +inline size_t nearest(rtree const& tree, DistancesPredicates const& dpred, Predicates const& pred, Value & v) { - return tree.nearest(pt, pred, v); + return tree.nearest(dpred, pred, v); } -template -inline size_t nearest(rtree const& tree, Point const& pt, size_t k, OutIter out_it) +template +inline size_t nearest(rtree const& tree, DistancesPredicates const& dpred, size_t k, OutIter out_it) { - return tree.nearest(pt, k, out_it); + return tree.nearest(dpred, k, out_it); } -template -inline size_t nearest(rtree const& tree, Point const& pt, size_t k, Predicates const& pred, OutIter out_it) +template +inline size_t nearest(rtree const& tree, DistancesPredicates const& dpred, size_t k, Predicates const& pred, OutIter out_it) { - return tree.nearest(pt, k, pred, out_it); + return tree.nearest(dpred, k, pred, out_it); } template