File indexing completed on 2025-01-18 09:36:44
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010 #ifndef BOOST_GEOMETRY_STRATEGIES_DISTANCE_DETAIL_HPP
0011 #define BOOST_GEOMETRY_STRATEGIES_DISTANCE_DETAIL_HPP
0012
0013
0014 #include <boost/geometry/util/type_traits.hpp>
0015
0016
0017 namespace boost { namespace geometry
0018 {
0019
0020 namespace strategies { namespace distance
0021 {
0022
0023 #ifndef DOXYGEN_NO_DETAIL
0024 namespace detail
0025 {
0026
0027 template <typename Geometry1, typename Geometry2>
0028 using enable_if_pp_t = std::enable_if_t
0029 <
0030 util::is_pointlike<Geometry1>::value && util::is_pointlike<Geometry2>::value
0031 >;
0032
0033 template <typename Geometry1, typename Geometry2>
0034 using enable_if_ps_t = std::enable_if_t
0035 <
0036 (util::is_pointlike<Geometry1>::value && util::is_segmental<Geometry2>::value)
0037 || (util::is_segmental<Geometry1>::value && util::is_pointlike<Geometry2>::value)
0038 || (util::is_segmental<Geometry1>::value && util::is_segmental<Geometry2>::value)
0039 >;
0040
0041 template <typename Geometry1, typename Geometry2>
0042 using enable_if_pb_t = std::enable_if_t
0043 <
0044 util::is_pointlike<Geometry1>::value && util::is_box<Geometry2>::value
0045 >;
0046
0047 template <typename Geometry1, typename Geometry2>
0048 using enable_if_sb_t = std::enable_if_t
0049 <
0050 util::is_segmental<Geometry1>::value && util::is_box<Geometry2>::value
0051 >;
0052
0053 template <typename Geometry1, typename Geometry2>
0054 using enable_if_bb_t = std::enable_if_t
0055 <
0056 util::is_box<Geometry1>::value && util::is_box<Geometry2>::value
0057 >;
0058
0059 }
0060 #endif
0061
0062 }}
0063
0064 }}
0065
0066 #endif