File indexing completed on 2025-01-18 09:35:18
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018 #ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_MULTI_MODIFY_HPP
0019 #define BOOST_GEOMETRY_ALGORITHMS_DETAIL_MULTI_MODIFY_HPP
0020
0021
0022 #include <boost/range/begin.hpp>
0023 #include <boost/range/end.hpp>
0024
0025
0026 namespace boost { namespace geometry
0027 {
0028
0029
0030 #ifndef DOXYGEN_NO_DETAIL
0031 namespace detail
0032 {
0033
0034
0035 template <typename Policy>
0036 struct multi_modify
0037 {
0038 template <typename MultiGeometry>
0039 static inline void apply(MultiGeometry& multi)
0040 {
0041 auto const end = boost::end(multi);
0042 for (auto it = boost::begin(multi); it != end; ++it)
0043 {
0044 Policy::apply(*it);
0045 }
0046 }
0047
0048 template <typename MultiGeometry, typename Strategy>
0049 static inline void apply(MultiGeometry& multi, Strategy const& strategy)
0050 {
0051 auto const end = boost::end(multi);
0052 for (auto it = boost::begin(multi); it != end; ++it)
0053 {
0054 Policy::apply(*it, strategy);
0055 }
0056 }
0057 };
0058
0059
0060 }
0061 #endif
0062
0063
0064 }}
0065
0066
0067 #endif