diff options
Diffstat (limited to 'boost/geometry/algorithms/detail/expand/indexed.hpp')
-rw-r--r-- | boost/geometry/algorithms/detail/expand/indexed.hpp | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/boost/geometry/algorithms/detail/expand/indexed.hpp b/boost/geometry/algorithms/detail/expand/indexed.hpp index bdd6eb4506..28cf0e2e4f 100644 --- a/boost/geometry/algorithms/detail/expand/indexed.hpp +++ b/boost/geometry/algorithms/detail/expand/indexed.hpp @@ -5,9 +5,10 @@ // Copyright (c) 2009-2015 Mateusz Loskot, London, UK. // Copyright (c) 2014-2015 Samuel Debionne, Grenoble, France. -// This file was modified by Oracle on 2015. -// Modifications copyright (c) 2015, Oracle and/or its affiliates. +// This file was modified by Oracle on 2015, 2016. +// Modifications copyright (c) 2015-2016, Oracle and/or its affiliates. +// Contributed and/or modified by Vissarion Fysikopoulos, on behalf of Oracle // Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle // Parts of Boost.Geometry are redesigned from Geodan's Geographic Library @@ -49,8 +50,8 @@ template > struct indexed_loop { - template <typename Box, typename Geometry> - static inline void apply(Box& box, Geometry const& source) + template <typename Box, typename Geometry, typename Strategy> + static inline void apply(Box& box, Geometry const& source, Strategy const& strategy) { typedef typename strategy::compare::detail::select_strategy < @@ -87,7 +88,7 @@ struct indexed_loop < StrategyLess, StrategyGreater, Index, Dimension + 1, DimensionCount - >::apply(box, source); + >::apply(box, source, strategy); } }; @@ -103,8 +104,8 @@ struct indexed_loop Index, DimensionCount, DimensionCount > { - template <typename Box, typename Geometry> - static inline void apply(Box&, Geometry const&) {} + template <typename Box, typename Geometry, typename Strategy> + static inline void apply(Box&, Geometry const&, Strategy const&) {} }; @@ -117,20 +118,22 @@ template > struct expand_indexed { - template <typename Box, typename Geometry> - static inline void apply(Box& box, Geometry const& geometry) + template <typename Box, typename Geometry, typename Strategy> + static inline void apply(Box& box, + Geometry const& geometry, + Strategy const& strategy) { indexed_loop < StrategyLess, StrategyGreater, 0, Dimension, DimensionCount - >::apply(box, geometry); + >::apply(box, geometry, strategy); indexed_loop < StrategyLess, StrategyGreater, 1, Dimension, DimensionCount - >::apply(box, geometry); + >::apply(box, geometry, strategy); } }; |